Gentoo overlay (ebuild repository) for the Raspberry Pi 3 Model B and B+, and Raspberry Pi 4 Model B. Used by GenPi64 image.
NB: this repository has been renamed, from
rpi3-overlaytogenpi64-overlay, to reflect its applicability to the new Pi4.
The overlay provides the following ebuilds:
Instead of a meta package, select the profile and sets you want.
-
dev-embedded/rpi-64bit-meta
-
This is the main
gentoo-on-rpi-64bitmetapackage - its version matches that of the image release. It replaces the priorgentoo-on-rpi3-64bitmetapackage. The features it pulls in (via other ebuilds) can be customized via the following USE flags (edit via/etc/portage/package.use/rpi-64bit-meta):USE flag Default? Effect boot-fwYes Pull in the /boot firmware, configs and bootloader. kernel-binYes Pull in the bcm{2711,rpi3}-kernel<-bis>-binbinary kernel package.weekly-genupYes Pull in cron.weeklyscript, to rungenupautomatically.innercoreYes Pull in essential system packages for image (RPi initscripts etc.) coreYes Pull in main packages for image ( clangetc.). Requiresinnercore.xfceYes Pull in packages for baseline Xfce4 system. Requires core.pitopNo Pull in Pi-Top packages (NB most users won't want this). Requires xfce.appsNo Pull in baseline desktop apps ( libreofficeetc). Requiresxfce.
-
Ebuilds related to the gentoo-on-rpi-64bit image
Note that for historical reasons, many of these ebuilds may contain
rpi3-in the name, but yet still be applicable on the RPi4.
-
app-accessibility/onboard upstream
- Provides a flexible onscreen keyboard. Included primarily for use with the official 7" RPi touchscreen. Adapted with thanks from original ebuild, here.
-
app-portage/weekly-genup
- Installs a simple cron.weekly script, to automate
genup, and another, to run 'fixups' (small scripts to correct issues that may e.g. prevent correctgenupoperation, effect upstream file hierarchy migrations etc.).
- Installs a simple cron.weekly script, to automate
-
net-misc/rpi3-ethfix
- Effects some simple Ethernet workarounds (using
ethtool) for the RPi3B+. It has no effect on the RPi3B or RPi4B.
- Effects some simple Ethernet workarounds (using
-
net-wireless/rpi3-bluetooth upstream
- Provides a startup service and
udevrule for the RPi3/4's integrated Bluetooth transceiver. Adapted from thepi-bluetoothpackage from ArchLinux.
- Provides a startup service and
-
net-wireless/rpi3-wifi-regdom Provides a simple service to set the WiFi regulatory domain; the value set may be modified by editing the file
/etc/conf.d/rpi3-wifi-regdom. -
sys-apps/pyconfig_gen upstream
- Provides a simple, PyQt5 dialog-based app, to allow the
/boot/config.txtfile to be edited in a structured manner, together with some support services (to revert the new config automatically, unless ratified upon reboot).
- Provides a simple, PyQt5 dialog-based app, to allow the
-
sys-apps/rpi-gpio
- Sets up a
udevrule to allow GPIO access (on the RPi3/4) for members of thegpiogroup. On installation, all current members ofwheelare automatically made members ofgpio. Now installed for all users of therpi-64bit-metapackage (withinnercoreUSE).
- Sets up a
-
sys-apps/rpi-i2c
- Like
rpi3-i2cdev(see below), sets up audevrule to allow I2C access (on the RPi3/4) for members of thei2cgroup, and ensures that thei2c_devmodule ismodprobed. On installation, all current members ofwheelare automatically made members ofi2c(to allow for straightforward transition fromrpi3-spidev). Now installed for all users of therpi-64bit-metapackage (withinnercoreUSE).
- Like
-
sys-apps/rpi-onetime-startup
- Provides a startup service which (having first disabled itself from running again) executes, as root, the script
/boot/startup.sh, if present. This script can be used to e.g., set up initial WiFi networking on a headless system, thereby allowing ansshconnection to be established. The provided template/boot/startup.shscript contains several (commented out) examples of NetworkManager configuration.
- Provides a startup service which (having first disabled itself from running again) executes, as root, the script
-
sys-apps/rpi-serial
- Provides a
udevrule to create appropriate serial port device aliases at/dev/serial0and/or/dev/serial1(using code borrowed from Raspbian).
- Provides a
-
sys-apps/rpi-spi
- Like
rpi3-spidev(see below), sets up audevrule to allow SPI access (on the RPi3/4) for members of thespigroup. On installation, all current members ofwheelare automatically made members ofspi(to allow for straightforward transition fromrpi3-spidev). Now installed for all users of therpi-64bit-metapackage (withinnercoreUSE).
- Like
-
sys-apps/rpi-video
- Provides a
udevrule to allow members of thevideogroup access to/dev/rpivid*and/dev/argon*devices (using code borrowed from Raspbian).
- Provides a
-
sys-apps/rpi3-i2cdev
- Provides an OpenRC service and
udevrule for I2C access on the RPi3/4. Ensures that thei2c-devmodule ismodprobed, and that the/dev/i2c-[0-9]devices are read/write for all members of thewheelgroup, not justroot. Originally installed by thepitopUSE flag onrpi-64bit-meta, it has since been superseded byrpi-i2c, above.
- Provides an OpenRC service and
-
sys-apps/rpi3-init-scripts
- Provides a few simple init scripts for the gentoo-on-rpi-64bit image (to autoexpand the root partition on first boot, inhibit XVideo, setup cache usage appropriate for a low-memory environment etc.).
-
sys-apps/rpi3-ondemand-cpufreq
- Provides the
rpi3-ondemandOpenRCsysinitservice, to switch the RPi3 and RPi4 from its (bcmrpi3_defconfigandbcm2711_defconfig) defaultpowersaveCPU frequency governor, toondemand, for better performance.
- Provides the
-
sys-apps/rpi3-spidev
- Provides a
udevrule for SPI access on the RPi3; ensures that the/dev/spidevN.Mdevices are read/write for all members of thewheelgroup, not justroot. Originally installed by thepitopUSE flag onrpi-64bit-meta, it has since been superseded byrpi-spi, above.
- Provides a
-
sys-firmware/bcm4340a1-firmware upstream
- Provides firmware (
/etc/firmware/BCM43430A1.hcd) for the RPi's integrated Bluetooth transceiver. Adapted from thepi-bluetoothpackage from ArchLinux. Required bynet-wireless/rpi3-bluetoothpackage (see above).
- Provides firmware (
-
sys-firmware/brcm43430-firmware upstream
- Provides a configuration file (
brcmfmac43430-sdio.txt) that is required for the RPi3/4's integrated WiFi (the main firmware is provided already, bysys-kernel/linux-firmware). Now also provides the equivalent filebrcmfmac43455-sdio.txt, for use with the RPi3 B+ / RPi 4 B's dual-band WiFi WiFi chip set (Cypress CYW43455), plus the matchingbrcmfmac43430-sdio.clm_blob, and, when the43455-fixUSE flag is set, also provides a more modern copy of the uploadable file/lib/firmware/brcm/brcmfmac43455-sdio.bin(in preference to the older version shipped withsys-kernel/linux-firmware; see below).
- Provides a configuration file (
-
x11-misc/rpi3-safecompositor
- Provides an eponymous OpenRC service to off display compositing, on the RPi3 only, if a high pixel clock is detected (> 1.2175MHz, currently). This is because certain applications, for example LibreOffice v6 Draw and Impress, can cause the whole system to lock-up when used with compositing on under such conditions. As of v1.4.0 of the image / v1.0.1 of the ebuild, also turns of compositing when 'true' kms mode (
vc4-kms-v3d) is in use.
- Provides an eponymous OpenRC service to off display compositing, on the RPi3 only, if a high pixel clock is detected (> 1.2175MHz, currently). This is because certain applications, for example LibreOffice v6 Draw and Impress, can cause the whole system to lock-up when used with compositing on under such conditions. As of v1.4.0 of the image / v1.0.1 of the ebuild, also turns of compositing when 'true' kms mode (
-
x11-misc/twofing upstream
- Provides the
twofingdaemon, which converts touchscreen gestures into mouse and keyboard events. Included primarily for use with the offical 7" RPi (1,2,3) touchscreen (not sure if this is yet compatible with the RPi4?).
- Provides the
-
xfce-extra/xfce4-battery-plugin upstream
- A modified version of the standard
xfce4-battery-plugingas gauge. It is patched with code from rricharz to query the status of the Pi-Top's battery over I2C; this code is activated by buildingrpi-64bit-metawith thepitopUSE flag (NB - only for use on Pi-Top systems).
- A modified version of the standard
-
xfce-extra/xfce4-cpugraph-plugin upstream
- Provides a version of this plugin that periodically completely redraws, as the original is subject to occasional display corruption.
-
xfce-extra/xfce4-fixups-rpi3
- Effects some useful new-user fixups for Xfce4 on the RPi3 and RPi4 (forcing compositing to sync to the vertical blank etc.). Installs an
/etc/xdg/autostart/xfce4-fixups-rpi3.desktopentry.
- Effects some useful new-user fixups for Xfce4 on the RPi3 and RPi4 (forcing compositing to sync to the vertical blank etc.). Installs an
-
xfce-extra/xfce4-keycuts-pitop
- Installs some simple keyboard shortcuts for the Pi-Top (an RPi3-based DIY laptop). Only installed on the image when the
pitopUSE flag is set onrpi-64bit-meta.
- Installs some simple keyboard shortcuts for the Pi-Top (an RPi3-based DIY laptop). Only installed on the image when the
-
xfce-extra/xfce4-noblank
- Provides an
/etc/xdg/autostartscript to prevent thexscreensaverblanking the screen, even when it is notionally 'off'.
- Provides an
The following, non-ebuild directories may also be of interest:
-
metadata/news
- This simply contains some GLEP 42-compliant news items, specific to users of this overlay (and/or the bootable image).
-
profiles/...
- This specifies the custom profile used by the bootable image, which contains a number of custom USE-flag assignments, package masks, keyword overrides and so forth. For more details, please see the notes here.
