From fa43a726357260608501da990fa6f514ccc91480 Mon Sep 17 00:00:00 2001 From: James Andariese Date: Sat, 26 Apr 2025 04:38:17 +0000 Subject: [PATCH] initial monferno --- hosts/monferno.nix | 43 +++++++++++++++++++++++++++++++++++++++++++ modules/server.nix | 9 +-------- types/desktop.nix | 13 +++++++++++++ 3 files changed, 57 insertions(+), 8 deletions(-) create mode 100644 hosts/monferno.nix create mode 100644 types/desktop.nix diff --git a/hosts/monferno.nix b/hosts/monferno.nix new file mode 100644 index 0000000..563d46f --- /dev/null +++ b/hosts/monferno.nix @@ -0,0 +1,43 @@ +# 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, pkgs, modulesPath, ... }: + +{ + imports = + [ ../types/desktop.nix + ]; + + networking.hostId = "762fff85"; + networking.networkmanager.enable = true; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "vmd" "nvme" "uas" "usbhid" "usb_storage" "sd_mod" "sr_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + boot.kernelPackages = pkgs.zfs.latestCompatibleLinuxPackages; + + fileSystems."/" = + { device = "zroot/monferno-root"; + fsType = "zfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-label/BOOT"; + fsType = "vfat"; + }; + boot.loader.grub.device = "/dev/disk/by-label/monferno-boot"; + + 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..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + networking.interfaces.wlp189s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/modules/server.nix b/modules/server.nix index a47cba5..e99fc8e 100644 --- a/modules/server.nix +++ b/modules/server.nix @@ -6,7 +6,6 @@ { services.resolved.enable = false; - networking.networkmanager.enable = false; networking.nameservers = [ "172.16.1.53" @@ -31,7 +30,7 @@ }; services.openssh.enable = true; - networking.firewall.enable = true; + networking.firewall.enable = false; environment.systemPackages = with pkgs; [ neovim @@ -40,14 +39,8 @@ nfs-utils xfsprogs ]; - services.openiscsi = { - enable = true; - name = "${config.networking.hostName}-initiatorhost"; - }; systemd.network.wait-online.enable = lib.mkDefault false; - networking.useDHCP = false; - #services.tcsd.enable = true; security.sudo = { enable = true; diff --git a/types/desktop.nix b/types/desktop.nix new file mode 100644 index 0000000..2119a2c --- /dev/null +++ b/types/desktop.nix @@ -0,0 +1,13 @@ +{ config, pkgs, lib, flake-inputs, ... }: + +{ + imports = [ + ../modules/session.nix + ../modules/systemd-efi.nix + ../modules/users.nix + ../modules/serial-console.nix + ../modules/pragmatic-bin.nix + ]; + + hardware.enableRedistributableFirmware = true; +}