diff --git a/.sops.yaml b/.sops.yaml index 936b8e7..321fe73 100644 --- a/.sops.yaml +++ b/.sops.yaml @@ -1,9 +1,11 @@ keys: - &lavender age1az6l56h4m38jw2hm7t7a99wp9f88s845sg29grtmdpz72lrkc5cq66kmcv - &violet age1cd40qmufxzvw8dkml9340czqfq6ta3kxpjfj47jpavwn2t7ghywsxhqz79 + - &lilac age16hhxnmv0cydxt5spcjx9p6gj94dvygwsweekrcuq4slp4pnm456q2m23c0 creation_rules: - path_regex: secrets/[^/]+\.yaml$ key_groups: - age: - *lavender - *violet + - *lilac diff --git a/flake.lock b/flake.lock index fb8e45c..5429de1 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1784433272, - "narHash": "sha256-5Gz3pC/rcn8LLwzLZZhrpPMqY+PDdUzoFtXV3uWoitg=", + "lastModified": 1786198506, + "narHash": "sha256-u4tdLMzKCV2R0wn4eFtk4LKH0RmzzCkxeYqCYs/P3eg=", "owner": "AvengeMedia", "repo": "danksearch", - "rev": "4b4905e2ef3454230fb648d2139f3139b742b0eb", + "rev": "632c2909bb1bb534b574c22c1347de0e6521e58a", "type": "github" }, "original": { @@ -49,11 +49,11 @@ ] }, "locked": { - "lastModified": 1784857968, - "narHash": "sha256-83haLQzxrk6sCX76iQlloHWQ+TD0RKsK+LdVTMikNwk=", + "lastModified": 1786667869, + "narHash": "sha256-Zc6PI2MEpR2dmLWsgt8PZcx9BmCZwKlXgTZ+1ykVq78=", "owner": "AvengeMedia", "repo": "dms-plugin-registry", - "rev": "78d478f34ad6790faea447c37d16bab63e1d3570", + "rev": "85e75e04b8879d50459946d12c74c3152cbe457b", "type": "github" }, "original": { @@ -85,11 +85,11 @@ ] }, "locked": { - "lastModified": 1784350909, - "narHash": "sha256-ZWyzLbS1yKUTeFJLmdVuWNnHttL333/ldJbEE+KzCrM=", + "lastModified": 1785119570, + "narHash": "sha256-Rgs2xKnGLFWQscxUaXX07oyZeuMDOHEbqDOsgliLFGM=", "owner": "nix-community", "repo": "home-manager", - "rev": "4ce190229c73d44536caa7072f6308fb2d8feeb3", + "rev": "d4fd24667c8cbef124bb70a20380cab75ec8474d", "type": "github" }, "original": { @@ -109,11 +109,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1784874881, - "narHash": "sha256-u4jhSIf/Un0qZB+Cn3hTTaHSI20XeAxYbA5o4faqdJs=", + "lastModified": 1785857305, + "narHash": "sha256-25q05zpF1sqOCxPPUG9DPPGd+EDW7SiAOWCzBWRS7r0=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "ef7a2a3d719af46b906c22a3ebfb7d65627b2cd2", + "rev": "9ee3e13b60643448228353097880521658b2fe0e", "type": "github" }, "original": { @@ -142,11 +142,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1784570726, - "narHash": "sha256-9EMn69JBcFWFgUM7f0VBAX+jBby5b9H3M59U75+5yI4=", + "lastModified": 1785701241, + "narHash": "sha256-ircVOzPWRircI39ac/tqJajr5OoJxEVrDlBb05TULEk=", "owner": "YaLTeR", "repo": "niri", - "rev": "7f26c3ee804fb6ed458ef7fb0e3c794f14e0b3bc", + "rev": "feb3e43f1475e0865bb89cbd1e898b34d1d2ccf6", "type": "github" }, "original": { @@ -155,13 +155,34 @@ "type": "github" } }, + "nixos-hardware": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1786528975, + "narHash": "sha256-8KuasCs+mVQ7WbLONUf/QB7NZeQvovyXRyxAj4nOOzY=", + "owner": "NixOS", + "repo": "nixos-hardware", + "rev": "3e7edd9afe17e45521300e041c65de3015f4a302", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "master", + "repo": "nixos-hardware", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1784796856, - "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=", + "lastModified": 1785828668, + "narHash": "sha256-8fsyqeO+mJqvIzeO4xIpgJe/f7MTbbVTEC6RT6WSXNs=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", + "rev": "e72e4f299401a3689d4b3d5fc6496b11db7064eb", "type": "github" }, "original": { @@ -189,11 +210,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1784796856, - "narHash": "sha256-wWFrV5/Qbm+lyt5x20E/bSbfJiGKMo4RCxZV8cl/WZI=", + "lastModified": 1786599213, + "narHash": "sha256-yNJd40f11EzXBjSByCB7IPpeFFAdeoSKKM67dGkfFoU=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e2587caef70cea85dd97d7daab492899902dbf5d", + "rev": "0e251e24a4f24e036a084b6b4b2d2491af4167f4", "type": "github" }, "original": { @@ -205,11 +226,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1784856561, - "narHash": "sha256-J+Bx1Z6Oeoj2FgnBhRMKyUhhtDoOpTgXYaVLZpDjW4A=", + "lastModified": 1786535285, + "narHash": "sha256-rG5HKMAgAhMgydvKGtco6rqTxRq4EDZQCx9USLvVqYw=", "owner": "nixos", "repo": "nixpkgs", - "rev": "597283ad8aa0b331c788e97c4c262d58877074ef", + "rev": "9f78f44a87948854445dae0b6bf82b2e87e4efb5", "type": "github" }, "original": { @@ -226,6 +247,7 @@ "dms-plugin-registry": "dms-plugin-registry", "home-manager": "home-manager", "niri": "niri", + "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs_2", "nixpkgs-unstable": "nixpkgs-unstable", "sops-nix": "sops-nix", @@ -239,11 +261,11 @@ ] }, "locked": { - "lastModified": 1783174389, - "narHash": "sha256-aCWC8ngycU7OdJrU2+Je3qf+1a2ykuBvpPhZT/9tXMc=", + "lastModified": 1786629091, + "narHash": "sha256-gkig4nPi1CWc4Z50GBsjE4ygSE7hMpl/TwID2an2Cck=", "owner": "Mic92", "repo": "sops-nix", - "rev": "f1406619a3884cd5c47992a70b8b35c9c0fcb4c9", + "rev": "a8627b21b9107c5711c96b84f32a9a4b3d45295f", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 4ea53e4..3d08b5d 100644 --- a/flake.nix +++ b/flake.nix @@ -36,9 +36,14 @@ url = "github:AvengeMedia/danksearch"; inputs.nixpkgs.follows = "nixpkgs"; }; + + nixos-hardware = { + url = "github:NixOS/nixos-hardware/master"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; - outputs = { nixpkgs, home-manager, sops-nix, niri, dms, dms-plugin-registry, danksearch, wvkbd-src, ... }@inputs: { + outputs = { nixpkgs, home-manager, sops-nix, niri, dms, dms-plugin-registry, danksearch, wvkbd-src, nixos-hardware, ... }@inputs: { nixosConfigurations = { violet = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; @@ -67,6 +72,33 @@ ]; }; + lilac = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + specialArgs = { inherit inputs; }; + + modules = [ + ./hosts/lilac/default.nix + + niri.nixosModules.niri + dms-plugin-registry.nixosModules.default + sops-nix.nixosModules.sops + nixos-hardware.nixosModules.framework-intel-core-ultra-series3 + + home-manager.nixosModules.home-manager { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.extraSpecialArgs = { inherit inputs; }; + + home-manager.users.jashton = { + imports = [ + ./home/jashton.nix + danksearch.homeModules.default + ]; + }; + } + ]; + }; + lavender = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { inherit inputs; }; diff --git a/hosts/lilac/default.nix b/hosts/lilac/default.nix new file mode 100644 index 0000000..56a5400 --- /dev/null +++ b/hosts/lilac/default.nix @@ -0,0 +1,15 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ./hardware.nix + ../../system + ]; + + networking.hostName = "lilac"; + + services.fwupd.enable = true; + services.fprintd.enable = true; + + system.stateVersion = "26.05"; +} diff --git a/hosts/lilac/hardware.nix b/hosts/lilac/hardware.nix new file mode 100644 index 0000000..ecf1716 --- /dev/null +++ b/hosts/lilac/hardware.nix @@ -0,0 +1,32 @@ +# 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" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/86f8851e-b254-4d0b-a974-0240b72a83a1"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/76A6-B92E"; + fsType = "vfat"; + options = [ "fmask=0022" "dmask=0022" ]; + }; + + swapDevices = [ { device = "/dev/disk/by-uuid/fcc6f3ac-24e7-447e-a07a-7561f5468d56"; } ]; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.npu.enable = true; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}