# Do not modify this file! It was generated by ‘nixos-generate-config’ # and may be overwritten by future invocations. Please make changes # to /etc/nixos/configuration.nix instead. { config, lib, modulesPath, ... }: { imports = [ (modulesPath + "/installer/scan/not-detected.nix") ]; boot = { initrd = { availableKernelModules = [ "ehci_pci" "ahci" "mpt3sas" "isci" "usbhid" "usb_storage" "sd_mod" ]; kernelModules = [ "nfs" ]; supportedFilesystems = [ "nfs" ]; }; kernelModules = [ "kvm-intel" "vfio" "vfio_iommu_type1" "vfio_pci" "vfio_virqfd" ]; extraModulePackages = [ ]; kernelParams = [ "iommu=pt" "intel_iommu=on" "zfs.zfs_arc_max=107374182400" ]; # 100GB }; # Network settings networking = { hostName = "gandalf"; hostId = "e2fc95cd"; useDHCP = false; # needed for bridge networkmanager.enable = true; # TODO: Add ports specifically. firewall.enable = false; interfaces = { "enp130s0f0".useDHCP = true; "enp130s0f1".useDHCP = true; }; # For VMs bridges = { "br0" = { interfaces = [ "enp130s0f1" ]; }; }; }; fileSystems."/" = { device = "zroot/root"; fsType = "zfs"; }; fileSystems."/nix" = { device = "zroot/nix"; fsType = "zfs"; }; fileSystems."/var" = { device = "zroot/var"; fsType = "zfs"; }; fileSystems."/home" = { device = "zroot/home"; fsType = "zfs"; }; swapDevices = [ ]; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; # System settings and services. mySystem = { purpose = "Production"; system = { motd.networkInterfaces = [ "enp130s0f0" "enp130s0f1" ]; # ZFS zfs.enable = true; zfs.mountPoolsAtBoot = [ "eru" ]; # NFS nfs.enable = true; # Samba samba.enable = true; samba.shares = import ./config/samba-shares.nix { }; samba.extraConfig = import ./config/samba-config.nix { }; }; }; }