aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorprobonopd <probonopd@users.noreply.github.com>2017-11-03 21:56:04 +0100
committerJay Berkenbilt <ejb@ql.org>2018-02-18 05:35:42 +0100
commit83d82a85d01b2e1e727babbce851a121bf110a50 (patch)
treef588f95bcf01ea6e013ab58f021908e3ac33f852
parent2ebdd6929ea15187cdcf72acb19e8cc3047702f9 (diff)
downloadqpdf-83d82a85d01b2e1e727babbce851a121bf110a50.tar.zst
Contributed AppImage and .travis.yml support
-rw-r--r--.travis.yml31
-rw-r--r--dist/AppRun19
-rw-r--r--dist/qpdf.desktop7
-rw-r--r--dist/qpdf.pngbin0 -> 4870 bytes
4 files changed, 57 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
new file mode 100644
index 00000000..16bafa3d
--- /dev/null
+++ b/.travis.yml
@@ -0,0 +1,31 @@
+language: cpp
+compiler: gcc
+sudo: require
+dist: trusty
+
+script:
+ - ./autogen.sh
+ - ./configure --prefix=/usr
+ - make -j$(nproc)
+ - make check
+ - make install DESTDIR=$(readlink -f appdir) ; find appdir/
+ - rm -rf appdir/usr/include/ appdir/usr/lib/pkgconfig/ appdir/usr/lib/*.{a,la} # Don't bundle developer stuff
+ - sudo mv appdir/usr/lib/* /usr/local/lib/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/160
+ - mkdir -p appdir/usr/share/icons/hicolor/128x128/apps ; cp dist/qpdf.png appdir/usr/share/icons/hicolor/128x128/apps/
+ - mkdir -p appdir/usr/share/applications ; cp dist/qpdf.desktop appdir/usr/share/applications/
+ - wget -c "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
+ - chmod a+x linuxdeployqt*.AppImage
+ - unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH
+ - export LD_LIBRARY_PATH=/usr/local/lib/ # Workaround for https://github.com/probonopd/linuxdeployqt/issues/160
+ - ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop -bundle-non-qt-libs
+ - # In addition to the main executable, we have additional ones to process
+ - # ./linuxdeployqt*.AppImage ./appdir/usr/bin/fix-qdf -bundle-non-qt-libs # Not an ELF?
+ - ./linuxdeployqt*.AppImage ./appdir/usr/bin/zlib-flate -bundle-non-qt-libs
+ - # Generate AppImage
+ - ./linuxdeployqt*.AppImage --appimage-extract
+ - rm ./appdir/AppRun ; cp dist/AppRun appdir/ ; chmod a+x ./appdir/AppRun # Replace symlink with custom script
+ - PATH=./squashfs-root/usr/bin:$PATH ./squashfs-root/usr/bin/appimagetool ./appdir/
+
+after_success:
+ - find ./appdir -executable -type f -exec ldd {} \; | grep " => /usr" | cut -d " " -f 2-3 | sort | uniq
+ - curl --upload-file ./QPDF*.AppImage https://transfer.sh/QPDF-git.$(git rev-parse --short HEAD)-x86_64.AppImage
diff --git a/dist/AppRun b/dist/AppRun
new file mode 100644
index 00000000..8a2e5935
--- /dev/null
+++ b/dist/AppRun
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+# The purpose of this custom AppRun script is
+# to allow symlinking the AppImage and invoking
+# the corresponding binary depending on which
+# symlink was used to invoke the AppImage
+
+HERE="$(dirname "$(readlink -f "${0}")")"
+
+if [ ! -z $APPIMAGE ] ; then
+ BINARY_NAME=$(basename "$ARGV0")
+ if [ -e "$HERE/usr/bin/$BINARY_NAME" ] ; then
+ exec "$HERE/usr/bin/$BINARY_NAME" "$@"
+ else
+ exec "$HERE/usr/bin/qpdf" "$@"
+ fi
+else
+ exec "$HERE/usr/bin/qpdf" "$@"
+fi
diff --git a/dist/qpdf.desktop b/dist/qpdf.desktop
new file mode 100644
index 00000000..b030a6db
--- /dev/null
+++ b/dist/qpdf.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Type=Application
+Terminal=true
+Exec=qpdf
+Name=QPDF
+Comment=Structural, content-preserving transformations on PDF files
+Icon=qpdf
diff --git a/dist/qpdf.png b/dist/qpdf.png
new file mode 100644
index 00000000..f7a46c6f
--- /dev/null
+++ b/dist/qpdf.png
Binary files differ