Compare commits

..

17 Commits

Author SHA1 Message Date
1db07ebc97 Update Aimee OS
All checks were successful
dustin/photoframe2/pipeline/pr-dev/ci This commit looks good
2024-12-30 13:18:05 -06:00
22b3b4c9a5 wip: Install Sway WM 2024-12-30 12:53:32 -06:00
b6232802e8 ci: Add CAP_CHROOT to build container
This is needed in order to run `passwd -R` to clear the root password
in the target filesystem.
2024-12-30 12:53:32 -06:00
8d3212ceca ci: archive build logs on failure 2024-12-30 12:53:32 -06:00
31cb7420df Update AimeeOS 2024-12-30 12:53:32 -06:00
c1bd918fe6 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")
2024-12-30 12:53:08 -06:00
3355d16fc6 wip: build firefox w/ gcc
cannot find aarch64-unknown-linux-gnu-clang-19
2024-12-30 12:49:55 -06:00
3cf8eb4fef wip: use persistent volumes for portage, binpkgs 2024-12-30 12:49:55 -06:00
05e8dbcc5b wip: Install Firefox 2024-12-30 12:49:55 -06:00
fd925c3da0 Update Aimee OS
All checks were successful
dustin/photoframe2/pipeline/head This commit looks good
2024-12-22 17:57:46 -06:00
428e30c01d ci: Clear env to run build
Some checks failed
dustin/photoframe2/pipeline/head There was a failure building this commit
We don't need any of the environment variables Jenkins sets, and some of
them (like `GIT_COMMIT`) interfere with building packages.
2024-12-22 14:34:48 -06:00
f560d965cf Update aimee-os
Some checks failed
dustin/photoframe2/pipeline/head There was a failure building this commit
2024-12-13 19:46:09 -06:00
4161d20de2 portage: Install-mask systemd-nsresourced
I don't know what this is for; I think it has something to do with
containers, possibly for `systemd-npsawn`?  It spawns a bunch of
processes and wastes several megabytes of RAM.
2024-12-13 19:44:30 -06:00
5871260128 customize: Add script
Deleting the initial password for `root` so we can log in to the serial
console for debugging.

Enabling _wpa_supplicant_ to connect to WiFi automatically.
2024-12-13 19:43:33 -06:00
a9e01d36e8 Add Rasperry Pi WiFi support
We need the Broadcom firmware from the _linux-firmware_ package (and
nothing else).  We also need _wpa_supplicant_, to configure the WiFi
connection.  Finally, we need to configure _systemd-networkd_ to manage
the network device.
2024-12-13 19:41:03 -06:00
26d83bd68b config: Set rootflags
Need to add `rootwait` because the Raspberry Pi SD card reader is really
slow and does not initialize in time for the kernel to load the root
filesystem from it.
2024-12-13 19:37:21 -06:00
3de06660b0 wip: Enable BCM2835_MMC
All checks were successful
dustin/photoframe2/pipeline/head This commit looks good
Trying to get the kernel to find the root filesystem on the SD card...
2024-12-10 14:43:10 -06:00
14 changed files with 113 additions and 1 deletions

View File

@@ -1,2 +1,5 @@
sys-boot/raspberrypi-firmware
sys-boot/u-boot
x11-libs/gtk+
media-libs/mesa
media-video/ffmpeg

5
ci/Jenkinsfile vendored
View File

@@ -29,5 +29,10 @@ pipeline {
archiveArtifacts '*'
}
}
failure {
dir('/var/tmp/portage') {
archiveArtifacts '*/*/temp/*.log'
}
}
}
}

View File

@@ -32,6 +32,9 @@ spec:
subPath: distfiles
- mountPath: /var/db/repos/gentoo
name: portage
- mountPath: /var/tmp
name: workspace-volume
subPath: tmp
hostUsers: false
volumes:
- name: binpkgs

View File

@@ -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

View File

@@ -1 +1,3 @@
gui-wm/sway
net-wireless/wpa_supplicant
media-video/pipewire

View File

@@ -14,6 +14,9 @@ CONFIG_PCI=y
CONFIG_PCIE_BRCMSTB=y
CONFIG_BLK_DEV_NVME=y
CONFIG_MMC_BCM2835_SDHOST=y
CONFIG_MMC_BCM2835_MMC=y
CONFIG_FW_LOADER_COMPRESS=y
CONFIG_I2C=y

View File

@@ -0,0 +1 @@
USE="${USE} -python -readline"

View File

@@ -0,0 +1,4 @@
# Disable GObject introspection because it cannot be cross-compiled
# https://bugs.gentoo.org/850895
# https://bugs.gentoo.org/751325
USE="${USE} -introspection -vala"

View File

@@ -0,0 +1 @@
VIDEO_CARDS='v3d vc4'

View File

@@ -0,0 +1 @@
USE="${USE} wayland"

View File

@@ -0,0 +1,15 @@
media-libs/harfbuzz -cairo
media-libs/libvpx postproc
media-libs/mesa -llvm wayland
media-video/ffmpeg openssl -gnutls
# 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

View File

@@ -0,0 +1,48 @@
--- a/Makefile.in 2024-12-13 12:17:08.339616211 -0600
+++ b/Makefile.in 2024-12-13 12:18:30.301517960 -0600
@@ -641,12 +641,6 @@
rsvg/src/test_utils/reference_utils.rs \
rsvg-bench/Cargo.toml \
rsvg-bench/src/main.rs \
- rsvg_convert/tests/internal_predicates/file.rs \
- rsvg_convert/tests/internal_predicates/mod.rs \
- rsvg_convert/tests/internal_predicates/pdf.rs \
- rsvg_convert/tests/internal_predicates/png.rs \
- rsvg_convert/tests/internal_predicates/svg.rs \
- rsvg_convert/tests/rsvg_convert.rs \
librsvg-c/tests/legacy_sizing.rs \
gdk-pixbuf-loader/Cargo.toml \
gdk-pixbuf-loader/src/lib.rs \
@@ -685,15 +679,6 @@
librsvgincdir = $(includedir)/librsvg-$(RSVG_API_VERSION)/librsvg
librsvginc_HEADERS = $(librsvg_public_headers)
-# Use SCRIPTS instead of PROGRAMS since we build it on our own
-bin_SCRIPTS = rsvg-convert$(EXEEXT)
-RSVG_CONVERT_BIN = $(CARGO_TARGET_DIR)/$(RUST_TARGET_SUBDIR)/rsvg-convert$(EXEEXT)
-RSVG_CONVERT_SRC = \
- rsvg_convert/Cargo.toml \
- rsvg_convert/build.rs \
- rsvg_convert/src/main.rs \
- $(NULL)
-
@HAVE_RST2MAN_TRUE@man1_MANS = rsvg-convert.1
dist_doc_DATA = \
README.md \
@@ -1643,16 +1628,6 @@
$(CARGO) --locked build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS) --package librsvg-c \
&& cd $(LIBRSVG_BUILD_DIR) && $(LINK) $< && cp $(RUST_LIB) .libs/librsvg_c_api.a
-$(RSVG_CONVERT_BIN): $(RSVG_CONVERT_SRC) | librsvg_c_api.la
- +cd $(top_srcdir) && \
- PKG_CONFIG_ALLOW_CROSS=1 \
- PKG_CONFIG='$(PKG_CONFIG)' \
- CARGO_TARGET_DIR=$(CARGO_TARGET_DIR) \
- $(CARGO) --locked build $(CARGO_VERBOSE) $(CARGO_TARGET_ARGS) $(CARGO_RELEASE_ARGS) --package rsvg_convert
-
-rsvg-convert$(EXEEXT): $(RSVG_CONVERT_BIN)
- cd $(LIBRSVG_BUILD_DIR) && cp $(RSVG_CONVERT_BIN) rsvg-convert$(EXEEXT)
-
rsvg-convert.1: rsvg-convert.rst
@HAVE_RST2MAN_TRUE@ $(RST2MAN) $(top_srcdir)/rsvg-convert.rst rsvg-convert.1
@HAVE_RST2MAN_FALSE@ @echo "========================================"

View File

@@ -1,8 +1,24 @@
#!/bin/sh
. "${CONFIGDIR:=${PWD}}"/config
if [ ! -f /var/db/repos/gentoo/metadata/timestamp ]; then
emerge-webrsync
fi
if [ "$(find /var/db/repos/gentoo/metadata -newermt '-24 hours' | wc -l)" -eq 0 ]; then
emaint sync
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/
echo 'VIDEO_CARDS=""' > /etc/portage/make.conf/videocards.conf
xargs -r emerge -vbknuUj --rebuilt-binaries=y --color=y <<EOF
dev-libs/nss
EOF
[ -d /etc/portage/gnupg ] || getuto -v