2015-08-07 10:10:02 +00:00
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
|
|
|
|
# sda: bootloader grub2
|
2016-06-12 17:43:50 +00:00
|
|
|
# sda1: boot ext4 (label nixboot) - must be unlocked on boot if required:
|
|
|
|
# boot.initrd.luks.devices = [ { name = "luksroot"; device = "/dev/sda2"; allowDiscards=true; }];
|
2015-08-07 10:10:02 +00:00
|
|
|
# sda2: cryptoluks -> ext4
|
2017-08-16 10:16:39 +00:00
|
|
|
|
|
|
|
# fdisk /dev/sda
|
|
|
|
# boot 500M
|
|
|
|
# rest rest
|
|
|
|
# cryptsetup luksFormat /dev/sda2
|
2019-05-08 11:58:51 +00:00
|
|
|
# mkfs.ext4 -L nixboot /dev/sda1
|
2015-08-07 10:10:02 +00:00
|
|
|
{
|
|
|
|
boot = {
|
2015-11-06 10:01:49 +00:00
|
|
|
loader.grub.enable = true;
|
|
|
|
loader.grub.version = 2;
|
2016-06-12 17:43:50 +00:00
|
|
|
loader.grub.device = lib.mkDefault "/dev/sda";
|
2015-08-07 10:10:02 +00:00
|
|
|
|
|
|
|
initrd.luks.cryptoModules = ["aes" "sha512" "sha1" "xts" ];
|
|
|
|
initrd.availableKernelModules = ["xhci_hcd" "ehci_pci" "ahci" "usb_storage" ];
|
|
|
|
};
|
|
|
|
fileSystems = {
|
|
|
|
"/" = {
|
|
|
|
device = "/dev/mapper/luksroot";
|
|
|
|
fsType = "ext4";
|
2016-04-01 12:28:16 +00:00
|
|
|
options = [ "defaults" "discard" ];
|
2015-08-07 10:10:02 +00:00
|
|
|
};
|
|
|
|
"/boot" = {
|
|
|
|
device = "/dev/disk/by-label/nixboot";
|
|
|
|
fsType = "ext4";
|
2016-04-01 12:28:16 +00:00
|
|
|
options = [ "defaults" "discard" ];
|
2015-08-07 10:10:02 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|