refactor: remove disko dependencies #492

Open
lbailly wants to merge 2 commits from disko-remove into main
4 changed files with 85 additions and 139 deletions

View file

@ -1,12 +1,70 @@
# 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.
{ modulesPath, sources, ... }:
{ modulesPath, ... }:
{
imports = [
"${modulesPath}/profiles/qemu-guest.nix"
"${sources.disko}/module.nix"
./disko.nix
];
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];
boot = {
initrd = {
availableKernelModules = [
"ata_piix"
"uhci_hcd"
"ehci_pci"
"virtio_pci"
"ahci"
"virtio_blk"
];
kernelModules = [ ];
luks.devices."mainfs" = {
device = "/dev/disk/by-uuid/0de6ce5a-c5b6-41e3-96d0-c0381e06f94e";
keyFile = "/dev/zero";
keyFileSize = 1;
};
};
kernelModules = [ "kvm-intel" ];
extraModulePackages = [ ];
};
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/cf7f8271-c1c7-46d9-b960-281d9271c576";
fsType = "btrfs";
options = [ "subvol=rootfs" ];
};
"/nix" = {
device = "/dev/disk/by-uuid/cf7f8271-c1c7-46d9-b960-281d9271c576";
fsType = "btrfs";
options = [ "subvol=nix" ];
};
"/var/log" = {
device = "/dev/disk/by-uuid/cf7f8271-c1c7-46d9-b960-281d9271c576";
fsType = "btrfs";
options = [ "subvol=var-log" ];
};
"/mnt/btrfs-root" = {
device = "/dev/disk/by-uuid/cf7f8271-c1c7-46d9-b960-281d9271c576";
fsType = "btrfs";
};
"/home" = {
device = "/dev/disk/by-uuid/cf7f8271-c1c7-46d9-b960-281d9271c576";
fsType = "btrfs";
options = [ "subvol=home" ];
};
"/boot" = {
device = "/dev/disk/by-uuid/2A58-A5B0";
fsType = "vfat";
options = [
"fmask=0022"
"dmask=0022"
];
};
};
swapDevices = [ { device = "/dev/disk/by-uuid/9c2f1161-dc30-4bda-91aa-859bb4ec1697"; } ];
}

View file

@ -1,86 +0,0 @@
# SPDX-FileCopyrightText: 2024 Maurice Debray <maurice.debray@dgnum.eu>
#
# SPDX-License-Identifier: EUPL-1.2
_:
let
luksName = "mainfs";
in
{
boot.initrd.luks.devices.${luksName} = {
keyFile = "/dev/zero";
keyFileSize = 1;
};
disko.devices = {
disk = {
vdb = {
device = "/dev/vdb";
type = "disk";
content = {
type = "gpt";
partitions = {
ESP = {
start = "1MiB";
label = "ESP";
end = "512MiB";
type = "EF00";
priority = 1;
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
};
};
luks = {
start = "512MiB";
end = "-4GiB";
content = rec {
type = "luks";
name = luksName;
extraOpenArgs = [ "--keyfile-size=1" ];
extraFormatArgs = extraOpenArgs;
settings.keyFile = "/dev/zero";
content = {
type = "btrfs";
mountpoint = "/mnt/btrfs-root";
subvolumes = {
"/rootfs" = {
mountpoint = "/";
mountOptions = [ "compress=zstd" ];
};
"/home" = {
mountOptions = [ "compress=zstd" ];
mountpoint = "/home";
};
"/var-log" = {
mountOptions = [ "compress=zstd" ];
mountpoint = "/var/log";
};
"/nix" = {
mountOptions = [
"noatime"
"compress=zstd"
];
mountpoint = "/nix";
};
};
};
};
};
swap = {
label = "swap";
start = "-4GiB";
end = "100%";
priority = 3;
content = {
type = "swap";
randomEncryption = true;
};
};
};
};
};
};
};
}

View file

@ -1,17 +1,10 @@
# SPDX-FileCopyrightText: 2024 Tom Hubrecht <tom.hubrecht@dgnum.eu>
#
# SPDX-License-Identifier: EUPL-1.2
# 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.
{ modulesPath, sources, ... }:
{ modulesPath, ... }:
{
imports = [
(modulesPath + "/profiles/qemu-guest.nix")
(sources.disko + "/module.nix")
./disko.nix
];
boot = {
@ -19,8 +12,8 @@
availableKernelModules = [
"ata_piix"
"uhci_hcd"
"ehci_pci"
"virtio_pci"
"virtio_scsi"
"sr_mod"
"virtio_blk"
];
@ -30,4 +23,22 @@
kernelModules = [ "kvm-intel" ];
extraModulePackages = [ ];
};
fileSystems = {
"/" = {
device = "/dev/disk/by-uuid/179ba756-b0f0-42ec-b0b5-ab3daca97d3d";
fsType = "ext4";
};
"/boot" = {
device = "/dev/disk/by-uuid/0DB8-F2E0";
fsType = "vfat";
options = [
"fmask=0077"
"dmask=0077"
];
};
};
swapDevices = [ ];
}

View file

@ -1,37 +0,0 @@
# SPDX-FileCopyrightText: 2024 Maurice Debray <maurice.debray@dgnum.eu>
#
# SPDX-License-Identifier: EUPL-1.2
_: {
disko.devices = {
disk = {
main = {
device = "/dev/sda";
type = "disk";
content = {
type = "gpt";
partitions = {
ESP = {
type = "EF00";
size = "1G";
content = {
type = "filesystem";
format = "vfat";
mountpoint = "/boot";
mountOptions = [ "umask=0077" ];
};
};
root = {
size = "100%";
content = {
type = "filesystem";
format = "ext4";
mountpoint = "/";
};
};
};
};
};
};
};
}