Skip to content

Commit 3240ae9

Browse files
authored
Merge pull request #298 from docsteer/297-v220-beta1-linux-build-missing-xcb
Use linuxdeploy over linuxdeployqt
2 parents a9feeae + e429ed7 commit 3240ae9

File tree

4 files changed

+32
-83
lines changed

4 files changed

+32
-83
lines changed

.github/workflows/build.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ jobs:
2727
qt: '6.2.4' # Qt6 LTS
2828
qt_modules: 'qtmultimedia'
2929
dependencies: |
30-
sudo apt-get install mesa-common-dev libgl1-mesa-dev libpcap-dev libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 -y
30+
sudo apt-get install mesa-common-dev libgl1-mesa-dev libpcap-dev libgstreamer-gl1.0-0 libgstreamer-plugins-base1.0-0 libxkbcommon-x11-0 -y
3131
installer_setup: |
3232
sudo gem install --no-document fpm
3333
make_cmd: make
3434
artifact: |
35-
sACNView*.AppImage
35+
install/linux/sACNView*.AppImage
3636
install/linux/*.deb
3737
3838
- os: windows-latest

deploy.pri

+30-20
Original file line numberDiff line numberDiff line change
@@ -65,36 +65,46 @@ linux {
6565
VERSION = $$system(echo $$GIT_VERSION | sed 's/[a-zA-Z]//')
6666

6767
DEPLOY_DIR = $${_PRO_FILE_PWD_}/install/linux
68-
DEPLOY_TARGET = $${DEPLOY_DIR}/AppDir/$${TARGET}
69-
70-
DEPLOY_COMMAND = $${OUT_PWD}/linuxdeployqt
71-
DEPLOY_OPT = -appimage -verbose=2
72-
DEPLOY_OPT += -unsupported-allow-new-glibc
7368

69+
# linuxdeploy
70+
DEPLOY_COMMAND = export OUTPUT=$${DEPLOY_DIR}/$${TARGET}_$${VERSION}-$${QMAKE_HOST.arch}.AppImage &&
71+
DEPLOY_COMMAND += $${OUT_PWD}/linuxdeploy-x86_64.AppImage
72+
DEPLOY_OPT += --plugin=qt
73+
DEPLOY_OPT += --create-desktop-file
74+
DEPLOY_OPT += --appdir=$${OUT_PWD}/appdir
75+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/Logo.png
76+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/icon_16.png
77+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/icon_24.png
78+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/icon_32.png
79+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/icon_48.png
80+
DEPLOY_OPT += --icon-file=$${_PRO_FILE_PWD_}/res/icon_256.png
81+
DEPLOY_OPT += --icon-filename=$${TARGET}
82+
DEPLOY_OPT += --executable=$${OUT_PWD}/$${TARGET}$${TARGET_CUSTOM_EXT}
83+
DEPLOY_OPT += --output appimage
84+
85+
## Clean Deploy folder
7486
PRE_DEPLOY_COMMAND += $${QMAKE_DEL_FILE} $${DEPLOY_DIR}/*.AppImage $$escape_expand(\\n\\t)
75-
PRE_DEPLOY_COMMAND += $${QMAKE_DEL_FILE} $${DEPLOY_TARGET} $$escape_expand(\\n\\t)
76-
PRE_DEPLOY_COMMAND += wget -c "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage" -O $${DEPLOY_COMMAND} $$escape_expand(\\n\\t)
77-
PRE_DEPLOY_COMMAND += chmod a+x $${DEPLOY_COMMAND} $$escape_expand(\\n\\t)
78-
## PRE_DEPLOY_COMMAND += unset LD_LIBRARY_PATH $$escape_expand(\\n\\t)
79-
PRE_DEPLOY_COMMAND += $$QMAKE_COPY $${OUT_PWD}/$${TARGET} $${DEPLOY_TARGET} $$escape_expand(\\n\\t)
80-
PRE_DEPLOY_COMMAND += $$QMAKE_COPY $${DEPLOY_DIR}/usr/share/applications/sacnview.desktop $${DEPLOY_DIR}/AppDir/sacnview.desktop $$escape_expand(\\n\\t)
81-
PRE_DEPLOY_COMMAND += $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/Logo.png $${DEPLOY_DIR}/AppDir/sacnview.png $$escape_expand(\\n\\t)
82-
83-
DEPLOY_CLEANUP = $$QMAKE_COPY $${OUT_PWD}/$${TARGET}*.AppImage $${DEPLOY_DIR}/
84-
85-
DEPLOY_INSTALLER = $${QMAKE_DEL_FILE} $${DEPLOY_DIR}/*.deb
86-
DEPLOY_INSTALLER += && $${QMAKE_DEL_FILE} $${DEPLOY_DIR}/opt/sacnview/*.AppImage
87+
PRE_DEPLOY_COMMAND += $${QMAKE_DEL_FILE} $${DEPLOY_DIR}/*.deb $$escape_expand(\\n\\t)
88+
89+
## Download linuxdeploy and plugins
90+
PRE_DEPLOY_COMMAND += wget -c "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage" $$escape_expand(\\n\\t)
91+
PRE_DEPLOY_COMMAND += wget -c "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage" $$escape_expand(\\n\\t)
92+
PRE_DEPLOY_COMMAND += wget -c "https://github.com/linuxdeploy/linuxdeploy-plugin-appimage/releases/download/continuous/linuxdeploy-plugin-appimage-x86_64.AppImage" $$escape_expand(\\n\\t)
93+
PRE_DEPLOY_COMMAND += chmod a+x linuxdeploy-*x86_64.AppImage $$escape_expand(\\n\\t)
94+
95+
## Create Debian installer
96+
DEPLOY_INSTALLER = $${QMAKE_DEL_FILE} $${DEPLOY_DIR}/opt/sacnview/*.AppImage
8797
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/LICENSE $${DEPLOY_DIR}/COPYRIGHT
88-
DEPLOY_INSTALLER += && $$QMAKE_COPY $${DEPLOY_DIR}/$${TARGET}*.AppImage $${DEPLOY_DIR}/opt/sacnview/
89-
DEPLOY_INSTALLER += && ln -s $${TARGET}*.AppImage $${DEPLOY_DIR}/opt/sacnview/sACNView2.AppImage
98+
DEPLOY_INSTALLER += && $$QMAKE_COPY $${DEPLOY_DIR}/$${TARGET}_$${VERSION}-$${QMAKE_HOST.arch}.AppImage $${DEPLOY_DIR}/opt/sacnview/
99+
DEPLOY_INSTALLER += && ln -s $${TARGET}_$${VERSION}-$${QMAKE_HOST.arch}.AppImage $${DEPLOY_DIR}/opt/sacnview/sACNView2.AppImage
90100
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/icon_16.png $${DEPLOY_DIR}/usr/share/icons/hicolor/16x16/apps/sacnview.png
91101
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/icon_24.png $${DEPLOY_DIR}/usr/share/icons/hicolor/24x24/apps/sacnview.png
92102
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/icon_32.png $${DEPLOY_DIR}/usr/share/icons/hicolor/32x32/apps/sacnview.png
93103
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/icon_48.png $${DEPLOY_DIR}/usr/share/icons/hicolor/48x48/apps/sacnview.png
94104
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/icon_256.png $${DEPLOY_DIR}/usr/share/icons/hicolor/256x256/apps/sacnview.png
95105
DEPLOY_INSTALLER += && $$QMAKE_COPY $${_PRO_FILE_PWD_}/res/Logo.png $${DEPLOY_DIR}/usr/share/icons/hicolor/scalable/apps/sacnview.png
96106
DEPLOY_INSTALLER += && cd $${DEPLOY_DIR}
97-
DEPLOY_INSTALLER += && fpm -s dir -t deb --deb-meta-file $${DEPLOY_DIR}/COPYRIGHT --license $${LICENSE} --name $${TARGET} --version $${VERSION} --description $${DESCRIPTION} --url $${URL} opt/ usr/
107+
DEPLOY_INSTALLER += && fpm -s dir -t deb --deb-meta-file $${DEPLOY_DIR}/COPYRIGHT --license $${LICENSE} --name $${TARGET} --version $${VERSION} --description $${DESCRIPTION} --url $${URL} opt usr
98108
}
99109

100110
CONFIG( release , debug | release) {

install/linux/AppDir/.placeholder

Whitespace-only changes.

install/linux/_FPM_Makefile

-61
This file was deleted.

0 commit comments

Comments
 (0)