From 6ec57c7cade197b248bea95aafe143a29e5f11cc Mon Sep 17 00:00:00 2001 From: Bert van der Weerd Date: Fri, 11 Feb 2022 06:00:51 +0100 Subject: [PATCH] initial versions for deb+rpm --- assets/linux.build-deb.sh | 46 +++++++++++++++++++ assets/linux.build-rpm.sh | 71 ++++++++++++++++++++++++++++++ assets/linux.librewolf.desktop.in | 30 +++++++++++++ assets/linux.librewolf.ico | Bin 0 -> 32038 bytes assets/linux.librewolf.spec | 69 +++++++++++++++++++++++++++++ 5 files changed, 216 insertions(+) create mode 100755 assets/linux.build-deb.sh create mode 100755 assets/linux.build-rpm.sh create mode 100644 assets/linux.librewolf.desktop.in create mode 100644 assets/linux.librewolf.ico create mode 100644 assets/linux.librewolf.spec diff --git a/assets/linux.build-deb.sh b/assets/linux.build-deb.sh new file mode 100755 index 0000000..f701744 --- /dev/null +++ b/assets/linux.build-deb.sh @@ -0,0 +1,46 @@ +set -e + +mv -v librewolf lwdist + +mkdir -p librewolf/DEBIAN +cd librewolf/DEBIAN + cat < control +Architecture: all +Build-Depends: inkscape, librsvg2-bin +Depends: libc6, libgcc1, libstdc++6, wget +Description: The Librewolf Browser +Download-Size: 56.0 MB +Essential: no +Installed-Size: 204 MB +Maintainer: Bert van der Weerd +Package: librewolf +Priority: optional +Provides: gnome-www-browser, www-browser, x-www-browser +Section: web +EOF + echo "Version: $1-$2" >> control +cd .. + +mkdir -p usr/share/librewolf +mv -v ../lwdist/* usr/share/librewolf +rmdir ../lwdist + +mkdir -p usr/bin +cd usr/bin +ln -vs ../share/librewolf/librewolf +cd ../.. + +# add the application icon +mkdir -p usr/share/applications +mkdir -p usr/share/icons +cp -v usr/share/librewolf/browser/chrome/icons/default/default64.png usr/share/icons/librewolf.png +cp -v ../start-librewolf.desktop usr/share/applications + +cd .. +dpkg-deb --build librewolf + +echo "" +ls -lh librewolf.deb +exit 0 + + diff --git a/assets/linux.build-rpm.sh b/assets/linux.build-rpm.sh new file mode 100755 index 0000000..cf4a8ee --- /dev/null +++ b/assets/linux.build-rpm.sh @@ -0,0 +1,71 @@ +set -e + +rm -rf /WORK +mkdir /WORK +cd /WORK + +mkdir /artifacts + +version=$(cat /work/version) +release=$(cat /work/release) + +echo '---' +echo "--- LibreWolf version file is: $version" +echo "--- LibreWolf release is: $release" +echo '---' +echo '--- Contents of /artifacts folder:' +ls -la /artifacts +echo '---' +echo '--- Contents of /WORK folder:' +ls -la /WORK +echo '---' + + + + +rm -rf rpmbuild +mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} +sed "s/__VERSION__/$version/g" < /work/librewolf.spec > /work/tmp.spec +sed "s/__RELEASE__/$release/g" < /work/tmp.spec > rpmbuild/SPECS/librewolf.spec + +# copy in the librewolf assets +cp -rv /work/librewolf rpmbuild/SOURCES + + +cd rpmbuild/SOURCES + +mkdir -p librewolf-$version/usr/share/librewolf +mkdir -p librewolf-$version/usr/bin + +mv -v librewolf/* librewolf-$version/usr/share/librewolf +rmdir librewolf +cd librewolf-$version/usr/bin +ln -s ../share/librewolf/librewolf +cd ../../.. + +# Application icon +mkdir -p librewolf-$version/usr/share/applications +mkdir -p librewolf-$version/usr/share/icons +cp -v librewolf-$version/usr/share/librewolf/browser/chrome/icons/default/default64.png librewolf-$version/usr/share/icons/librewolf.png +sed "s/MYDIR/\/usr\/share\/librewolf/g" < /work/librewolf/start-librewolf.desktop.in > librewolf-$version/usr/share/applications/librewolf.desktop + + +tar cvfz lw.tar.gz librewolf-$version +# todo perhaps: rm -rf librwolf-$version + +cd ../.. + +rm -rf $HOME/rpmbuild +cp -rv rpmbuild $HOME + +# Build the package! +echo '---' +echo "[debug] Running rpmbuild.." +echo '---' + +rpmbuild -v -bb $(pwd)/rpmbuild/SPECS/librewolf.spec +echo '--- [debug] Copying output files to /artifacts' + + +#Wrote: /root/rpmbuild/RPMS/x86_64/librewolf-94.0.2-1.fc35.x86_64.rpm +cp -v ~/rpmbuild/RPMS/x86_64/librewolf-*.rpm /work diff --git a/assets/linux.librewolf.desktop.in b/assets/linux.librewolf.desktop.in new file mode 100644 index 0000000..aee1ca6 --- /dev/null +++ b/assets/linux.librewolf.desktop.in @@ -0,0 +1,30 @@ +[Desktop Entry] +Type=Application +Name=LibreWolf +GenericName=Web Browser +# Gnome and KDE 3 uses Comment. +Comment=Web Browser +StartupNotify=true +Terminal=false +Type=Application +MimeType=application/json;application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https; +Comment=LibreWolf Browser +Categories=Network;WebBrowser;Security; +StartupWMClass=LibreWolf +Exec=MYDIR/librewolf %u +Icon=MYDIR/browser/chrome/icons/default/default64.png + +Actions=new-window;new-private-window;safe-mode;preferences; + +[Desktop Action new-window] +Name=New Window +Exec=MYDIR/librewolf +[Desktop Action new-private-window] +Name=New Private Window +Exec=MYDIR/librewolf --private-window %u +[Desktop Action safe-mode] +Name=Start in Safe Mode +Exec=MYDIR/librewolf --safe-mode +[Desktop Action preferences] +Name=Show Preferences +Exec=MYDIR/librewolf --preferences diff --git a/assets/linux.librewolf.ico b/assets/linux.librewolf.ico new file mode 100644 index 0000000000000000000000000000000000000000..30a72f168d8f1cb8689dc7913bc42c7ce70a4f92 GIT binary patch literal 32038 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 literal 0 HcmV?d00001 diff --git a/assets/linux.librewolf.spec b/assets/linux.librewolf.spec new file mode 100644 index 0000000..a394600 --- /dev/null +++ b/assets/linux.librewolf.spec @@ -0,0 +1,69 @@ +Name: librewolf +Version: __VERSION__ +Release: __RELEASE__%{?dist} +BuildArch: x86_64 +Summary: The LibreWolf browser +License: MPL +URL: https://librewolf-community.gitlab.io/ +Source0: lw.tar.gz +#BuildRequires: +#Requires: +%description +The LibreWolf browser for privacy, with uBlock and tweaked settings. + +%prep +%setup -q + +%install +mkdir -p "$RPM_BUILD_ROOT" +cp -rv * "$RPM_BUILD_ROOT" + +%files +/usr/bin/librewolf +/usr/share/applications/librewolf.desktop +/usr/share/icons/librewolf.png +/usr/share/librewolf/application.ini +/usr/share/librewolf/browser/chrome/icons/default/default128.png +/usr/share/librewolf/browser/chrome/icons/default/default16.png +/usr/share/librewolf/browser/chrome/icons/default/default32.png +/usr/share/librewolf/browser/chrome/icons/default/default48.png +/usr/share/librewolf/browser/chrome/icons/default/default64.png +/usr/share/librewolf/browser/features/formautofill@mozilla.org.xpi +/usr/share/librewolf/browser/features/pictureinpicture@mozilla.org.xpi +/usr/share/librewolf/browser/features/screenshots@mozilla.org.xpi +/usr/share/librewolf/browser/features/webcompat@mozilla.org.xpi +/usr/share/librewolf/browser/omni.ja +/usr/share/librewolf/defaults/pref/channel-prefs.js +/usr/share/librewolf/dependentlibs.list +/usr/share/librewolf/distribution/policies.json +/usr/share/librewolf/fonts/TwemojiMozilla.ttf +/usr/share/librewolf/gmp-clearkey/0.1/libclearkey.so +/usr/share/librewolf/gmp-clearkey/0.1/manifest.json +/usr/share/librewolf/libfreeblpriv3.so +/usr/share/librewolf/libipcclientcerts.so +/usr/share/librewolf/liblgpllibs.so +/usr/share/librewolf/libmozavcodec.so +/usr/share/librewolf/libmozavutil.so +/usr/share/librewolf/libmozgtk.so +/usr/share/librewolf/libmozsandbox.so +/usr/share/librewolf/libmozsqlite3.so +/usr/share/librewolf/libmozwayland.so +/usr/share/librewolf/libnspr4.so +/usr/share/librewolf/libnss3.so +/usr/share/librewolf/libnssckbi.so +/usr/share/librewolf/libnssutil3.so +/usr/share/librewolf/libplc4.so +/usr/share/librewolf/libplds4.so +/usr/share/librewolf/librewolf +/usr/share/librewolf/librewolf-bin +/usr/share/librewolf/librewolf.cfg +/usr/share/librewolf/librewolf.ico +/usr/share/librewolf/libsmime3.so +/usr/share/librewolf/libsoftokn3.so +/usr/share/librewolf/libssl3.so +/usr/share/librewolf/libxul.so +/usr/share/librewolf/omni.ja +/usr/share/librewolf/platform.ini +/usr/share/librewolf/plugin-container +/usr/share/librewolf/start-librewolf.desktop.in +