#!/bin/sh -ex VERSION="11.8.1" LINK="https://github.com/Floorp-Projects/Floorp/releases/download/v$VERSION/floorp-$VERSION.linux-x86_64.tar.bz2" APPDIR="Floorp.Appdir" mkdir -p build cd build || exit echo '===# Creating AppDir #===' rm -rf "$APPDIR" mkdir -p "$APPDIR" echo '===# Donwloading Archive #===' wget -nc $LINK rm -rf floorp tar xf floorp*.tar.bz2 echo '===# Copying Files to AppDir #===' # AppRun cp ../AppRun "$APPDIR" chmod a+x "$APPDIR"/AppRun # Desktop Entry cp ../Floorp.desktop "$APPDIR" # AppImage Icons find floorp -name default128.png -exec cp {} "$APPDIR"/floorp.png ';' ln -srfv "$APPDIR"/floorp.png "$APPDIR"/.DirIcon # Other Icons mkdir -p "$APPDIR"/usr/share/icons/hicolor/16x16/apps mkdir -p "$APPDIR"/usr/share/icons/hicolor/32x32/apps mkdir -p "$APPDIR"/usr/share/icons/hicolor/48x48/apps mkdir -p "$APPDIR"/usr/share/icons/hicolor/64x64/apps mkdir -p "$APPDIR"/usr/share/icons/hicolor/128x128/apps find floorp -name default16.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/16x16/apps/floorp.png ';' find floorp -name default32.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/32x32/apps/floorp.png ';' find floorp -name default48.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/48x48/apps/floorp.png ';' find floorp -name default64.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/64x64/apps/floorp.png ';' find floorp -name default128.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/128x128/apps/floorp.png ';' # Binaries # Install binaries in usr/lib/floorp and a wrapper in usr/bin like arch does it # FIXME: since everything goes in one folder it is stupid to create all these folders # and then create a wrapper, just put everything in the main AppDir and # be done with it mkdir -p "$APPDIR"/usr/share mkdir -p "$APPDIR"/usr/bin mkdir -p "$APPDIR"/usr/lib/floorp cp floorp/floorp "$APPDIR"/usr/lib/floorp/ cp floorp/glxtest "$APPDIR"/usr/lib/floorp/ cp floorp/pingsender "$APPDIR"/usr/lib/floorp/ cp floorp/plugin-container "$APPDIR"/usr/lib/floorp/ cp floorp/updater "$APPDIR"/usr/lib/floorp/ cp floorp/vaapitest "$APPDIR"/usr/lib/floorp/ ln -srfv "$APPDIR"/usr/lib/floorp/floorp "$APPDIR"/usr/lib/floorp/floorp-bin cp ../floorp_wrapper.sh "$APPDIR"/usr/bin/floorp chmod +x "$APPDIR"/usr/bin/floorp # Libraries cp floorp/libfreeblpriv3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libipcclientcerts.so "$APPDIR"/usr/lib/floorp/ cp floorp/liblgpllibs.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozavcodec.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozavutil.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozgtk.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozsandbox.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozsqlite3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libmozwayland.so "$APPDIR"/usr/lib/floorp/ cp floorp/libnspr4.so "$APPDIR"/usr/lib/floorp/ cp floorp/libnss3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libnssckbi.so "$APPDIR"/usr/lib/floorp/ cp floorp/libnssutil3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libplc4.so "$APPDIR"/usr/lib/floorp/ cp floorp/libplds4.so "$APPDIR"/usr/lib/floorp/ cp floorp/libsmime3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libsoftokn3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libssl3.so "$APPDIR"/usr/lib/floorp/ cp floorp/libxul.so "$APPDIR"/usr/lib/floorp/ # Bits and Bobs cp floorp/omni.ja "$APPDIR"/usr/lib/floorp/ cp floorp/platform.ini "$APPDIR"/usr/lib/floorp/ cp floorp/update-settings.ini "$APPDIR"/usr/lib/floorp/ cp floorp/updater.ini "$APPDIR"/usr/lib/floorp/ cp -r floorp/browser/ "$APPDIR"/usr/lib/floorp/ cp -r floorp/defaults/ "$APPDIR"/usr/lib/floorp/ cp -r floorp/fonts/ "$APPDIR"/usr/lib/floorp/ cp -r floorp/gmp-clearkey/ "$APPDIR"/usr/lib/floorp/ cp -r floorp/icons/ "$APPDIR"/usr/lib/floorp/ echo '===# Getting Appimagetool #===' wget -nc "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-$(uname -m).AppImage" -O appimagetool || true chmod +x appimagetool echo '===# Generating AppImage #===' ./appimagetool --no-appstream --comp gzip "$APPDIR" "Floorp-$VERSION-x86_64.AppImage" chmod +x "Floorp-$VERSION-x86_64.AppImage"