diff options
Diffstat (limited to 'nix/hosts')
-rw-r--r-- | nix/hosts/nixos/default.nix | 6 | ||||
-rw-r--r-- | nix/hosts/nixos/packages.nix | 9 | ||||
-rw-r--r-- | nix/hosts/nixos/user.nix | 12 | ||||
-rw-r--r-- | nix/hosts/wildcat/default.nix | 15 | ||||
-rw-r--r-- | nix/hosts/wildcat/hardware.nix | 29 | ||||
-rw-r--r-- | nix/hosts/wildcat/networking.nix | 36 |
6 files changed, 107 insertions, 0 deletions
diff --git a/nix/hosts/nixos/default.nix b/nix/hosts/nixos/default.nix new file mode 100644 index 0000000..abfb3a7 --- /dev/null +++ b/nix/hosts/nixos/default.nix @@ -0,0 +1,6 @@ +{ ... }: { + imports = [ + ./packages.nix + ./user.nix + ]; +} diff --git a/nix/hosts/nixos/packages.nix b/nix/hosts/nixos/packages.nix new file mode 100644 index 0000000..8e807c6 --- /dev/null +++ b/nix/hosts/nixos/packages.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: { + environment = { + systemPackages = with pkgs; [ + git + jq + vim + ]; + }; +} diff --git a/nix/hosts/nixos/user.nix b/nix/hosts/nixos/user.nix new file mode 100644 index 0000000..b358d3e --- /dev/null +++ b/nix/hosts/nixos/user.nix @@ -0,0 +1,12 @@ +{ ... }: +{ + users.users.fcuny = { + uid = 1000; + isNormalUser = true; + extraGroups = + [ + "wheel" + "dialout" # Enable access to serial devices + ]; + }; +} diff --git a/nix/hosts/wildcat/default.nix b/nix/hosts/wildcat/default.nix new file mode 100644 index 0000000..f62df7d --- /dev/null +++ b/nix/hosts/wildcat/default.nix @@ -0,0 +1,15 @@ +{ ... }: { + + imports = [ + ./hardware.nix + ./networking.nix + ]; + + boot.tmp.cleanOnBoot = true; + zramSwap.enable = true; + networking.hostName = "fcuny"; + networking.domain = "net"; + services.openssh.enable = true; + users.users.root.openssh.authorizedKeys.keys = [ ''ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINBkozy+X96u5ciX766bJ/AyQ3xm1tXZTIr5+4PVFZFi'' ]; + system.stateVersion = "23.11"; +} diff --git a/nix/hosts/wildcat/hardware.nix b/nix/hosts/wildcat/hardware.nix new file mode 100644 index 0000000..cc14f5a --- /dev/null +++ b/nix/hosts/wildcat/hardware.nix @@ -0,0 +1,29 @@ +{ modulesPath, ... }: +{ + imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; + + boot.initrd.availableKernelModules = [ + "ata_piix" + "uhci_hcd" + "xen_blkfront" + "vmw_pvscsi" + ]; + + boot.loader.grub = { + enable = true; + device = "/dev/sda"; + }; + + boot.initrd.kernelModules = [ "nvme" ]; + + fileSystems = { + "/" = { + device = "/dev/sda1"; + fsType = "ext4"; + }; + "/data" = { + device = "/dev/disk/by-id/scsi-0HC_Volume_101115314"; + fsType = "ext4"; + }; + }; +} diff --git a/nix/hosts/wildcat/networking.nix b/nix/hosts/wildcat/networking.nix new file mode 100644 index 0000000..1199113 --- /dev/null +++ b/nix/hosts/wildcat/networking.nix @@ -0,0 +1,36 @@ +{ lib, ... }: { + # This file was populated at runtime with the networking + # details gathered from the active system. + networking = { + nameservers = [ + "2a01:4ff:ff00::add:2" + "2a01:4ff:ff00::add:1" + "185.12.64.1" + ]; + defaultGateway = "172.31.1.1"; + defaultGateway6 = { + address = "fe80::1"; + interface = "eth0"; + }; + dhcpcd.enable = false; + usePredictableInterfaceNames = lib.mkForce false; + interfaces = { + eth0 = { + ipv4.addresses = [ + { address = "5.78.87.68"; prefixLength = 32; } + ]; + ipv6.addresses = [ + { address = "2a01:4ff:1f0:d1a3::1"; prefixLength = 64; } + { address = "fe80::9400:3ff:fe98:d6dc"; prefixLength = 64; } + ]; + ipv4.routes = [{ address = "172.31.1.1"; prefixLength = 32; }]; + ipv6.routes = [{ address = "fe80::1"; prefixLength = 128; }]; + }; + + }; + }; + services.udev.extraRules = '' + ATTR{address}=="96:00:03:98:d6:dc", NAME="eth0" + + ''; +} |