%global firefox_app_id \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\} %global mozappdir %{_libdir}/firefox Summary: Mozilla Firefox Web browser (Wayland-only) Name: firefox Version: 147.0.1 Release: 1%{?dist} URL: https://www.mozilla.org/firefox/ License: MPLv1.1 OR GPL-2.0-or-later OR LGPLv2+ Source0: https://archive.mozilla.org/pub/firefox/releases/%{version}/source/firefox-%{version}.source.tar.xz BuildRequires: autoconf213 BuildRequires: rust BuildRequires: cargo BuildRequires: cbindgen BuildRequires: clang BuildRequires: clang-devel BuildRequires: clang-libs BuildRequires: llvm BuildRequires: lld BuildRequires: wasi-libc-devel BuildRequires: rust-std-static-wasm32-wasip1 BuildRequires: nasm BuildRequires: desktop-file-utils BuildRequires: python3-devel BuildRequires: nodejs BuildRequires: perl-interpreter BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(dri) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(pango) BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(libpulse) BuildRequires: pkgconfig(nspr) BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(krb5) BuildRequires: zip BuildRequires: bzip2-devel BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(libpng) BuildRequires: libjpeg-devel BuildRequires: dbus-glib-devel Requires: mozilla-filesystem Requires: nspr Requires: nss %description Mozilla Firefox is an open-source web browser, designed for standards compliance, performance and portability. This build is configured for Wayland display protocol only (no X11 support). %prep %setup -q -n firefox-%{version} %build export WASI_SYSROOT=/usr/share/wasi-sysroot export CC_wasm32_wasi="clang --target=wasm32-wasi --sysroot=$WASI_SYSROOT" cat > .mozconfig << EOF ac_add_options --prefix="%{_prefix}" ac_add_options --libdir="%{_libdir}" ac_add_options --enable-optimize ac_add_options --disable-debug ac_add_options --enable-official-branding ac_add_options --with-system-nspr ac_add_options --with-system-nss ac_add_options --disable-crashreporter ac_add_options --disable-tests ac_add_options --enable-default-toolkit=cairo-gtk3-wayland ac_add_options --with-libclang-path=$(llvm-config --libdir) mk_add_options MOZ_MAKE_FLAGS="-j%{_smp_build_ncpus}" export STRIP=/bin/true EOF ./mach configure \ --enable-release \ --enable-official-branding ./mach build -v %install DESTDIR=%{buildroot} make -C objdir install mkdir -p %{buildroot}%{_bindir} mkdir -p %{buildroot}%{_datadir}/applications cat > %{buildroot}%{_datadir}/applications/firefox.desktop << EOF [Desktop Entry] Name=Firefox (Wayland) GenericName=Web Browser Comment=Browse the Web (Wayland native) Exec=firefox %u Icon=firefox Type=Application Categories=Network;WebBrowser; MimeType=text/html;text/xml;application/xhtml+xml; EOF cat > %{buildroot}%{_bindir}/firefox << 'EOF' #!/bin/sh export MOZ_ENABLE_WAYLAND=1 exec %{mozappdir}/firefox "$@" EOF chmod 755 %{buildroot}%{_bindir}/firefox %files %{_bindir}/firefox %{mozappdir}/ %{_datadir}/applications/firefox.desktop %changelog %autochangelog