You've already forked OneDriveGUI
mirror of
https://github.com/bpozdena/OneDriveGUI.git
synced 2026-10-24 04:59:17 +03:00
Update AppImageBuilder and build script to use Python 3.10 and Ubuntu Jammy
This commit is contained in:
@@ -6,14 +6,14 @@ script:
|
||||
- cp src AppDir/usr -r
|
||||
- cp src/resources/images/OneDriveGUI.png AppDir/usr/share/icons/hicolor/48x48
|
||||
- python3 -m pip install --ignore-installed --prefix=/usr --no-cache-dir --root=AppDir -r ./requirements.txt
|
||||
- rm -rf AppDir/usr/local/lib/python3.12/dist-packages/PySide6/Qt/qml/
|
||||
- rm -rf AppDir/usr/local/lib/python3.12/dist-packages/PySide6/examples/
|
||||
- rm -rf AppDir/usr/local/lib/python3.12/dist-packages/PySide6/Qt/resources/
|
||||
- rm -rf AppDir/usr/local/lib/python3.12/dist-packages/PySide6/Qt/translations/qtwebengine_locales/
|
||||
- rm -f AppDir/usr/local/lib/python3.12/dist-packages/PySide6/{assistant,designer,linguist,lrelease,lupdate}
|
||||
- rm -f AppDir/usr/local/lib/python3.12/dist-packages/PySide6/{Qt3D*,QtBluetooth*,QtCharts*,QtConcurrent*,QtDataVisualization*,QtDBus*,QtDesigner*,QtHelp*,QtMultimedia*,QtNetwork*,QtOpenGL*,QtPositioning*,QtPrintSupport*,QtQml*,QtQuick*,QtRemoteObjects*,QtScxml*,QtSensors*,QtSerialPort*,QtSql*,QtStateMachine*,QtSvg*,QtTest*,QtWeb*,QtXml*}
|
||||
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/qml/
|
||||
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/examples/
|
||||
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/resources/
|
||||
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/translations/qtwebengine_locales/
|
||||
- rm -f AppDir/usr/local/lib/python3.10/dist-packages/PySide6/{assistant,designer,linguist,lrelease,lupdate}
|
||||
- rm -f AppDir/usr/local/lib/python3.10/dist-packages/PySide6/{Qt3D*,QtBluetooth*,QtCharts*,QtConcurrent*,QtDataVisualization*,QtDBus*,QtDesigner*,QtHelp*,QtMultimedia*,QtNetwork*,QtOpenGL*,QtPositioning*,QtPrintSupport*,QtQml*,QtQuick*,QtRemoteObjects*,QtScxml*,QtSensors*,QtSerialPort*,QtSql*,QtStateMachine*,QtSvg*,QtTest*,QtWeb*,QtXml*}
|
||||
- shopt -s extglob
|
||||
- rm -rf AppDir/usr/local/lib/python3.12/dist-packages/PySide6/Qt/lib/!(libQt6OpenGL*|libQt6XcbQpa*|libQt6Wayland*|libQt6Egl*|libicudata*|libicuuc*|libicui18n*|libQt6DBus*|libQt6Network*|libQt6Qml*|libQt6Core*|libQt6Gui*|libQt6Widgets*|libQt6Svg*|libQt6UiTools*)
|
||||
- rm -rf AppDir/usr/local/lib/python3.10/dist-packages/PySide6/Qt/lib/!(libQt6OpenGL*|libQt6XcbQpa*|libQt6Wayland*|libQt6Egl*|libicudata*|libicuuc*|libicui18n*|libQt6DBus*|libQt6Network*|libQt6Qml*|libQt6Core*|libQt6Gui*|libQt6Widgets*|libQt6Svg*|libQt6UiTools*)
|
||||
|
||||
|
||||
AppDir:
|
||||
@@ -24,15 +24,22 @@ AppDir:
|
||||
name: OneDriveGUI
|
||||
icon: OneDriveGUI
|
||||
version: 1.3.2
|
||||
exec: usr/bin/python3.12
|
||||
exec: usr/bin/python3.10
|
||||
exec_args: "$APPDIR/usr/src/OneDriveGUI.py $@"
|
||||
|
||||
apt:
|
||||
arch: amd64
|
||||
sources:
|
||||
- sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse'
|
||||
# Built against Jammy (22.04) rather than Noble (24.04) on purpose: Noble's glibc
|
||||
# package ships a merged-/usr layout (loader under usr/lib64/), which
|
||||
# appimage-builder v1.1.0's glibc-compatibility runtime does not account for
|
||||
# (it hardcodes the pre-merged /lib64 path). That mismatch makes the AppImage
|
||||
# fail with "APPRUN_ERROR: No such file or directory" (or a linker SIGSEGV) on
|
||||
# any host with an older glibc than the build machine. Jammy still uses the
|
||||
# classic layout, so the compatibility runtime works correctly.
|
||||
- sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse'
|
||||
key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3b4fe6acc0b21f32'
|
||||
- sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ noble main restricted universe multiverse'
|
||||
- sourceline: 'deb [arch=amd64] http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse'
|
||||
key_url: 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x871920d1991bc93c'
|
||||
|
||||
include:
|
||||
@@ -48,7 +55,7 @@ AppDir:
|
||||
runtime:
|
||||
env:
|
||||
PYTHONHOME: '${APPDIR}/usr'
|
||||
PYTHONPATH: '${APPDIR}/usr/local/lib/python3.12/dist-packages/'
|
||||
PYTHONPATH: '${APPDIR}/usr/local/lib/python3.10/dist-packages/'
|
||||
|
||||
AppImage:
|
||||
# update-information: gh-releases-zsync
|
||||
|
||||
@@ -2,7 +2,12 @@
|
||||
|
||||
# Docker-based AppImage builder for OneDriveGUI
|
||||
# Allows building AppImages on non-Debian systems (e.g. Arch Linux)
|
||||
# using an Ubuntu Noble container with appimage-builder.
|
||||
# using an Ubuntu Jammy container with appimage-builder.
|
||||
#
|
||||
# Must stay on Jammy (22.04), not Noble (24.04): Noble's glibc package uses a
|
||||
# merged-/usr layout that appimage-builder v1.1.0's glibc-compatibility runtime
|
||||
# does not handle, breaking the AppImage on hosts with an older glibc than the
|
||||
# build machine (APPRUN_ERROR / linker SIGSEGV). See AppImageBuilder.yml.
|
||||
|
||||
set -e
|
||||
|
||||
@@ -17,14 +22,14 @@ if ! command -v docker &> /dev/null; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Build the AppImage inside an Ubuntu Noble container
|
||||
# Build the AppImage inside an Ubuntu Jammy container
|
||||
docker run \
|
||||
--cap-add SYS_ADMIN \
|
||||
--device /dev/fuse \
|
||||
--security-opt apparmor:unconfined \
|
||||
--rm \
|
||||
-v "$SCRIPT_DIR:/OneDriveGUI" \
|
||||
ubuntu:noble \
|
||||
ubuntu:jammy \
|
||||
bash -c '
|
||||
set -e
|
||||
echo "Installing dependencies..."
|
||||
|
||||
Reference in New Issue
Block a user