why oh why is firefox packaging this shit

master
Alessandro Mauri 4 months ago
parent 893d791e05
commit afdd3238ed
  1. 6
      AppRun
  2. 2
      floorp_wrapper.sh
  3. 97
      package.sh

@ -1,4 +1,4 @@
#!/bin/sh -e #!/bin/sh -ex
# Firefox specific environment variables # Firefox specific environment variables
# https://github.com/AppImage/pkg2appimage/commit/c9b09eb557b6b0b4d914ecb82998148f38880d1d # https://github.com/AppImage/pkg2appimage/commit/c9b09eb557b6b0b4d914ecb82998148f38880d1d
@ -14,7 +14,7 @@ if [ -z "$APPDIR" ] ; then
fi fi
export PATH="$APPDIR/usr/bin:$PATH" export PATH="$APPDIR/usr/bin:$PATH"
export XDG_DATA_DIRS="$APPDIR/share/:$XDG_DATA_DIRS" #export XDG_DATA_DIRS="$APPDIR/share/:$XDG_DATA_DIRS"
export LD_LIBRARY_PATH="$APPDIR/usr/lib:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH="$APPDIR/usr/lib:$LD_LIBRARY_PATH"
exec "$APPDIR/usr/bin/floorp" "$APPDIR/usr/bin/floorp" "$@"

@ -0,0 +1,2 @@
#!/bin/sh -ex
exec "$APPDIR"/usr/lib/floorp/floorp "\$@"

@ -1,4 +1,4 @@
#!/bin/sh #!/bin/sh -ex
VERSION="11.8.1" VERSION="11.8.1"
LINK="https://github.com/Floorp-Projects/Floorp/releases/download/v$VERSION/floorp-$VERSION.linux-x86_64.tar.bz2" LINK="https://github.com/Floorp-Projects/Floorp/releases/download/v$VERSION/floorp-$VERSION.linux-x86_64.tar.bz2"
@ -14,7 +14,7 @@ mkdir -p "$APPDIR"
echo '===# Donwloading Archive #===' echo '===# Donwloading Archive #==='
wget -nc $LINK wget -nc $LINK
rm -f floorp rm -rf floorp
tar xf floorp*.tar.bz2 tar xf floorp*.tar.bz2
echo '===# Copying Files to AppDir #===' echo '===# Copying Files to AppDir #==='
@ -30,11 +30,11 @@ find floorp -name default128.png -exec cp {} "$APPDIR"/floorp.png ';'
ln -srfv "$APPDIR"/floorp.png "$APPDIR"/.DirIcon ln -srfv "$APPDIR"/floorp.png "$APPDIR"/.DirIcon
# Other Icons # Other Icons
mkdir -p "$APPDIR"usr/share/icons/hicolor/16x16/apps 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/32x32/apps
mkdir -p "$APPDIR"usr/share/icons/hicolor/48x48/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/64x64/apps
mkdir -p "$APPDIR"usr/share/icons/hicolor/128x128/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 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 default32.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/32x32/apps/floorp.png ';'
@ -43,54 +43,59 @@ find floorp -name default64.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/6
find floorp -name default128.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/128x128/apps/floorp.png ';' find floorp -name default128.png -exec cp {} "$APPDIR"/usr/share/icons/hicolor/128x128/apps/floorp.png ';'
# Binaries # 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/share
mkdir -p "$APPDIR"/usr/bin mkdir -p "$APPDIR"/usr/bin
mkdir -p "$APPDIR"/usr/lib mkdir -p "$APPDIR"/usr/lib/floorp
cp floorp/floorp "$APPDIR"/usr/bin cp floorp/floorp "$APPDIR"/usr/lib/floorp/
cp floorp/glxtest "$APPDIR"/usr/bin cp floorp/glxtest "$APPDIR"/usr/lib/floorp/
cp floorp/pingsender "$APPDIR"/usr/bin cp floorp/pingsender "$APPDIR"/usr/lib/floorp/
cp floorp/plugin-container "$APPDIR"/usr/bin cp floorp/plugin-container "$APPDIR"/usr/lib/floorp/
cp floorp/updater "$APPDIR"/usr/bin cp floorp/updater "$APPDIR"/usr/lib/floorp/
cp floorp/vaapitest "$APPDIR"/usr/bin cp floorp/vaapitest "$APPDIR"/usr/lib/floorp/
# Link instead of wrapper ln -srfv "$APPDIR"/usr/lib/floorp/floorp "$APPDIR"/usr/lib/floorp/floorp-bin
ln -srfv "$APPDIR"/usr/bin/floorp "$APPDIR"/usr/bin/floorp-bin cp ../floorp_wrapper.sh "$APPDIR"/usr/bin/floorp
chmod +x "$APPDIR"/usr/bin/floorp
# Libraries # Libraries
cp floorp/libfreeblpriv3.so "$APPDIR"/usr/lib cp floorp/libfreeblpriv3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libipcclientcerts.so "$APPDIR"/usr/lib cp floorp/libipcclientcerts.so "$APPDIR"/usr/lib/floorp/
cp floorp/liblgpllibs.so "$APPDIR"/usr/lib cp floorp/liblgpllibs.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozavcodec.so "$APPDIR"/usr/lib cp floorp/libmozavcodec.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozavutil.so "$APPDIR"/usr/lib cp floorp/libmozavutil.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozgtk.so "$APPDIR"/usr/lib cp floorp/libmozgtk.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozsandbox.so "$APPDIR"/usr/lib cp floorp/libmozsandbox.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozsqlite3.so "$APPDIR"/usr/lib cp floorp/libmozsqlite3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libmozwayland.so "$APPDIR"/usr/lib cp floorp/libmozwayland.so "$APPDIR"/usr/lib/floorp/
cp floorp/libnspr4.so "$APPDIR"/usr/lib cp floorp/libnspr4.so "$APPDIR"/usr/lib/floorp/
cp floorp/libnss3.so "$APPDIR"/usr/lib cp floorp/libnss3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libnssckbi.so "$APPDIR"/usr/lib cp floorp/libnssckbi.so "$APPDIR"/usr/lib/floorp/
cp floorp/libnssutil3.so "$APPDIR"/usr/lib cp floorp/libnssutil3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libplc4.so "$APPDIR"/usr/lib cp floorp/libplc4.so "$APPDIR"/usr/lib/floorp/
cp floorp/libplds4.so "$APPDIR"/usr/lib cp floorp/libplds4.so "$APPDIR"/usr/lib/floorp/
cp floorp/libsmime3.so "$APPDIR"/usr/lib cp floorp/libsmime3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libsoftokn3.so "$APPDIR"/usr/lib cp floorp/libsoftokn3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libssl3.so "$APPDIR"/usr/lib cp floorp/libssl3.so "$APPDIR"/usr/lib/floorp/
cp floorp/libxul.so "$APPDIR"/usr/lib cp floorp/libxul.so "$APPDIR"/usr/lib/floorp/
# Bits and Bobs # Bits and Bobs
cp floorp/omni.ja "$APPDIR" cp floorp/omni.ja "$APPDIR"/usr/lib/floorp/
cp floorp/platform.ini "$APPDIR" cp floorp/platform.ini "$APPDIR"/usr/lib/floorp/
cp floorp/update-settings.ini "$APPDIR" cp floorp/update-settings.ini "$APPDIR"/usr/lib/floorp/
cp floorp/updater.ini "$APPDIR" cp floorp/updater.ini "$APPDIR"/usr/lib/floorp/
cp -r floorp/browser/ "$APPDIR" cp -r floorp/browser/ "$APPDIR"/usr/lib/floorp/
cp -r floorp/defaults/ "$APPDIR" cp -r floorp/defaults/ "$APPDIR"/usr/lib/floorp/
cp -r floorp/fonts/ "$APPDIR" cp -r floorp/fonts/ "$APPDIR"/usr/lib/floorp/
cp -r floorp/gmp-clearkey/ "$APPDIR" cp -r floorp/gmp-clearkey/ "$APPDIR"/usr/lib/floorp/
cp -r floorp/icons/ "$APPDIR" cp -r floorp/icons/ "$APPDIR"/usr/lib/floorp/
echo '===# Getting Appimagetool #===' echo '===# Getting Appimagetool #==='
wget -nc "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-$(uname -m).AppImage" -O appimagetool wget -nc "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-$(uname -m).AppImage" -O appimagetool || true
chmod +x appimagetool chmod +x appimagetool
echo '===# Generating AppImage #===' echo '===# Generating AppImage #==='

Loading…
Cancel
Save