{pkgs, lib, inputs, modulesPath, ...}: {
  # Enable distributed Builds
  nix.distributedBuilds = true;
  imports = [
    inputs.nixos-hardware.nixosModules.raspberry-pi-4
    (modulesPath + "/installer/scan/not-detected.nix")
  ];
  console.enable = true;
  environment.systemPackages = with pkgs; [
    libraspberrypi
    raspberrypi-eeprom
  ];
    boot = {
      initrd.availableKernelModules = [
        "xhci_pci"
        "usbhid"
        "usb_storage"
        "vc4"
        "pcie_brcmstb" # required for the pcie bus to work
        "reset-raspberrypi" # required for vl805 firmware to load
      ];
      # Use the extlinux boot loader. (NixOS wants to enable GRUB by default)
      loader.grub.enable = false;
      # Enables the generation of /boot/extlinux/extlinux.conf
      loader.generic-extlinux-compatible.enable = true;

      initrd.kernelModules = [ ];
      kernelModules = [ ];
      extraModulePackages = [ ];
    };

  fileSystems."/" = { 
    device = "/dev/disk/by-uuid/44444444-4444-4444-8888-888888888888";
    fsType = "ext4";
  };

  hardware.enableRedistributableFirmware = true;
  
  swapDevices = [ ];
  networking.useDHCP = lib.mkDefault true;
  powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand";
}