dacbert: migrate to rpi-netboot
This commit is contained in:
parent
34c96c6768
commit
e8f1f0f404
|
@ -310,7 +310,6 @@
|
|||
|
||||
dacbert = nixosSystem' {
|
||||
modules = [
|
||||
"${inputs.nixpkgs}/nixos/modules/installer/sd-card/sd-image-aarch64.nix"
|
||||
nixos-hardware.nixosModules.raspberry-pi-4
|
||||
self.nixosModules.rpi-netboot
|
||||
./hosts/dacbert
|
||||
|
|
|
@ -2,12 +2,13 @@
|
|||
let
|
||||
tftpRoot = pkgs.runCommand "tftproot" {} ''
|
||||
mkdir $out
|
||||
cp -sr ${tftproots.rpi-netboot-tftproot} $out/
|
||||
cp -sr ${tftproots.rpi-netboot-tftproot}/* $out/
|
||||
${lib.concatMapStrings (host: ''
|
||||
ln -s ${tftproots."${host}-tftproot"} $out/${hostRegistry.${host}.serial}
|
||||
ln -s ${tftproots."${host}-tftproot"} $out/${hostRegistry.hosts.${host}.serial}
|
||||
'') (
|
||||
builtins.attrNames (
|
||||
lib.filterAttrs (_: { serial ? null, ... }: serial != null) hostRegistry
|
||||
lib.filterAttrs (_: { serial ? null, ... }: serial != null)
|
||||
hostRegistry.hosts
|
||||
)
|
||||
)}
|
||||
'';
|
||||
|
|
|
@ -1,29 +1,11 @@
|
|||
{ config, lib, pkgs, modulesPath, ... }:
|
||||
{ hostRegistry, config, lib, pkgs, modulesPath, ... }:
|
||||
|
||||
{
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.initrd.includeDefaultModules = false;
|
||||
boot.initrd.availableKernelModules = lib.mkForce [ "usbhid" ];
|
||||
boot.kernelModules = [ ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-label/NIXOS_SD";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot/firmware" = {
|
||||
device = "/dev/disk/by-label/FIRMWARE";
|
||||
fsType = "vfat";
|
||||
};
|
||||
|
||||
swapDevices = [ ];
|
||||
|
||||
hardware.enableRedistributableFirmware = true;
|
||||
hardware.deviceTree = {
|
||||
enable = true;
|
||||
kernelPackage = config.boot.kernelPackages.kernel;
|
||||
};
|
||||
# hardware.deviceTree = {
|
||||
# enable = true;
|
||||
# kernelPackage = config.boot.kernelPackages.kernel;
|
||||
# };
|
||||
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
|
||||
|
||||
nixpkgs.config.packageOverrides = pkgs: {
|
||||
|
@ -39,15 +21,13 @@
|
|||
enable = true;
|
||||
version = 4;
|
||||
firmwareConfig = ''
|
||||
gpu_mem=192
|
||||
gpu_mem=256
|
||||
dtparam=audio=on
|
||||
'';
|
||||
};
|
||||
};
|
||||
kernelPackages = pkgs.linuxPackages_latest;
|
||||
# kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
|
||||
|
||||
# No ZFS on latest kernel:
|
||||
supportedFilesystems = lib.mkForce [ "vfat" "ext4" ];
|
||||
kernelParams = lib.mkForce [
|
||||
"snd_bcm2835.enable_headphones=1"
|
||||
# don't let sd-image-aarch64.nix setup serial console as it breaks bluetooth.
|
||||
|
@ -56,13 +36,8 @@
|
|||
|
||||
tmpOnTmpfs = true;
|
||||
};
|
||||
sdImage = {
|
||||
compressImage = false;
|
||||
imageBaseName = config.networking.hostName;
|
||||
firmwareSize = 512;
|
||||
};
|
||||
hardware.raspberry-pi."4" = {
|
||||
# fkms-3d.enable = true;
|
||||
fkms-3d.enable = true;
|
||||
};
|
||||
|
||||
c3d2 = {
|
||||
|
@ -72,7 +47,6 @@
|
|||
hq.statistics.enable = true;
|
||||
audioServer.enable = true;
|
||||
k-ot.enable = true;
|
||||
autoUpdate = true;
|
||||
};
|
||||
|
||||
nix = {
|
||||
|
|
|
@ -4,6 +4,9 @@
|
|||
loader.raspberryPi = {
|
||||
enable = true;
|
||||
version = 4;
|
||||
firmwareConfig = lib.mkDefault ''
|
||||
gpu_mem=256
|
||||
'';
|
||||
};
|
||||
kernelPackages = pkgs.linuxPackages_rpi4;
|
||||
kernelParams = [
|
||||
|
@ -57,7 +60,9 @@
|
|||
# r/o /nix/store
|
||||
services.nix-daemon.enable = false;
|
||||
sockets.nix-daemon.enable = false;
|
||||
services.nix-gc.enable = false;
|
||||
};
|
||||
nix.gc.automatic = lib.mkForce false;
|
||||
services.journald.extraConfig = ''
|
||||
Storage=volatile
|
||||
'';
|
||||
|
@ -71,9 +76,9 @@
|
|||
cat << EOF > $out/config.txt
|
||||
kernel=kernel8.img
|
||||
initramfs initrd.img followkernel
|
||||
gpu_mem=256
|
||||
arm_64bit=1
|
||||
${toString config.boot.loader.raspberryPi.firmwareConfig}
|
||||
EOF
|
||||
echo "dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 verbose init=${config.system.build.toplevel}/init" > $out/cmdline.txt
|
||||
echo "dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 verbose init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}" > $out/cmdline.txt
|
||||
'';
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue