From 8d6da08a221a4c20d461ca452a2a92ecf486318f Mon Sep 17 00:00:00 2001 From: Felix Schulze Date: Tue, 17 Jun 2025 12:20:28 +0200 Subject: [PATCH] add hurricane --- flake.nix | 4 ++ hosts/hurricane/configuration.nix | 39 ++++++++++++++++++ hosts/hurricane/hardware-configuration.nix | 48 ++++++++++++++++++++++ 3 files changed, 91 insertions(+) create mode 100644 hosts/hurricane/configuration.nix create mode 100644 hosts/hurricane/hardware-configuration.nix diff --git a/flake.nix b/flake.nix index 2dfacc7..2e147de 100644 --- a/flake.nix +++ b/flake.nix @@ -19,6 +19,10 @@ specialArgs = {inputs = self.inputs // {inherit self;};}; modules = [./hosts/wildfire/configuration.nix]; }; + hurricane = nixpkgs.lib.nixosSystem { + specialArgs = {inputs = self.inputs // {inherit self;};}; + modules = [./hosts/hurricane/configuration.nix]; + }; }; }; } diff --git a/hosts/hurricane/configuration.nix b/hosts/hurricane/configuration.nix new file mode 100644 index 0000000..164a240 --- /dev/null +++ b/hosts/hurricane/configuration.nix @@ -0,0 +1,39 @@ +{ + config, + pkgs, + ... +}: { + imports = [ + ./hardware-configuration.nix + ../../modules/common.nix + ../../modules/desktops/hyprland-desktop.nix + ../../modules/programs.nix + ]; + + networking.hostName = "hurricane"; + + hardware = { + graphics.enable = true; + }; + + # Network security specific to host + networking.firewall.allowedTCPPorts = []; + networking.firewall.allowedUDPPorts = []; + + # Enable touchpad support (enabled default in most desktopManager). + # services.xserver.libinput.enable = true; + + # host-specific packages + environment.systemPackages = with pkgs; [ + ]; + + # host-specific Systemd services + + # This value determines the NixOS release from which the default + # settings for stateful data, like file locations and database versions + # on your system were taken. It‘s perfectly fine and recommended to leave + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "25.05"; # Did you read the comment? +} diff --git a/hosts/hurricane/hardware-configuration.nix b/hosts/hurricane/hardware-configuration.nix new file mode 100644 index 0000000..7bdda74 --- /dev/null +++ b/hosts/hurricane/hardware-configuration.nix @@ -0,0 +1,48 @@ +# 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" "thunderbolt" "nvme" "usb_storage" "usbhid" "sd_mod"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-intel"]; + boot.extraModulePackages = []; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/1fd6dd32-8fa5-4e60-8cc5-e4dd3117fc29"; + fsType = "ext4"; + }; + + boot.initrd.luks.devices."luks-5a27f03e-2d09-4590-9ba2-052059fc7e06".device = "/dev/disk/by-uuid/5a27f03e-2d09-4590-9ba2-052059fc7e06"; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/3F6D-A4E6"; + fsType = "vfat"; + options = ["fmask=0077" "dmask=0077"]; + }; + + swapDevices = [ + {device = "/dev/disk/by-uuid/07ee2446-af55-487d-8888-82e93e1712b4";} + ]; + + # 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.enp0s13f0u1u2u1.useDHCP = lib.mkDefault true; + # networking.interfaces.enp0s31f6.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp0s20f3.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}