diff options
Diffstat (limited to 'librewolf')
| -rw-r--r-- | librewolf/.checksum | 3 | ||||
| -rw-r--r-- | librewolf/.files | 50 | ||||
| -rw-r--r-- | librewolf/abuild | 101 | ||||
| -rw-r--r-- | librewolf/depends | 14 | ||||
| -rw-r--r-- | librewolf/fix-rust-target.patch | 31 | ||||
| -rw-r--r-- | librewolf/outdated | 3 | ||||
| -rw-r--r-- | librewolf/visibility.patch | 13 |
7 files changed, 215 insertions, 0 deletions
diff --git a/librewolf/.checksum b/librewolf/.checksum new file mode 100644 index 00000000..c489d629 --- /dev/null +++ b/librewolf/.checksum @@ -0,0 +1,3 @@ +504da8aa33992b09a74d8ec262ec6c99752e64fb1d03441f86a49a21a874f95e fix-rust-target.patch +6286ed068f8dc876b79bcb7e6f292397a9441ba4c774c0e3195c5d3c7c8202fb librewolf-138.0.4-1.source.tar.gz +30889a96df16927cca69826f3ca94b9f751819c2fcae07001a7108847ff25cb6 visibility.patch diff --git a/librewolf/.files b/librewolf/.files new file mode 100644 index 00000000..d0dfa05e --- /dev/null +++ b/librewolf/.files @@ -0,0 +1,50 @@ +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/bin/ +lrwxrwxrwx root/root usr/bin/librewolf -> /usr/lib/librewolf/librewolf +drwxr-xr-x root/root usr/lib/ +drwxr-xr-x root/root usr/lib/librewolf/ +-rw-r--r-- root/root usr/lib/librewolf/application.ini +drwxr-xr-x root/root usr/lib/librewolf/browser/ +drwxr-xr-x root/root usr/lib/librewolf/browser/chrome/ +drwxr-xr-x root/root usr/lib/librewolf/browser/chrome/icons/ +drwxr-xr-x root/root usr/lib/librewolf/browser/chrome/icons/default/ +-rw-r--r-- root/root usr/lib/librewolf/browser/chrome/icons/default/default128.png +-rw-r--r-- root/root usr/lib/librewolf/browser/chrome/icons/default/default16.png +-rw-r--r-- root/root usr/lib/librewolf/browser/chrome/icons/default/default32.png +-rw-r--r-- root/root usr/lib/librewolf/browser/chrome/icons/default/default48.png +-rw-r--r-- root/root usr/lib/librewolf/browser/chrome/icons/default/default64.png +-rw-r--r-- root/root usr/lib/librewolf/browser/omni.ja +drwxr-xr-x root/root usr/lib/librewolf/defaults/ +drwxr-xr-x root/root usr/lib/librewolf/defaults/pref/ +-rw-r--r-- root/root usr/lib/librewolf/defaults/pref/channel-prefs.js +-rw-r--r-- root/root usr/lib/librewolf/dependentlibs.list +drwxr-xr-x root/root usr/lib/librewolf/distribution/ +-rw-r--r-- root/root usr/lib/librewolf/distribution/policies.json +drwxr-xr-x root/root usr/lib/librewolf/fonts/ +-rw-r--r-- root/root usr/lib/librewolf/fonts/TwemojiMozilla.ttf +-rwxr-xr-x root/root usr/lib/librewolf/glxtest +drwxr-xr-x root/root usr/lib/librewolf/gmp-clearkey/ +drwxr-xr-x root/root usr/lib/librewolf/gmp-clearkey/0.1/ +-rwxr-xr-x root/root usr/lib/librewolf/gmp-clearkey/0.1/libclearkey.so +-rw-r--r-- root/root usr/lib/librewolf/gmp-clearkey/0.1/manifest.json +-rwxr-xr-x root/root usr/lib/librewolf/libgkcodecs.so +-rwxr-xr-x root/root usr/lib/librewolf/liblgpllibs.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozavcodec.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozavutil.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozgtk.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozsandbox.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozsqlite3.so +-rwxr-xr-x root/root usr/lib/librewolf/libmozwayland.so +-rwxr-xr-x root/root usr/lib/librewolf/librewolf +-rw-r--r-- root/root usr/lib/librewolf/librewolf.cfg +-rwxr-xr-x root/root usr/lib/librewolf/libxul.so +-rw-r--r-- root/root usr/lib/librewolf/omni.ja +-rwxr-xr-x root/root usr/lib/librewolf/pingsender +-rw-r--r-- root/root usr/lib/librewolf/platform.ini +-rw-r--r-- root/root usr/lib/librewolf/removed-files +-rwxr-xr-x root/root usr/lib/librewolf/vaapitest +drwxr-xr-x root/root usr/share/ +drwxr-xr-x root/root usr/share/applications/ +-rw-r--r-- root/root usr/share/applications/librewolf.desktop +drwxr-xr-x root/root usr/share/pixmaps/ +lrwxrwxrwx root/root usr/share/pixmaps/librewolf.png -> /usr/lib/librewolf/browser/chrome/icons/default/default128.png diff --git a/librewolf/abuild b/librewolf/abuild new file mode 100644 index 00000000..14c3a3e4 --- /dev/null +++ b/librewolf/abuild @@ -0,0 +1,101 @@ +name=librewolf +version=138.0.4.1 +_ver=${version%.*} +_sion=${version##*.} +_version=${_ver}-${_sion} +release=1 +source="https://gitlab.com/api/v4/projects/32320088/packages/generic/librewolf-source/${_version}/librewolf-${_version}.source.tar.gz + visibility.patch + fix-rust-target.patch" + +build() { + cat > mozconfig << EOF +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib +ac_add_options --with-app-name=$name +ac_add_options --with-branding=browser/branding/$name +export MOZ_APP_REMOTINGNAME=$name +ac_add_options --enable-release +ac_add_options --enable-audio-backends=alsa +ac_add_options --enable-install-strip +ac_add_options --enable-optimize +ac_add_options --enable-hardening +ac_add_options --with-system-ffi +ac_add_options --with-system-jpeg +ac_add_options --with-system-libvpx +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +ac_add_options --with-system-pixman +ac_add_options --with-system-png +ac_add_options --with-system-webp +ac_add_options --with-system-zlib +ac_add_options --without-wasm-sandboxed-libraries +ac_add_options --disable-eme +#ac_add_options --disable-dbus +ac_add_options --disable-bootstrap +ac_add_options --disable-tests +ac_add_options --disable-vtune +ac_add_options --disable-updater +ac_add_options --disable-jemalloc +ac_add_options --disable-elf-hack +ac_add_options --disable-callgrind +ac_add_options --disable-profiling +ac_add_options --disable-necko-wifi +ac_add_options --disable-crashreporter +ac_add_options --disable-accessibility +ac_add_options --disable-debug +ac_add_options --disable-debug-symbols +ac_add_options --disable-parental-controls +ac_add_options --disable-system-extension-dirs +ac_add_options --disable-default-browser-agent +ac_add_options --disable-backgroundtasks +ac_add_options --disable-webspeech +EOF + + if [ -f $SPM_PKGDB/libx11 ] && [ ! -f $SPM_PKGDB/wayland ]; then + echo "ac_add_options --enable-default-toolkit=cairo-gtk3-x11-only" >> mozconfig + elif [ -f $SPM_PKGDB/wayland ] && [ ! -f $SPM_PKGDB/libx11 ]; then + echo "ac_add_options --enable-default-toolkit=cairo-gtk3-wayland-only" >> mozconfig + fi + + if [ -e '/usr/bin/ccache' ]; then + echo 'ac_add_options --enable-ccache' >> mozconfig + PATH=$(echo ${PATH} | awk -v RS=: -v ORS=: '/ccache/ {next} {print}' | sed 's/:*$//') + fi + + export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none + export MOZBUILD_STATE_PATH=${PWD}/mozbuild + export RUST_TARGET=x86_64-unknown-linux-musl + + export CFLAGS="$CFLAGS -w" + export CXXFLAGS="$CXXFLAGS -w" + export LDFLAGS="$LDFLAGS -Wl,-rpath=/usr/lib/$name,--enable-new-dtags" + export CXXSTDLIB=c++ + + ./mach build + ./mach install + + mkdir -pv $PKG/usr/share/applications + mkdir -pv $PKG/usr/share/pixmaps + + cat > $PKG/usr/share/applications/$name.desktop << EOF +[Desktop Entry] +Encoding=UTF-8 +Name=Librewolf +Comment=Browse the World Wide Web +GenericName=Web Browser +Exec=librewolf %u +Terminal=false +Type=Application +Icon=librewolf +Categories=GNOME;GTK;Network;WebBrowser; +MimeType=text/xml;text/mml;text/html;application/xhtml+xml;application/vnd.mozilla.xul+xml;x-scheme-handler/http;x-scheme-handler/https +StartupNotify=true +EOF + + mkdir -p $PKG/usr/share/pixmaps + ln -sfv /usr/lib/$name/browser/chrome/icons/default/default128.png \ + $PKG/usr/share/pixmaps/$name.png + + rm $PKG/usr/lib/$name/$name-bin +} diff --git a/librewolf/depends b/librewolf/depends new file mode 100644 index 00000000..9da303c0 --- /dev/null +++ b/librewolf/depends @@ -0,0 +1,14 @@ +alsa-lib +gtk3 +libvpx +libwebp +libxcomposite +libxcursor +libxdamage +libxdmcp +libxinerama +nss +cbindgen +nodejs +libice +libsm diff --git a/librewolf/fix-rust-target.patch b/librewolf/fix-rust-target.patch new file mode 100644 index 00000000..9342063c --- /dev/null +++ b/librewolf/fix-rust-target.patch @@ -0,0 +1,31 @@ +Allow us to just set RUST_TARGEt ourselves instead of hacking around in mozilla's +weird custom build system... + +--- a/build/moz.configure/rust.configure ++++ b/build/moz.configure/rust.configure +@@ -225,7 +225,9 @@ + data.setdefault(key, []).append(namespace(rust_target=t, target=info)) + return data + +- ++@imports('os') ++@imports(_from='mozbuild.util', _import='ensure_unicode') ++@imports(_from='mozbuild.util', _import='system_encoding') + def detect_rustc_target( + host_or_target, compiler_info, arm_target, rust_supported_targets + ): +@@ -340,13 +342,13 @@ + + return None + +- rustc_target = find_candidate(candidates) ++ rustc_target = os.environ['RUST_TARGET'] + + if rustc_target is None: + die("Don't know how to translate {} for rustc".format(host_or_target.alias)) + +- return rustc_target ++ return ensure_unicode(rustc_target, system_encoding) + + + @imports('os') diff --git a/librewolf/outdated b/librewolf/outdated new file mode 100644 index 00000000..dfdb2509 --- /dev/null +++ b/librewolf/outdated @@ -0,0 +1,3 @@ +newver() { + newver=$(echo $newver | sed 's/_/\./') +} diff --git a/librewolf/visibility.patch b/librewolf/visibility.patch new file mode 100644 index 00000000..5084ae90 --- /dev/null +++ b/librewolf/visibility.patch @@ -0,0 +1,13 @@ +--- a/build/moz.configure/toolchain.configure ++++ b/build/moz.configure/toolchain.configure +@@ -2186,7 +2186,7 @@ +-@depends(target, build_environment) ++@depends(target, c_compiler, build_environment) +-def visibility_flags(target, env): ++def visibility_flags(target, c_compiler, env): + if target.os != "WINNT": +- if target.kernel == "Darwin": ++ if target.kernel == "Darwin" or c_compiler.type == "clang": + return ("-fvisibility=hidden", "-fvisibility-inlines-hidden") + return ( + "-I%s/system_wrappers" % os.path.join(env.dist), |