Compare commits

...

7 Commits

Author SHA1 Message Date
KeksNino ba4321b892 update github CI workflow 2026-07-11 00:03:54 +02:00
KeksNino a8f0186c2e re-enable appimage build step 2026-07-10 23:57:39 +02:00
KeksNino 1574ae594e fix github CI 2026-07-10 23:42:28 +02:00
KeksNino 2b45038a62 testing... 2026-07-10 23:40:41 +02:00
KeksNino 727d31fbcc fix stage artifact step in github CI 2026-07-10 23:32:28 +02:00
KeksNino 710ef26151 add appimage build step to github CI 2026-07-10 23:27:11 +02:00
KeksNino fdd8aa81ba add appimage build script (credits to OnTheSpot) 2026-07-10 23:21:09 +02:00
5 changed files with 79 additions and 5 deletions
+13 -4
View File
@@ -18,11 +18,15 @@ jobs:
matrix:
include:
- os: ubuntu-22.04
artifact_name: SoftwareManager-test-${{ github.sha }}-linux
artifact_paths: |
dist-final/SoftwareManager-test-${{ github.sha }}-linux*
dist-final/SoftwareManager-x86_64*
- os: windows-latest
artifact_name: SoftwareManager-test-${{ github.sha }}-windows
artifact_paths: |
dist-final/SoftwareManager-test-${{ github.sha }}-windows*
- os: macos-latest
artifact_name: SoftwareManager-test-${{ github.sha }}-macos
artifact_paths: |
dist-final/SoftwareManager-test-${{ github.sha }}-macos*
runs-on: ${{ matrix.os }}
@@ -149,6 +153,11 @@ jobs:
--name ${{ env.APP_NAME }} \
src/main.py
- name: Build AppImage (Linux)
if: runner.os == 'Linux'
shell: bash
run: scripts/build_appimage.sh
- name: Build with PyInstaller (macOS)
if: runner.os == 'macOS'
shell: bash
@@ -211,5 +220,5 @@ jobs:
uses: actions/upload-artifact@v7
with:
name: ${{ matrix.os }}-build
path: dist-final/${{ matrix.artifact_name }}*
path: ${{ matrix.artifact_paths }}
retention-days: 7
+4 -1
View File
@@ -218,4 +218,7 @@ __marimo__/
# Local build files
build-local.ps1
build-local.bat
build-local.bat
# UV
uv.lock
+7
View File
@@ -0,0 +1,7 @@
[Desktop Entry]
Name=SoftwareManager
Type=Application
Exec=python3 -m SoftwareManager
Icon=softwaremanager
Terminal=false
Categories=X-Software;X-Torrents;
+3
View File
@@ -0,0 +1,3 @@
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
+52
View File
@@ -0,0 +1,52 @@
#!/usr/bin/env bash
echo "Installing Dependencies"
mkdir build
cd build
curl -L -o appimagetool-x86_64.AppImage https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage
chmod +x appimagetool-x86_64.AppImage
curl -L -o python.AppImage https://github.com/niess/python-appimage/releases/download/python3.13/python3.13.9-cp313-cp313-manylinux2014_x86_64.AppImage
chmod +x python.AppImage
./python.AppImage --appimage-extract
mv squashfs-root SoftwareManager.AppDir
echo "Build SoftwareManager.whl"
cd ..
build/SoftwareManager.AppDir/AppRun -m build
echo "Prepare SoftwareManager AppImage"
cd build/SoftwareManager.AppDir
./AppRun -m pip install -r ../../requirements.txt
./AppRun -m pip install ../../dist/main-0.0.0-py3-none-any.whl
rm AppRun .DirIcon python.png python*.desktop usr/share/applications/python*.desktop
cp -t ./softwaremanager.png ../../src/interface/assets/logo.png
cp -t . ../../SoftwareManager.desktop
cp ../../SoftwareManager.desktop usr/share/applications/
echo '#! /bin/bash
HERE="$(dirname "$(readlink -f "${0}")")"
export PATH=$HERE/usr/bin:$PATH;
export APPIMAGE_COMMAND=$(command -v -- "$ARGV0")
"$HERE/opt/python3.13/bin/python3.13" "-m" "main" "$@"' > AppRun
chmod -R 0755 ../SoftwareManager.AppDir
chmod +x AppRun
cp /usr/lib/x86_64-linux-gnu/libxcb-cursor.so* ../SoftwareManager.AppDir/usr/lib/
cp /usr/lib/x86_64-linux-gnu/libxcb-xinerama.so* ../SoftwareManager.AppDir/usr/lib/
cp /usr/lib/x86_64-linux-gnu/libxcb.so* ../SoftwareManager.AppDir/usr/lib/
cp /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so* ../SoftwareManager.AppDir/usr/lib
echo " => Build SoftwareManager AppImage"
cd ..
./appimagetool-x86_64.AppImage --appimage-extract
squashfs-root/AppRun SoftwareManager.AppDir
cd ..
echo " => Done "