44 lines
821 B
Nix
44 lines
821 B
Nix
{ config, lib, pkgs, ... }:
|
|||
|
|
|
||
|
|
let
|
||
|
|
cfg = config.greg.rpi4;
|
||
|
|
|
||
|
|
in with lib; {
|
||
|
|
options = {
|
||
|
|
greg.rpi4 = {
|
||
|
|
enable = mkEnableOption "Enable support for Raspberry Pi 4s";
|
||
|
|
};
|
||
|
|
};
|
||
|
|
|
||
|
|
config = mkIf cfg.enable {
|
||
|
|
boot = {
|
||
|
|
# This prevents us from having to compile our own kernel
|
||
|
|
kernelPackages = pkgs.linuxPackages_rpi4;
|
||
|
|
kernelParams = [
|
||
|
|
"8250.nr_uarts=1"
|
||
|
|
"console=ttyAMA0,115200"
|
||
|
|
"console=tty1"
|
||
|
|
"cma=128M"
|
||
|
|
];
|
||
|
|
|
||
|
|
loader = {
|
||
|
|
raspberryPi = {
|
||
|
|
enable = true;
|
||
|
|
version = 4;
|
||
|
|
};
|
||
|
|
|
||
|
|
# Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
|
||
|
|
grub.enable = false;
|
||
|
|
|
||
|
|
# Enables the generation of /boot/extlinux/extlinux.conf
|
||
|
|
#generic-extlinux-compatible.enable = true;
|
||
|
|
};
|
||
|
|
};
|
||
|
|
|
||
|
|
environment.systemPackages = with pkgs; [
|
||
|
|
raspberrypifw
|
||
|
|
usbutils
|
||
|
|
];
|
||
|
|
};
|
||
|
|
}
|