From c1bd918fe6111f4ed90541a5c44dc86f17f6915a Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Mon, 23 Dec 2024 16:20:17 -0600 Subject: [PATCH] wip: Install Firefox from Gentoo binpkg > 3:30.02 [gecko-profiler 0.1.0] /../lib/gcc/aarch64-unknown-linux-gnu/14/include/g++-v14/cstdlib:79:15: fatal error: 'stdlib.h' file not found > 3:30.02 [gecko-profiler 0.1.0] thread 'main' panicked at tools/profiler/rust-api/build.rs:104:10: > 3:30.02 [gecko-profiler 0.1.0] Unable to generate bindings: ClangDiagnostic("/../lib/gcc/aarch64-unknown-linux-gnu/14/include/g++-v14/cstdlib:79:15: fatal error: 'stdlib.h' file not found\n") --- build.packages | 3 +++ customize.sh | 10 ++++++++++ install.packages | 2 +- portage/make.conf/wayland.conf | 2 +- portage/package.accept_keywords/firefox | 1 - portage/package.use/firefox | 11 ++++++++++- prepare.sh | 5 +++++ 7 files changed, 30 insertions(+), 4 deletions(-) delete mode 100644 portage/package.accept_keywords/firefox diff --git a/build.packages b/build.packages index 9677552..26ab468 100644 --- a/build.packages +++ b/build.packages @@ -1,2 +1,5 @@ sys-boot/raspberrypi-firmware sys-boot/u-boot +x11-libs/gtk+ +media-libs/mesa +media-video/ffmpeg diff --git a/customize.sh b/customize.sh index f0bc12a..b0cb5da 100755 --- a/customize.sh +++ b/customize.sh @@ -1,6 +1,16 @@ #!/bin/sh # vim: set sw=4 ts=4 sts=4 et : +. "${CONFIGDIR:=${PWD}}"/config + +O=$1 + +export PORTAGE_CONFIGROOT="$O"/portage + +${target}-emerge -vbknuUDj --onlydeps www-client/firefox:esr +PORTAGE_BINHOST=https://distfiles.gentoo.org/releases/arm64/binpackages/23.0/arm64 \ +${target}-emerge -vgKnj --root=/mnt/gentoo www-client/firefox:esr + passwd -R /mnt/gentoo -d root systemctl --root=/mnt/gentoo enable wpa_supplicant@wlan0 diff --git a/install.packages b/install.packages index 5c67a29..7998e21 100644 --- a/install.packages +++ b/install.packages @@ -1,2 +1,2 @@ net-wireless/wpa_supplicant -www-client/firefox +media-video/pipewire diff --git a/portage/make.conf/wayland.conf b/portage/make.conf/wayland.conf index 71d123e..624b840 100644 --- a/portage/make.conf/wayland.conf +++ b/portage/make.conf/wayland.conf @@ -1 +1 @@ -USE="${USE} -X wayland" +USE="${USE} wayland" diff --git a/portage/package.accept_keywords/firefox b/portage/package.accept_keywords/firefox deleted file mode 100644 index f0cbd3b..0000000 --- a/portage/package.accept_keywords/firefox +++ /dev/null @@ -1 +0,0 @@ -dev-libs/nss ~amd64 diff --git a/portage/package.use/firefox b/portage/package.use/firefox index a07789a..d877364 100644 --- a/portage/package.use/firefox +++ b/portage/package.use/firefox @@ -2,5 +2,14 @@ media-libs/harfbuzz -cairo media-libs/libvpx postproc media-libs/mesa -llvm wayland media-video/ffmpeg openssl -gnutls -www-client/firefox -clang -telemetry dbus wayland + +# Must match USE flags of the www-client/firefox package on the +# offical Gentoo binhost +www-client/firefox X clang dbus gmp-autoupdate gnome-shell jumbo-build pulseaudio system-av1 system-harfbuzz system-icu system-jpeg system-libevent system-libvpx system-webp telemetry wayland LLVM_SLOT: 19 -17 -18 +x11-libs/cairo X x11-libs/gtk+ wayland +media-libs/libglvnd X + +# Firefox requires a PulseAudio-compatible sound server; we use Pipewire +media-video/pipewire sound-server +media-libs/libcanberra udev alsa diff --git a/prepare.sh b/prepare.sh index 919d248..9c6dd89 100644 --- a/prepare.sh +++ b/prepare.sh @@ -1,5 +1,7 @@ #!/bin/sh +. "${CONFIGDIR:=${PWD}}"/config + if [ ! -f /var/db/repos/gentoo/metadata/timestamp ]; then emerge-webrsync fi @@ -9,6 +11,7 @@ fi mkdir -p /etc/portage/package.use mkdir -p /etc/portage/make.conf +echo 'virtual/libudev systemd' >> /etc/portage/package.use/systemd cp portage/package.use/firefox /etc/portage/package.use/ cp portage/make.conf/introspection.conf /etc/portage/make.conf/ cp portage/make.conf/wayland.conf /etc/portage/make.conf/ @@ -17,3 +20,5 @@ echo 'VIDEO_CARDS=""' > /etc/portage/make.conf/videocards.conf xargs -r emerge -vbknuUj --rebuilt-binaries=y --color=y <