summaryrefslogtreecommitdiff
path: root/hosts/threshold
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/threshold')
-rw-r--r--hosts/threshold/default.nix50
-rw-r--r--hosts/threshold/disko.nix85
-rw-r--r--hosts/threshold/hardware.nix82
-rw-r--r--hosts/threshold/network.nix61
4 files changed, 0 insertions, 278 deletions
diff --git a/hosts/threshold/default.nix b/hosts/threshold/default.nix
deleted file mode 100644
index 485997b..0000000
--- a/hosts/threshold/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- lib,
- ...
-}:
-{
-
- imports = [
- ./network.nix
- ./disko.nix
- ./hardware.nix
- ];
- addons = {
- desktop.xfce.enable = lib.mkForce true;
- gpg.enable = true;
- virtualisation.host = true;
- };
-
- # Bootloader and boot setup.
- boot.loader.efi.canTouchEfiVariables = lib.mkDefault true;
-
- boot.loader.grub = {
- enable = true;
- useOSProber = false;
- device = "nodev";
- efiSupport = true;
- default = "saved";
- memtest86.enable = true;
- };
-
- # Networking setup
- networking.hostName = "threshold";
- services.resolved = {
- enable = true;
- settings.Resolve.DNSOverTLS = "opportunistic";
- };
-
- # SSH Access
- services.openssh = {
- enable = true;
- ports = [ 22 ];
- openFirewall = true;
- allowSFTP = true;
- settings = {
- PasswordAuthentication = false;
- AllowUsers = [ "wilkuu" ];
- X11Forwarding = true;
- PermitRootLogin = "no";
- };
- };
-}
diff --git a/hosts/threshold/disko.nix b/hosts/threshold/disko.nix
deleted file mode 100644
index ddbfa11..0000000
--- a/hosts/threshold/disko.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{ config, lib, ... }:
-{
- options.host-config.disko = with lib; {
- root_device = mkOption {
- type = types.path;
- default = "/dev/nvme0n1";
- example = "/dev/nvme0n1";
- description = "Root device for disko and grub";
- };
- enable = mkOption {
- type = types.bool;
- default = !config.addons.virtualisation.isTestVM;
- description = "Whenever to enable disko or not.";
- };
- };
-
- config =
- let
- cfg = config.host-config.disko;
- in
- lib.mkIf (cfg.enable) {
- services.btrfs.autoScrub = {
- enable = true;
- interval = "weekly";
- };
-
- disko.devices = {
- disk = {
- main-disk = {
- device = cfg.root_device;
- type = "disk";
- content = {
- type = "gpt";
- partitions = {
- ESP = {
- type = "EF00";
- size = "512M";
- content = {
- type = "filesystem";
- format = "vfat";
- mountpoint = "/boot";
- mountOptions = [ "umask=0077" ];
- };
- };
- root = {
- size = "100%";
- content = {
- type = "btrfs";
- extraArgs = [ "-f" ];
- subvolumes = {
- # Subvolume name is different from mountpoint
- "/rootfs" = {
- mountOptions = [ "compress=zstd" ];
- mountpoint = "/";
- };
- # Subvolume name is the same as the mountpoint
- "/home" = {
- mountOptions = [ "compress=zstd" ];
- mountpoint = "/home";
- };
- # Parent is not mounted so the mountpoint must be set
- "/nix" = {
- mountOptions = [
- "compress=zstd"
- "noatime"
- ];
- mountpoint = "/nix";
- };
- # Subvolume for the swapfile
- "/swap" = {
- mountpoint = "/.swapvol";
- swap = {
- swapfile.size = "8G";
- };
- };
- };
- };
- };
- };
- };
- };
- };
- };
- };
-}
diff --git a/hosts/threshold/hardware.nix b/hosts/threshold/hardware.nix
deleted file mode 100644
index f0b2fe7..0000000
--- a/hosts/threshold/hardware.nix
+++ /dev/null
@@ -1,82 +0,0 @@
-{
- config,
- modulesPath,
- lib,
- ...
-}:
-{
- imports = [
- (modulesPath + "/installer/scan/not-detected.nix")
- ];
-
- boot.initrd.availableKernelModules = [
- "xhci_pci"
- "ahci"
- "nvme"
- "usb_storage"
- "usbhid"
- "sd_mod"
- ];
- boot.initrd.kernelModules = [ ];
- boot.kernelModules = [ "kvm-intel" ];
- boot.extraModulePackages = [ ];
-
- nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
- hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
-
- ## Mountpoints:
-
- # Enable OpenGL
- hardware.graphics = {
- enable = true;
- };
-
- # Load nvidia driver for Xorg and Wayland
- services.xserver.videoDrivers = [ "nvidia" ];
-
- #NVIDIA Settings
- hardware.nvidia = {
-
- # Modesetting is required.
- modesetting.enable = true;
-
- # Nvidia power management. Experimental, and can cause sleep/suspend to fail.
- # Enable this if you have graphical corruption issues or application crashes after waking
- # up from sleep. This fixes it by saving the entire VRAM memory to /tmp/ instead
- # of just the bare essentials.
- powerManagement.enable = false;
-
- # Fine-grained power management. Turns off GPU when not in use.
- # Experimental and only works on modern Nvidia GPUs (Turing or newer).
- powerManagement.finegrained = false;
-
- # Use the NVidia open source kernel module (not to be confused with the
- # independent third-party "nouveau" open source driver).
- # Support is limited to the Turing and later architectures. Full list of
- # supported GPUs is at:
- # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
- # Only available from driver 515.43.04+
- # Currently alpha-quality/buggy, so false is currently the recommended setting.
- open = false;
-
- # Enable the Nvidia settings menu,
- # accessible via `nvidia-settings`.
- nvidiaSettings = true;
-
- # Optionally, you may need to select the appropriate driver version for your specific GPU.
- package = config.boot.kernelPackages.nvidiaPackages.legacy_580;
-
- # prime = {
- # offload = {
- # enable = true;
- # enableOffloadCmd = true;
- # };
- #
- # sync.enable = false;
-
- # intelBusId = "PCI:0:2:0";
- # nvidiaBusId = "PCI:1:0:0";
- # };
- };
-
-}
diff --git a/hosts/threshold/network.nix b/hosts/threshold/network.nix
deleted file mode 100644
index a4d0c03..0000000
--- a/hosts/threshold/network.nix
+++ /dev/null
@@ -1,61 +0,0 @@
-{ ... }:
-let
- baseTCP = [
- 20
- 22
- 25
- 80
- 443
- ];
- baseUDP = [
- ];
- baseTCPRanges = [ ];
- baseUDPRanges = [ ];
-in
-{
- systemd.network = {
- enable = true;
- networks."10-uplink" = {
- matchConfig.Type = "ether";
- networkConfig = {
- DHCP = "ipv4";
- IPv6AcceptRA = "yes";
- };
- linkConfig = {
- RequiredForOnline = "yes";
- };
- ipv6AcceptRAConfig = {
- UseDNS = "yes";
- UseDomains = "yes";
- };
- dns = [
- "192.168.88.1"
- "1.1.1.1"
- "2606:4700:4700:0000:0000:0000:0000:1002"
- ];
- };
- };
- networking = {
- useNetworkd = true;
- nftables.enable = true;
- useDHCP = true;
- firewall = {
- # check enable = true;
- checkReversePath = false;
- allowedTCPPorts = baseTCP;
- allowedUDPPorts = baseUDP;
- allowedUDPPortRanges = baseUDPRanges;
- allowedTCPPortRanges = baseTCPRanges;
- # TODO: Figure out how to do FW that allows only on the internal ip range
- #interfaces = {
- # "wg-home" = {
- # allowedTCPPorts = secureTCP;
- # allowedUDPPorts = secureUDP;
- # allowedUDPPortRanges = secureUDPRanges;
- # allowedTCPPortRanges = secureTCPRanges;
- # };
- #};
- };
- };
-
-}