From a3f86d5ca39d2cae687a7fed1dc59d626b80dd01 Mon Sep 17 00:00:00 2001 From: Mans Ziesel Date: Tue, 6 Jun 2023 17:23:18 +0200 Subject: [PATCH] fix systemd-boot? --- .gitignore | 1 - flake.lock | 16 +++++++++++++ flake.nix | 2 +- nixos/configuration.nix | 11 ++++----- nixos/hardware-configuration.nix | 39 ++++++++++++++++++++++++++++++++ 5 files changed, 61 insertions(+), 8 deletions(-) delete mode 100644 .gitignore create mode 100644 nixos/hardware-configuration.nix diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 1093752..0000000 --- a/.gitignore +++ /dev/null @@ -1 +0,0 @@ -nixos/hardware-configuration.nix diff --git a/flake.lock b/flake.lock index 98cac47..ad750ca 100644 --- a/flake.lock +++ b/flake.lock @@ -1,5 +1,20 @@ { "nodes": { + "hardware": { + "locked": { + "lastModified": 1684899633, + "narHash": "sha256-NtwerXX8UFsoNy6k+DukJMriWtEjQtMU/Urbff2O2Dg=", + "owner": "nixos", + "repo": "nixos-hardware", + "rev": "4cc688ee711159b9bcb5a367be44007934e1a49d", + "type": "github" + }, + "original": { + "owner": "nixos", + "repo": "nixos-hardware", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -39,6 +54,7 @@ }, "root": { "inputs": { + "hardware": "hardware", "home-manager": "home-manager", "nixpkgs": "nixpkgs" } diff --git a/flake.nix b/flake.nix index 07f5640..cc16fef 100644 --- a/flake.nix +++ b/flake.nix @@ -10,7 +10,7 @@ home-manager.inputs.nixpkgs.follows = "nixpkgs"; # TODO_: Add any other flake you might need - # hardware.url = "github:nixos/nixos-hardware"; + hardware.url = "github:nixos/nixos-hardware"; # Shameless plug: looking for a way to nixify your themes and make # everything match nicely? Try nix-colors! diff --git a/nixos/configuration.nix b/nixos/configuration.nix index a5fc165..69ce71c 100644 --- a/nixos/configuration.nix +++ b/nixos/configuration.nix @@ -6,8 +6,8 @@ # You can import other NixOS modules here imports = [ # If you want to use modules from other flakes (such as nixos-hardware): - # inputs.hardware.nixosModules.common-cpu-amd - # inputs.hardware.nixosModules.common-gpu-nvidia + inputs.hardware.nixosModules.common-cpu-amd + inputs.hardware.nixosModules.common-gpu-nvidia # You can also split up your configuration and import pieces of it here: # ./users.nix @@ -59,10 +59,9 @@ }; # TODO_: This is just an example, be sure to use whatever bootloader you prefer - boot.loader.systemd-boot = { - enable = true; - efi.canTouchEfiVariables = true; - }; + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + # Setup keyfile boot.initrd.secrets = { diff --git a/nixos/hardware-configuration.nix b/nixos/hardware-configuration.nix new file mode 100644 index 0000000..5bde617 --- /dev/null +++ b/nixos/hardware-configuration.nix @@ -0,0 +1,39 @@ +# 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" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/a0ce5ff7-5e7c-4ef3-ae98-a91f04969a36"; + fsType = "ext4"; + }; + + boot.initrd.luks.devices."luks-2a137f62-de59-4560-afc6-129f13ee6c16".device = "/dev/disk/by-uuid/2a137f62-de59-4560-afc6-129f13ee6c16"; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/61EC-610B"; + fsType = "vfat"; + }; + + 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..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}