diff --git a/flake.lock b/flake.lock index 2a1fa4f..3ca7f80 100644 --- a/flake.lock +++ b/flake.lock @@ -224,11 +224,11 @@ ] }, "locked": { - "lastModified": 1701609479, - "narHash": "sha256-mcEnMz7XB3K57ZX16VXoEkswljSNGXdMuUu5+g8a8R8=", + "lastModified": 1701728041, + "narHash": "sha256-x0pyrI1vC8evVDxCxyO6olOyr4wlFg9+VS3C3p4xFYQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "e504e8d01f950776c3a3160ba38c5957a1b89e66", + "rev": "ac7216918cd65f3824ba7817dea8f22e61221eaf", "type": "github" }, "original": { @@ -245,11 +245,11 @@ ] }, "locked": { - "lastModified": 1701633543, - "narHash": "sha256-8jSNtmM49sTw+VxzPsYpvW56avj3z6ZYv0ME0RDJV5c=", + "lastModified": 1701678527, + "narHash": "sha256-IZsekR8N8mmiCHlbHGoxUCPbpkAc/VG9Mk3Gfxjqi10=", "owner": "jovian-experiments", "repo": "jovian-nixos", - "rev": "02a0e03c78d6c21384c8fb3deb09604bf408e245", + "rev": "a67dce3eb5eb80faed4be27fe22fdae976c4a4f1", "type": "github" }, "original": { @@ -331,11 +331,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1701598471, - "narHash": "sha256-kHdJ2qc4qKeMTzUIHEcP41ah/dBIhCgvWgrjllt2G78=", + "lastModified": 1701656485, + "narHash": "sha256-xDFormrGCKKGqngHa2Bz1GTeKlFMMjLnHhTDRdMJ1hs=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "a89745edd5f657e2e5be5ed1bea86725ca78d92e", + "rev": "fa194fc484fd7270ab324bb985593f71102e84d1", "type": "github" }, "original": { @@ -346,11 +346,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1701253981, - "narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=", + "lastModified": 1701436327, + "narHash": "sha256-tRHbnoNI8SIM5O5xuxOmtSLnswEByzmnQcGGyNRjxsE=", "owner": "nixos", "repo": "nixpkgs", - "rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58", + "rev": "91050ea1e57e50388fa87a3302ba12d188ef723a", "type": "github" }, "original": { @@ -630,11 +630,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1694529238, - "narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=", + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", "owner": "numtide", "repo": "flake-utils", - "rev": "ff7b65b44d01cf9ba6a71320833626af21126384", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 5a2e5a0..13e3da4 100644 --- a/flake.nix +++ b/flake.nix @@ -80,6 +80,11 @@ system = "aarch64-linux"; modules = [ ./system/mistmane ]; }; + + nixosConfigurations.smolder = makeSystem { + system = "aarch64-linux"; + modules = [ ./system/smolder ]; + }; } // utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; in { diff --git a/system/smolder/boot-config.nix b/system/smolder/boot-config.nix new file mode 100644 index 0000000..6b876e6 --- /dev/null +++ b/system/smolder/boot-config.nix @@ -0,0 +1,12 @@ +{ config, pkgs, ... }: { + boot = { + kernelPackages = pkgs.linuxPackages_testing; + tmp.cleanOnBoot = true; + + initrd.luks.devices.${config.networking.hostName} = { + device = "/dev/disk/by-uuid/b6b4bd3d-d7e1-463e-9a73-6d0f620e914a"; + preLVM = true; + allowDiscards = true; + }; + }; +} diff --git a/system/smolder/default.nix b/system/smolder/default.nix new file mode 100644 index 0000000..5081063 --- /dev/null +++ b/system/smolder/default.nix @@ -0,0 +1,20 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ../../sets/base.nix + ../../sets/builder.nix + ../../sets/nixvim.nix + ../../sets/sshd.nix + ../../home + ./hardware-configuration.nix + ./boot-config.nix + ]; + + boot.loader.grub.enable = false; + boot.loader.generic-extlinux-compatible.enable = true; + networking.hostName = "smolder"; + system.stateVersion = "23.11"; + +} + diff --git a/system/smolder/hardware-configuration.nix b/system/smolder/hardware-configuration.nix new file mode 100644 index 0000000..b5371ac --- /dev/null +++ b/system/smolder/hardware-configuration.nix @@ -0,0 +1,36 @@ +# 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 = [ "nvme" ]; + boot.initrd.kernelModules = [ "dm-snapshot" ]; + boot.kernelModules = [ ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = { + device = "/dev/disk/by-uuid/88c860f3-79e4-4ab0-905b-281560ae626f"; + fsType = "ext4"; + }; + + fileSystems."/boot" = { + device = "/dev/disk/by-uuid/cdf9ee7e-c076-49b0-b32f-bb92d1eb596d"; + fsType = "ext4"; + }; + + swapDevices = + [{ device = "/dev/disk/by-uuid/30f73056-e5c0-4349-bc85-b9a842f4458e"; }]; + + # 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.enP4p65s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "aarch64-linux"; + powerManagement.cpuFreqGovernor = lib.mkDefault "ondemand"; +}