Files
flameshot/travis/linux_script.sh
Alfredo Ramos d09580b873 Optimize and use SVG images where possible (#281)
SVG images have been optimized with svgo, this will slightly reduce package size though the main reason for this was to remove unneeded markup.

Image paths have been changed and merged, now the directory tree looks like this:

img
├── app
├── material
│   ├── black
│   └── white
└── preview

The reason to merge the paths is to avoid duplicate files for buttons and configuration.

SVG icons are used by default now, PNG images have not been deleted from the images directory, but they were deleted from the graphics.qrc resource file.

All image paths were updated accordingly, except in the tray icon, I could not make it work using the SVG image.
2018-07-24 00:43:01 +02:00

144 lines
4.4 KiB
Bash
Executable File

#!/bin/bash --
set -e
if [[ "${DIST}" == "trusty" ]]; then
project_dir="$(pwd)"
DIST_PATH=dist
BUILD_DST_PATH=build-test
APPIMAGE_DST_PATH=build-appimage
#source /opt/qt53/bin/qt53-env.sh
QT_BASE_DIR=/opt/qt53
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}"
export PKG_CONFIG_PATH="${QT_BASE_DIR}"/lib/pkgconfig:"${PKG_CONFIG_PATH}"
qmake --version
export CC=gcc-4.9 CXX=g++-4.9
mkdir build-test
qmake QMAKE_CXX="${CXX}" QMAKE_CC="${CC}" QMAKE_LINK="${CXX}" DESTDIR="${BUILD_DST_PATH}"
# Building flameshot
make -j$(nproc)
# Running flameshot tests
make check -j$(nproc)
ls -alhR
#
# Packaging AppImage using linuxdeployqt
#
mkdir build-appimage
mkdir -p ./build-appimage/appdir/usr/bin
mkdir -p ./build-appimage/appdir/usr/share/applications
mkdir -p ./build-appimage/appdir/usr/share/dbus-1/interfaces
mkdir -p ./build-appimage/appdir/usr/share/dbus-1/services
mkdir -p ./build-appimage/appdir/usr/share/metainfo
mkdir -p ./build-appimage/appdir/usr/share/bash-completion/completions
mkdir -p ./build-appimage/appdir/usr/share/flameshot/translations
cp \
"${BUILD_DST_PATH}"/flameshot \
"${APPIMAGE_DST_PATH}"/appdir/usr/bin
cp \
"${project_dir}"/dbus/org.dharkael.Flameshot.xml \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/dbus-1/interfaces
cp \
"${project_dir}"/dbus/package/org.dharkael.Flameshot.service \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/dbus-1/services
cp \
"${project_dir}"/docs/appdata/flameshot.appdata.xml \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/metainfo
cp \
"${project_dir}"/docs/bash-completion/flameshot \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/bash-completion/completions
cp \
"${project_dir}"/translations/*.qm \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/flameshot/translations
cp \
"${project_dir}"/docs/desktopEntry/package/* \
"${APPIMAGE_DST_PATH}"/appdir/usr/share/applications
cp \
"${project_dir}"/img/app/flameshot.png \
"${APPIMAGE_DST_PATH}"/appdir
ls -alhR "${APPIMAGE_DST_PATH}"/appdir
# Copy other project files
cp "${project_dir}"/README.md "${APPIMAGE_DST_PATH}"/appdir/README.md
cp "${project_dir}"/LICENSE "${APPIMAGE_DST_PATH}"/appdir/LICENSE
echo "${VERSION}" > "${APPIMAGE_DST_PATH}"/appdir/version
echo "${TRAVIS_COMMIT}" >> "${APPIMAGE_DST_PATH}"/appdir/version
# Configure env vars
unset QTDIR
unset QT_PLUGIN_PATH
unset LD_LIBRARY_PATH
tree "${APPIMAGE_DST_PATH}"/appdir
# Packaging
# -verbose=2
./linuxdeployqt "${APPIMAGE_DST_PATH}"/appdir/usr/bin/flameshot -bundle-non-qt-libs
rm -f "${APPIMAGE_DST_PATH}"/appdir/usr/lib/libatk-1.0.so.0
cp \
/usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so \
"${APPIMAGE_DST_PATH}"/appdir/usr/plugins/platforminputcontexts/
cd "${APPIMAGE_DST_PATH}"/appdir/usr/bin
ln -sf ../plugins/platforms/ . # An unknown bug
ln -sf ../share/flameshot/translations/ . # add translation soft link
cd "${project_dir}"
# -verbose=2
./linuxdeployqt "${APPIMAGE_DST_PATH}"/appdir/usr/share/applications/flameshot.desktop -appimage
ls -alhR -- *.AppImage
cp -- *.AppImage "${APPIMAGE_DST_PATH}"/
tree "${APPIMAGE_DST_PATH}"/
ls -l "${APPIMAGE_DST_PATH}"/*.AppImage
mkdir dist
# Rename AppImage and move AppImage to DIST_PATH
cd "${APPIMAGE_DST_PATH}"
mv Flameshot-${VERSION}-${ARCH}.AppImage flameshot_${ARCH}_${VERSION}.AppImage
cd ..
cp \
"${APPIMAGE_DST_PATH}"/flameshot_${ARCH}_${VERSION}.AppImage \
"${DIST_PATH}"/flameshot_${ARCH}_${VERSION}.${EXTEN}
pwd
curl \
--upload-file "${DIST_PATH}"/flameshot_${ARCH}_${VERSION}.AppImage \
"https://transfer.sh/flameshot_${ARCH}_${VERSION}.${EXTEN}"
else
git clone https://github.com/packpack/packpack.git
mkdir dist
packpack/packpack
pwd
ls
case "${OS}" in
"ubuntu"|"debian")
curl \
--upload-file \
build/flameshot_*_*.deb \
"https://transfer.sh/flameshot_${VERSION}-${DIST}-${ARCH}_${ARCH}.${EXTEN}"
# copy deb to dist path for distribution
cp \
build/flameshot_*_*.deb \
dist/flameshot_${VERSION}-${DIST}-${ARCH}_${ARCH}.${EXTEN}
;;
"fedora")
curl \
--upload-file \
build/flameshot-${VERSION}-${RELEASE}.*.${ARCH}.rpm \
"https://transfer.sh/flameshot_${VERSION}-fedora${DIST}-${ARCH}_${ARCH}.${EXTEN}"
cp \
build/flameshot-${VERSION}-${RELEASE}.*.${ARCH}.rpm \
dist/flameshot_${VERSION}-fedora${DIST}-${ARCH}_${ARCH}.${EXTEN}
;;
esac
fi