From d830a1c5f73e6804434b1c0d7aab1c5f5ba1ddd9 Mon Sep 17 00:00:00 2001 From: Michael Schuster Date: Sat, 16 Nov 2019 21:31:07 +0100 Subject: [PATCH 1/4] Upgrade for Qt 5.12.5 in docker-ci - Use the new image: nextcloudci/client-5.12:client-5.12-5 - Use it's new QT_BASE_DIR: /opt/qt5.12.5 Signed-off-by: Michael Schuster --- .drone.yml | 2 +- admin/linux/build-appimage.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.drone.yml b/.drone.yml index 3df15e5f6b..b00420981d 100644 --- a/.drone.yml +++ b/.drone.yml @@ -319,7 +319,7 @@ name: AppImage steps: - name: build - image: nextcloudci/client-5.12:client-5.12-3 + image: nextcloudci/client-5.12:client-5.12-5 commands: - /bin/bash -c "./admin/linux/build-appimage.sh" trigger: diff --git a/admin/linux/build-appimage.sh b/admin/linux/build-appimage.sh index f34519c05a..3c5b26c97a 100755 --- a/admin/linux/build-appimage.sh +++ b/admin/linux/build-appimage.sh @@ -6,7 +6,7 @@ mkdir /app mkdir /build #Set Qt-5.12 -export QT_BASE_DIR=/opt/qt512 +export QT_BASE_DIR=/opt/qt5.12.5 export QTDIR=$QT_BASE_DIR export PATH=$QT_BASE_DIR/bin:$PATH export LD_LIBRARY_PATH=$QT_BASE_DIR/lib/x86_64-linux-gnu:$QT_BASE_DIR/lib:$LD_LIBRARY_PATH From dd0135ce2e6bf7105534efe958de35709ebe8114 Mon Sep 17 00:00:00 2001 From: Michael Schuster Date: Sat, 16 Nov 2019 21:34:13 +0100 Subject: [PATCH 2/4] Move .desktop file path to new env var to avoid duplicates Signed-off-by: Michael Schuster --- admin/linux/build-appimage.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/admin/linux/build-appimage.sh b/admin/linux/build-appimage.sh index 3c5b26c97a..7ea22bf523 100755 --- a/admin/linux/build-appimage.sh +++ b/admin/linux/build-appimage.sh @@ -69,7 +69,8 @@ rm -rf ./usr/share/nemo-python/ mv ./etc/Nextcloud/sync-exclude.lst ./usr/bin/ rm -rf ./etc -sed -i -e 's|Icon=nextcloud|Icon=Nextcloud|g' usr/share/applications/${LINUX_APPLICATION_ID}.desktop # Bug in desktop file? +DESKTOP_FILE=/app/usr/share/applications/${LINUX_APPLICATION_ID}.desktop +sed -i -e 's|Icon=nextcloud|Icon=Nextcloud|g' ${DESKTOP_FILE} # Bug in desktop file? cp ./usr/share/icons/hicolor/512x512/apps/Nextcloud.png . # Workaround for linuxeployqt bug, FIXME @@ -90,13 +91,13 @@ chmod a+x linuxdeployqt*.AppImage rm ./linuxdeployqt-continuous-x86_64.AppImage unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH export LD_LIBRARY_PATH=/app/usr/lib/ -./squashfs-root/AppRun /app/usr/share/applications/${LINUX_APPLICATION_ID}.desktop -bundle-non-qt-libs +./squashfs-root/AppRun ${DESKTOP_FILE} -bundle-non-qt-libs # Set origin ./squashfs-root/usr/bin/patchelf --set-rpath '$ORIGIN/' /app/usr/lib/libnextcloudsync.so.0 # Build AppImage -./squashfs-root/AppRun /app/usr/share/applications/${LINUX_APPLICATION_ID}.desktop -appimage +./squashfs-root/AppRun ${DESKTOP_FILE} -appimage mv Nextcloud*.AppImage Nextcloud-${SUFFIX}-${DRONE_COMMIT}-x86_64.AppImage From 4fc8936553dfae28edc0e424408d4366081a7045 Mon Sep 17 00:00:00 2001 From: Michael Schuster Date: Sat, 16 Nov 2019 21:36:59 +0100 Subject: [PATCH 3/4] Make AppImage upload optional and add timeout Moves the upload into a separate Drone command and adds a timeout for curl to fail after 15 minutes. Returns zero to keep Drone from failing. Signed-off-by: Michael Schuster --- .drone.yml | 1 + admin/linux/build-appimage.sh | 5 ----- admin/linux/upload-appimage.sh | 19 +++++++++++++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) create mode 100755 admin/linux/upload-appimage.sh diff --git a/.drone.yml b/.drone.yml index b00420981d..e5f8204c52 100644 --- a/.drone.yml +++ b/.drone.yml @@ -322,6 +322,7 @@ steps: image: nextcloudci/client-5.12:client-5.12-5 commands: - /bin/bash -c "./admin/linux/build-appimage.sh" + - /bin/bash -c "./admin/linux/upload-appimage.sh" trigger: branch: - master diff --git a/admin/linux/build-appimage.sh b/admin/linux/build-appimage.sh index 7ea22bf523..a73c45e772 100755 --- a/admin/linux/build-appimage.sh +++ b/admin/linux/build-appimage.sh @@ -100,8 +100,3 @@ export LD_LIBRARY_PATH=/app/usr/lib/ ./squashfs-root/AppRun ${DESKTOP_FILE} -appimage mv Nextcloud*.AppImage Nextcloud-${SUFFIX}-${DRONE_COMMIT}-x86_64.AppImage - -curl --upload-file $(readlink -f ./Nextcloud*.AppImage) https://transfer.sh/Nextcloud-${SUFFIX}-${DRONE_COMMIT}-x86_64.AppImage - -echo -echo "Get the AppImage at the link above!" diff --git a/admin/linux/upload-appimage.sh b/admin/linux/upload-appimage.sh new file mode 100755 index 0000000000..518a33101c --- /dev/null +++ b/admin/linux/upload-appimage.sh @@ -0,0 +1,19 @@ +#! /bin/bash + +set -xe + +# Upload AppImage +APPIMAGE=$(readlink -f ./Nextcloud*.AppImage) +BASENAME=$(basename ${APPIMAGE}) + +if curl --max-time 900 --upload-file ${APPIMAGE} https://transfer.sh/${BASENAME} +then + echo + echo "Get the AppImage at the link above!" +else + echo + echo "Upload failed, however this is an optional step." +fi + +# Don't let the Drone build fail +exit 0 \ No newline at end of file From 801098f546619ec3f8396a0fd184ee8118a0a8f2 Mon Sep 17 00:00:00 2001 From: Michael Schuster Date: Sat, 16 Nov 2019 21:53:25 +0100 Subject: [PATCH 4/4] Fix dir in upload script Signed-off-by: Michael Schuster --- admin/linux/upload-appimage.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/admin/linux/upload-appimage.sh b/admin/linux/upload-appimage.sh index 518a33101c..c7564589f5 100755 --- a/admin/linux/upload-appimage.sh +++ b/admin/linux/upload-appimage.sh @@ -2,6 +2,8 @@ set -xe +cd /build + # Upload AppImage APPIMAGE=$(readlink -f ./Nextcloud*.AppImage) BASENAME=$(basename ${APPIMAGE})