From 4ef0d277edea745f24c5ca71e4806d5bf243c50b Mon Sep 17 00:00:00 2001 From: GaspardCulis Date: Fri, 20 Sep 2024 11:36:09 +0000 Subject: [PATCH] hosts -> Zephyrus: Added disko config --- hosts/Zephyrus/disko-config.nix | 72 +++++++++++++++++++++++ hosts/Zephyrus/hardware-configuration.nix | 19 +++--- 2 files changed, 84 insertions(+), 7 deletions(-) create mode 100644 hosts/Zephyrus/disko-config.nix diff --git a/hosts/Zephyrus/disko-config.nix b/hosts/Zephyrus/disko-config.nix new file mode 100644 index 0000000..a0e63a3 --- /dev/null +++ b/hosts/Zephyrus/disko-config.nix @@ -0,0 +1,72 @@ +{ + disko.devices = { + disk = { + my-disk = { + device = "/dev/nvme0n1"; + type = "disk"; + content = { + type = "gpt"; + partitions = { + ESP = { + type = "EF00"; + size = "500M"; + content = { + type = "filesystem"; + format = "vfat"; + mountpoint = "/boot"; + }; + }; + luks = { + size = "100%"; + content = { + type = "luks"; + name = "crypted"; + extraOpenArgs = []; + settings = { + # if you want to use the key for interactive login be sure there is no trailing newline + # for example use `echo -n "password" > /tmp/secret.key` + keyFile = "/tmp/secret.key"; + allowDiscards = true; + }; + additionalKeyFiles = []; + content = { + type = "lvm_pv"; + vg = "pool"; + }; + }; + }; + }; + }; + }; + }; + lvm_vg = { + pool = { + type = "lvm_vg"; + lvs = { + root = { + size = "100M"; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/"; + mountOptions = [ + "defaults" + ]; + }; + }; + home = { + size = "10M"; + content = { + type = "filesystem"; + format = "ext4"; + mountpoint = "/home"; + }; + }; + raw = { + size = "10M"; + }; + }; + }; + }; + }; +} diff --git a/hosts/Zephyrus/hardware-configuration.nix b/hosts/Zephyrus/hardware-configuration.nix index bd8f4c7..4e0a19f 100644 --- a/hosts/Zephyrus/hardware-configuration.nix +++ b/hosts/Zephyrus/hardware-configuration.nix @@ -1,17 +1,22 @@ # 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 = [ + config, + lib, + pkgs, + modulesPath, + ... +}: { + imports = [ (modulesPath + "/installer/scan/not-detected.nix") + ./disko-config.nix ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "usbhid" "sdhci_pci" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-amd" ]; - boot.extraModulePackages = [ ]; + boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "usbhid" "sdhci_pci"]; + boot.initrd.kernelModules = []; + boot.kernelModules = ["kvm-amd"]; + boot.extraModulePackages = []; # 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