Replaces CachyOS on the OS SSD (Kingston SA400, disko-managed). Dev-data disks (sdc ext4 /mnt/hdd_01, LVM vg_ssd /mnt/ssd_01) stay out of disko and are mounted as plain filesystems so they're never wiped. Desktop split into services/desktop/desktop-hyprland.nix (session: compositor, greeter, audio, portals) and desktop-apps.nix (things darman actually launches, including claude-code — allowlisted alongside the other unfree desktop apps).
43 lines
1.3 KiB
Nix
43 lines
1.3 KiB
Nix
{ ... }:
|
|
|
|
# Declarative OS-disk layout (disko). UEFI: GPT with an ESP + ext4 root.
|
|
# disko both PARTITIONS/FORMATS this disk and generates the NixOS
|
|
# `fileSystems.*` entries, so hardware-configuration.nix must NOT define
|
|
# fileSystems for "/" or "/boot".
|
|
#
|
|
# ⚠️ This disk is WIPED on install. This is the Kingston SA400 SSD that
|
|
# currently holds CachyOS (btrfs root+subvols on sdb2, ESP on sdb1).
|
|
# The dev-data disks (sdc ext4 /mnt/hdd_01, LVM vg_ssd /mnt/ssd_01) and the
|
|
# leftover ntfs disks (sda, sdf, nvme0n1) are NOT listed here — they are
|
|
# mounted as plain fileSystems in configuration.nix (or, for the ntfs
|
|
# disks, ignored entirely) so they are never touched.
|
|
{
|
|
disko.devices.disk.os = {
|
|
type = "disk";
|
|
device = "/dev/disk/by-id/ata-KINGSTON_SA400S37480G_50026B738072F6C6";
|
|
content = {
|
|
type = "gpt";
|
|
partitions = {
|
|
ESP = {
|
|
size = "512M";
|
|
type = "EF00";
|
|
content = {
|
|
type = "filesystem";
|
|
format = "vfat";
|
|
mountpoint = "/boot";
|
|
mountOptions = [ "umask=0077" ];
|
|
};
|
|
};
|
|
root = {
|
|
size = "100%";
|
|
content = {
|
|
type = "filesystem";
|
|
format = "ext4";
|
|
mountpoint = "/";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|