aboutsummaryrefslogtreecommitdiff
path: root/hosts/heimdall
diff options
context:
space:
mode:
authortdback <tyler@tdback.net>2025-01-26 11:31:00 -0500
committertdback <tyler@tdback.net>2025-01-26 11:31:00 -0500
commita7c3d07078d0ca67afadd6fb24ab4b60b38c1109 (patch)
treeb214be5bc6bd1ea67c0499ee54ce3ec06565e929 /hosts/heimdall
parent63883c4dea9ca50a4fd8756323ab04bf66e3dd3d (diff)
hosts: overhauled host configurations
Diffstat (limited to 'hosts/heimdall')
-rw-r--r--hosts/heimdall/default.nix45
-rw-r--r--hosts/heimdall/filesystems/default.nix17
-rw-r--r--hosts/heimdall/hardware.nix38
-rw-r--r--hosts/heimdall/modules/default.nix17
4 files changed, 61 insertions, 56 deletions
diff --git a/hosts/heimdall/default.nix b/hosts/heimdall/default.nix
index 38b523a..5d6876b 100644
--- a/hosts/heimdall/default.nix
+++ b/hosts/heimdall/default.nix
@@ -1,8 +1,32 @@
-{ lib, inputs, ... }:
+{
+ inputs,
+ lib,
+ ...
+}:
{
system.stateVersion = "24.05";
- imports = [ ./hardware.nix ];
+ imports = [
+ ./filesystems
+ ./modules
+ ];
+
+ hardware = {
+ enableRedistributableFirmware = true;
+ cpu.intel.updateMicrocode = true;
+ };
+
+ boot.loader = {
+ systemd-boot.enable = true;
+ efi.canTouchEfiVariables = true;
+ };
+ boot.initrd.availableKernelModules = [
+ "xhci_pci"
+ "ehci_pci"
+ "ahci"
+ "sd_mod"
+ ];
+ boot.kernelModules = [ "kvm-intel" ];
home-manager = {
useGlobalPkgs = true;
@@ -14,6 +38,7 @@
};
};
+ time.timeZone = "America/Detroit";
networking = {
hostName = "heimdall";
nameservers = [ "10.44.0.1" ];
@@ -26,20 +51,4 @@
};
};
};
-
- time.timeZone = "America/Detroit";
-
- boot.loader = {
- systemd-boot.enable = true;
- efi.canTouchEfiVariables = true;
- };
-
- programs.motd = {
- enable = true;
- networkInterfaces = [ "eno1" ];
- servicesToCheck = [
- "searx"
- "unbound"
- ];
- };
}
diff --git a/hosts/heimdall/filesystems/default.nix b/hosts/heimdall/filesystems/default.nix
new file mode 100644
index 0000000..a956d2d
--- /dev/null
+++ b/hosts/heimdall/filesystems/default.nix
@@ -0,0 +1,17 @@
+{
+ fileSystems."/" = {
+ device = "/dev/disk/by-uuid/d62103eb-e154-4b71-b813-54ca76815a80";
+ fsType = "ext4";
+ };
+
+ fileSystems."/boot" = {
+ device = "/dev/disk/by-uuid/5972-1878";
+ fsType = "vfat";
+ options = [
+ "fmask=0022"
+ "dmask=0022"
+ ];
+ };
+
+ swapDevices = [ ];
+}
diff --git a/hosts/heimdall/hardware.nix b/hosts/heimdall/hardware.nix
deleted file mode 100644
index b2a5571..0000000
--- a/hosts/heimdall/hardware.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-# 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" "ehci_pci" "ahci" "sd_mod" ];
- boot.initrd.kernelModules = [ ];
- boot.kernelModules = [ "kvm-intel" ];
- boot.extraModulePackages = [ ];
-
- fileSystems."/" =
- { device = "/dev/disk/by-uuid/d62103eb-e154-4b71-b813-54ca76815a80";
- fsType = "ext4";
- };
-
- fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/5972-1878";
- 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.eno1.useDHCP = lib.mkDefault true;
-
- nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
- hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
-}
diff --git a/hosts/heimdall/modules/default.nix b/hosts/heimdall/modules/default.nix
new file mode 100644
index 0000000..814d1ff
--- /dev/null
+++ b/hosts/heimdall/modules/default.nix
@@ -0,0 +1,17 @@
+{
+ modules = {
+ services.dns = {
+ enable = true;
+ subnet = "10.44.0.0/16";
+ };
+ services.searx.enable = true;
+ scripts.motd = {
+ enable = true;
+ networkInterfaces = [ "eno1" ];
+ servicesToCheck = [
+ "searx"
+ "unbound"
+ ];
+ };
+ };
+}