Try packaging manually

master
Alessandro Mauri 4 months ago
parent f1c4c83977
commit 893d791e05
  1. 20
      AppRun
  2. 8
      Floorp.desktop
  3. 98
      package.sh

@ -0,0 +1,20 @@
#!/bin/sh -e
# Firefox specific environment variables
# https://github.com/AppImage/pkg2appimage/commit/c9b09eb557b6b0b4d914ecb82998148f38880d1d
export SNAP_NAME="floorp"
export MOZ_LEGACY_PROFILES=1
# Find the AppDir. It is the directory that contains AppRun.
# This assumes that this script resides inside the AppDir or a subdirectory.
# If this script is run inside an AppImage, then the AppImage runtime likely has already set $APPDIR
if [ -z "$APPDIR" ] ; then
HERE="$(dirname "$(readlink -f "${0}")")"
export APPDIR="$HERE"
fi
export PATH="$APPDIR/usr/bin:$PATH"
export XDG_DATA_DIRS="$APPDIR/share/:$XDG_DATA_DIRS"
export LD_LIBRARY_PATH="$APPDIR/usr/lib:$LD_LIBRARY_PATH"
exec "$APPDIR/usr/bin/floorp"

@ -0,0 +1,8 @@
[Desktop Entry]
Type=Application
Name=Floorp
Icon=floorp
Exec=floorp %u
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true

@ -0,0 +1,98 @@
#!/bin/sh
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 -f 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
mkdir -p "$APPDIR"/usr/share
mkdir -p "$APPDIR"/usr/bin
mkdir -p "$APPDIR"/usr/lib
cp floorp/floorp "$APPDIR"/usr/bin
cp floorp/glxtest "$APPDIR"/usr/bin
cp floorp/pingsender "$APPDIR"/usr/bin
cp floorp/plugin-container "$APPDIR"/usr/bin
cp floorp/updater "$APPDIR"/usr/bin
cp floorp/vaapitest "$APPDIR"/usr/bin
# Link instead of wrapper
ln -srfv "$APPDIR"/usr/bin/floorp "$APPDIR"/usr/bin/floorp-bin
# Libraries
cp floorp/libfreeblpriv3.so "$APPDIR"/usr/lib
cp floorp/libipcclientcerts.so "$APPDIR"/usr/lib
cp floorp/liblgpllibs.so "$APPDIR"/usr/lib
cp floorp/libmozavcodec.so "$APPDIR"/usr/lib
cp floorp/libmozavutil.so "$APPDIR"/usr/lib
cp floorp/libmozgtk.so "$APPDIR"/usr/lib
cp floorp/libmozsandbox.so "$APPDIR"/usr/lib
cp floorp/libmozsqlite3.so "$APPDIR"/usr/lib
cp floorp/libmozwayland.so "$APPDIR"/usr/lib
cp floorp/libnspr4.so "$APPDIR"/usr/lib
cp floorp/libnss3.so "$APPDIR"/usr/lib
cp floorp/libnssckbi.so "$APPDIR"/usr/lib
cp floorp/libnssutil3.so "$APPDIR"/usr/lib
cp floorp/libplc4.so "$APPDIR"/usr/lib
cp floorp/libplds4.so "$APPDIR"/usr/lib
cp floorp/libsmime3.so "$APPDIR"/usr/lib
cp floorp/libsoftokn3.so "$APPDIR"/usr/lib
cp floorp/libssl3.so "$APPDIR"/usr/lib
cp floorp/libxul.so "$APPDIR"/usr/lib
# Bits and Bobs
cp floorp/omni.ja "$APPDIR"
cp floorp/platform.ini "$APPDIR"
cp floorp/update-settings.ini "$APPDIR"
cp floorp/updater.ini "$APPDIR"
cp -r floorp/browser/ "$APPDIR"
cp -r floorp/defaults/ "$APPDIR"
cp -r floorp/fonts/ "$APPDIR"
cp -r floorp/gmp-clearkey/ "$APPDIR"
cp -r floorp/icons/ "$APPDIR"
echo '===# Getting Appimagetool #==='
wget -nc "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-$(uname -m).AppImage" -O appimagetool
chmod +x appimagetool
echo '===# Generating AppImage #==='
./appimagetool --no-appstream --comp gzip "$APPDIR" "Floorp-$VERSION-x86_64.AppImage"
chmod +x "Floorp-$VERSION-x86_64.AppImage"
Loading…
Cancel
Save