{ pkgs, lib, ... }: let # kernelBundle = pkgs.linuxAndFirmware.v6_6_31; in { boot = { loader = { systemd-boot.enable = true; efi.canTouchEfiVariables = false; }; plymouth.enable = true; kernelPackages = pkgs.linuxPackages_latest; initrd.postDeviceCommands = '' echo "Running pre-boot fs resize" /sbin/e2fsck -f /dev/mmcblk1p3 /sbin/resize2fs /dev/mmcblk1p3 ''; }; # hardware.raspberry-pi.config = { # all = { # [all] conditional filter, https://www.raspberrypi.com/documentation/computers/config_txt.html#conditional-filters # options = { # https://www.raspberrypi.com/documentation/computers/config_txt.html#enable_uart # in conjunction with `console=serial0,115200` in kernel command line (`cmdline.txt`) # creates a serial console, accessible using GPIOs 14 and 15 (pins # 8 and 10 on the 40-pin header) # enable_uart = { # enable = true; # value = true; # }; # https://www.raspberrypi.com/documentation/computers/config_txt.html#uart_2ndstage # enable debug logging to the UART, also automatically enables # UART logging in `start.elf` # uart_2ndstage = { # enable = true; # value = true; # }; # }; # Base DTB parameters # https://github.com/raspberrypi/linux/blob/a1d3defcca200077e1e382fe049ca613d16efd2b/arch/arm/boot/dts/overlays/README#L1323 # base-dt-params = { # https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#enable-pcie # pciex1 = { # enable = true; # value = "on"; # }; # PCIe Gen 3.0 # https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#pcie-gen-3-0 # pciex1_gen = { # enable = true; # value = "3"; # }; # }; # }; # }; }