aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Toohey2022-04-20 01:43:52 +0000
committerGitHub2022-04-20 01:43:52 +0000
commite452b97cdc7617ec887744b764f1090e440a5983 (patch)
tree41724773456569ad51ed6a0289f33b949595f750
parentc8cfd0b1a0da071618a9efc71ac5735d6147a0ca (diff)
AppImage (#2089)
* Add desktop entry file Co-authored-by: NNB <n.at@aleeas.com> * Add placeholder icon for AppImage * Add AppImage step to release workflow * Exclude grammar sources from AppImage Co-authored-by: NNB <n.at@aleeas.com>
-rw-r--r--.github/workflows/release.yml52
-rw-r--r--contrib/Helix.desktop89
-rw-r--r--contrib/helix.pngbin0 -> 1838 bytes
3 files changed, 139 insertions, 2 deletions
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 7c265db8..30f8ccc7 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -147,16 +147,60 @@ jobs:
aarch64-linux-gnu-strip \
/target/${{ matrix.target }}/release/hx
- - name: Build archive
+ - name: Build AppImage
shell: bash
+ if: matrix.build == 'x86_64-linux'
run: |
mkdir dist
+
+ name=dev
+ if [[ $GITHUB_REF == refs/tags/* ]]; then
+ name=${GITHUB_REF:10}
+ fi
+
+ export VERSION="$name"
+ export ARCH=x86_64
+ export APP=helix
+ export OUTPUT="helix-$VERSION-$ARCH.AppImage"
+ export UPDATE_INFORMATION="gh-releases-zsync|$GITHUB_REPOSITORY_OWNER|helix|latest|$APP-*-$ARCH.AppImage.zsync"
+
+ mkdir -p "$APP.AppDir"/usr/{bin,lib/helix}
+
+ cp "target/${{ matrix.target }}/release/hx" "$APP.AppDir/usr/bin/hx"
+ rm -rf runtime/grammars/sources
+ cp -r runtime "$APP.AppDir/usr/lib/helix/runtime"
+
+ cat << 'EOF' > "$APP.AppDir/AppRun"
+ #!/bin/sh
+
+ APPDIR="$(dirname "$(readlink -f "${0}")")"
+ HELIX_RUNTIME="$APPDIR/usr/lib/helix/runtime" exec "$APPDIR/usr/bin/hx" "$@"
+ EOF
+ chmod 755 "$APP.AppDir/AppRun"
+
+ curl -Lo linuxdeploy-x86_64.AppImage \
+ https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage
+ chmod +x linuxdeploy-x86_64.AppImage
+
+ ./linuxdeploy-x86_64.AppImage \
+ --appdir "$APP.AppDir" -d contrib/Helix.desktop \
+ -i contrib/helix.png --output appimage
+
+ mv "$APP-$VERSION-$ARCH.AppImage" \
+ "$APP-$VERSION-$ARCH.AppImage.zsync" dist
+
+ - name: Build archive
+ shell: bash
+ run: |
+ mkdir -p dist
if [ "${{ matrix.os }}" = "windows-2019" ]; then
cp "target/${{ matrix.target }}/release/hx.exe" "dist/"
else
cp "target/${{ matrix.target }}/release/hx" "dist/"
fi
- rm -rf runtime/grammars/sources
+ if [ -d runtime/grammars/sources ]; then
+ rm -rf runtime/grammars/sources
+ fi
cp -r runtime dist
- uses: actions/upload-artifact@v3
@@ -212,6 +256,10 @@ jobs:
mv bins-$platform/hx$exe $pkgname
chmod +x $pkgname/hx$exe
+ if [[ "$platform" = "x86_64-linux" ]]; then
+ mv bins-$platform/helix-*.AppImage* dist/
+ fi
+
if [ "$exe" = "" ]; then
tar cJf dist/$pkgname.tar.xz $pkgname
else
diff --git a/contrib/Helix.desktop b/contrib/Helix.desktop
new file mode 100644
index 00000000..844286f8
--- /dev/null
+++ b/contrib/Helix.desktop
@@ -0,0 +1,89 @@
+[Desktop Entry]
+Name=Helix
+GenericName=Text Editor
+GenericName[de]=Texteditor
+GenericName[fr]=Éditeur de texte
+GenericName[ru]=Текстовый редактор
+GenericName[sr]=Едитор текст
+GenericName[tr]=Metin Düzenleyici
+Comment=Edit text files
+Comment[af]=Redigeer tekslêers
+Comment[am]=የጽሑፍ ፋይሎች ያስተካክሉ
+Comment[ar]=حرّر ملفات نصية
+Comment[az]=Mətn fayllarını redaktə edin
+Comment[be]=Рэдагаваньне тэкставых файлаў
+Comment[bg]=Редактиране на текстови файлове
+Comment[bn]=টেক্স্ট ফাইল এডিট করুন
+Comment[bs]=Izmijeni tekstualne datoteke
+Comment[ca]=Edita fitxers de text
+Comment[cs]=Úprava textových souborů
+Comment[cy]=Golygu ffeiliau testun
+Comment[da]=Redigér tekstfiler
+Comment[de]=Textdateien bearbeiten
+Comment[el]=Επεξεργασία αρχείων κειμένου
+Comment[en_CA]=Edit text files
+Comment[en_GB]=Edit text files
+Comment[es]=Edita archivos de texto
+Comment[et]=Redigeeri tekstifaile
+Comment[eu]=Editatu testu-fitxategiak
+Comment[fa]=ویرایش پرونده‌های متنی
+Comment[fi]=Muokkaa tekstitiedostoja
+Comment[fr]=Éditer des fichiers texte
+Comment[ga]=Eagar comhad Téacs
+Comment[gu]=લખાણ ફાઇલોમાં ફેરફાર કરો
+Comment[he]=ערוך קבצי טקסט
+Comment[hi]=पाठ फ़ाइलें संपादित करें
+Comment[hr]=Uređivanje tekstualne datoteke
+Comment[hu]=Szövegfájlok szerkesztése
+Comment[id]=Edit file teks
+Comment[it]=Modifica file di testo
+Comment[ja]=テキストファイルを編集します
+Comment[kn]=ಪಠ್ಯ ಕಡತಗಳನ್ನು ಸಂಪಾದಿಸು
+Comment[ko]=텍스트 파일을 편집합니다
+Comment[lt]=Redaguoti tekstines bylas
+Comment[lv]=Rediģēt teksta failus
+Comment[mk]=Уреди текстуални фајлови
+Comment[ml]=വാചക രചനകള് തിരുത്തുക
+Comment[mn]=Текст файл боловсруулах
+Comment[mr]=गद्य फाइल संपादित करा
+Comment[ms]=Edit fail teks
+Comment[nb]=Rediger tekstfiler
+Comment[ne]=पाठ फाइललाई संशोधन गर्नुहोस्
+Comment[nl]=Tekstbestanden bewerken
+Comment[nn]=Rediger tekstfiler
+Comment[no]=Rediger tekstfiler
+Comment[or]=ପାଠ୍ଯ ଫାଇଲଗୁଡ଼ିକୁ ସମ୍ପାଦନ କରନ୍ତୁ
+Comment[pa]=ਪਾਠ ਫਾਇਲਾਂ ਸੰਪਾਦਨ
+Comment[pl]=Edytor plików tekstowych
+Comment[pt]=Editar ficheiros de texto
+Comment[pt_BR]=Edite arquivos de texto
+Comment[ro]=Editare fişiere text
+Comment[ru]=Редактирование текстовых файлов
+Comment[sk]=Úprava textových súborov
+Comment[sl]=Urejanje datotek z besedili
+Comment[sq]=Përpuno files teksti
+Comment[sr]=Уређујте текст фајлове
+Comment[sr@Latn]=Izmeni tekstualne datoteke
+Comment[sv]=Redigera textfiler
+Comment[ta]=உரை கோப்புகளை தொகுக்கவும்
+Comment[th]=แก้ไขแฟ้มข้อความ
+Comment[tk]=Metin faýllary editle
+Comment[tr]=Metin dosyaları düzenleyin
+Comment[uk]=Редактор текстових файлів
+Comment[vi]=Soạn thảo tập tin văn bản
+Comment[wa]=Asspougnî des fitchîs tecses
+Comment[zh_CN]=编辑文本文件
+Comment[zh_TW]=編輯文字檔
+TryExec=hx
+Exec=hx %F
+Terminal=true
+Type=Application
+Keywords=Text;editor;
+Keywords[fr]=Texte;éditeur;
+Keywords[ru]=текст;текстовый редактор;
+Keywords[sr]=Текст;едитор;
+Keywords[tr]=Metin;düzenleyici;
+Icon=helix
+Categories=Utility;TextEditor;
+StartupNotify=false
+MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
diff --git a/contrib/helix.png b/contrib/helix.png
new file mode 100644
index 00000000..bef00b98
--- /dev/null
+++ b/contrib/helix.png
Binary files differ