41 lines
1.3 KiB
Nix
41 lines
1.3 KiB
Nix
{
|
|
flake.nixosModules.hosts.pianonix = {
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
modulesPath,
|
|
...
|
|
}: {
|
|
imports = [(modulesPath + "/installer/scan/not-detected.nix")];
|
|
|
|
boot.initrd.availableKernelModules = ["xhci_pci"];
|
|
boot.initrd.kernelModules = [];
|
|
boot.kernelModules = [];
|
|
boot.extraModulePackages = [];
|
|
boot.kernelPackages = pkgs.linuxKernel.packages.linux_rpi4;
|
|
boot.blacklistedKernelModules = ["snd_bcm2835"]; # Disables sound, required for ws281x to work
|
|
# boot.supportedFilesystems = lib.mkForce [
|
|
# # remove zfs, since its incompatible with latest kernel
|
|
# "vfat"
|
|
# "ext4"
|
|
# ];
|
|
|
|
fileSystems."/" = {
|
|
device = "/dev/disk/by-label/NIXOS_SD";
|
|
fsType = "ext4";
|
|
};
|
|
|
|
swapDevices = [];
|
|
|
|
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
|
|
# (the default) this is the recommended approach. When using systemd-networkd it's
|
|
# still possible to use this option, but it's recommended to use it in conjunction
|
|
# with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`.
|
|
networking.useDHCP = lib.mkDefault true;
|
|
# networking.interfaces.end0.useDHCP = lib.mkDefault true;
|
|
# networking.interfaces.wlan0.useDHCP = lib.mkDefault true;
|
|
|
|
nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux";
|
|
};
|
|
}
|