aboutsummaryrefslogtreecommitdiff
path: root/hosts/oasis
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/oasis')
-rw-r--r--hosts/oasis/default.nix51
-rw-r--r--hosts/oasis/hardware.nix39
2 files changed, 90 insertions, 0 deletions
diff --git a/hosts/oasis/default.nix b/hosts/oasis/default.nix
new file mode 100644
index 0000000..8ef44f9
--- /dev/null
+++ b/hosts/oasis/default.nix
@@ -0,0 +1,51 @@
+{ lib, inputs, ... }:
+{
+ system.stateVersion = "24.05";
+
+ imports = [ ./hardware.nix ];
+
+ home-manager = {
+ useGlobalPkgs = true;
+ useUserPackages = true;
+ users = import "${inputs.self}/users";
+ extraSpecialArgs = {
+ inherit inputs;
+ headless = true;
+ };
+ };
+
+ networking = {
+ hostName = "oasis";
+ hostId = "7a7d723a"; # Required for ZFS support.
+ nameservers = [ "10.44.0.1" ];
+ defaultGateway.address = "10.44.0.1";
+ interfaces.enp59s0 = {
+ useDHCP = false;
+ ipv4.addresses = [{
+ address = "10.44.4.103";
+ prefixLength = 16;
+ }];
+ };
+ };
+
+ time.timeZone = "America/Detroit";
+
+ boot = {
+ loader = {
+ systemd-boot.enable = true;
+ efi.canTouchEfiVariables = true;
+ };
+ zfs.extraPools = [ "tank" ];
+ };
+
+ motd = {
+ networkInterfaces = lib.lists.singleton "enp59s0";
+ servicesToCheck = [
+ "caddy"
+ "sftpgo"
+ "zfs-zed"
+ ];
+ };
+
+ services.sftpgo.dataDir = "/tank/sftpgo";
+}
diff --git a/hosts/oasis/hardware.nix b/hosts/oasis/hardware.nix
new file mode 100644
index 0000000..3870379
--- /dev/null
+++ b/hosts/oasis/hardware.nix
@@ -0,0 +1,39 @@
+# 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 =
+ [ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
+
+ boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usb_storage" "sd_mod" "sdhci_pci" ];
+ boot.initrd.kernelModules = [ ];
+ boot.kernelModules = [ "kvm-intel" ];
+ boot.extraModulePackages = [ ];
+
+ fileSystems."/" =
+ { device = "/dev/disk/by-uuid/3e333010-7dae-47cf-9288-85d58ddda699";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" =
+ { device = "/dev/disk/by-uuid/8430-1FF8";
+ fsType = "vfat";
+ options = [ "fmask=0022" "dmask=0022" ];
+ };
+
+ 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.enp59s0.useDHCP = lib.mkDefault true;
+ # networking.interfaces.wlo1.useDHCP = lib.mkDefault true;
+
+ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
+ hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
+}