this needs some tweaking: it doesn't package the right dtb file.
it packages the dtb for the linux kernels, whereas we want dtbs to be
consumed by u-boot.
this lets us build custom packages, separately from the entire system.
i also change the overlay slightly, just because it doesn't make sense
to induce the recursive case or relying on `next` when not necessary.
draws inspiration from <nixpkgs>/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
enables some wayland-specific flags, which hopefully enables input and removes the mesa opengl restriction?
it doesn't actually make a notable difference. boot is still spammy.
i think i either get:
- debug messages compiled in and shown by default, or
- debug messages not compiled in
i'll settle for the former.
this requires a patch to uboot:
- uboot thinks the drive has a capacity of 0 (i.e. 'unknown'). unclear precisely why. could be noncompliant drive firmware, or a timeout somewhere.
and a patch to the rpi bootloader:
- in order to trampoline into the rpi-4 uboot.
and custom kernel modules in the initrd:
- in order to detect the USB hub (rpi fw).
additionally, i'm MANUALLY placing `bcm2711-rpi-400.dtb` into `/boot/nixos/..-linux-5.10.111-dtbs/broadcom`.
i'll want to do this automatically over time.
i hope to simplify much of this over time: this is just the first thing which works after a couple days of hacking at it.