enable lanzaboote

This commit is contained in:
nyxerinys 2026-10-02 18:33:05 -05:00
parent 31c4db1e15
commit d223de2604
5 changed files with 65 additions and 39 deletions

View file

@ -38,7 +38,10 @@
url = "git+ssh://git@git.nyxerinys.dev:222/nyxerinys/nix-secrets";
flake = false;
};
lanzaboote = {
url = "github:nix-community/lanzaboote/v1.2.0";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { self, nixpkgs, nix-darwin, home-manager, ... } @ inputs:

View file

@ -0,0 +1,16 @@
{ ... }:
{
services.getty = {
autologinUser = "nyxerinys";
autologinOnce = true;
};
systemd.defaultUnit = "graphical.target";
programs.zsh.loginShellInit = ''
if [[ "$TTY" == "/dev/tty1" ]] && uwsm check may-start; then
exec uwsm start hyprland-uwsm.desktop
fi
'';
}

View file

@ -1,34 +1,53 @@
{ pkgs, lib, inputs, ... }:
{
boot.initrd = {
supportedFilesystems = [ "ext4" "zfs" ];
availableKernelModules = [ "hid_apple" ];
systemd = {
imports = [
lanzaboote.nixosModules.lanzaboote
];
boot = {
#Bootloader
environment.systemPackages = [ pkgs.sbctl ];
lanzaboote = {
enable = true;
fido2.enable = true;
emergencyAccess = true;
mounts = [
{
what = "/dev/mapper/zfs-keys";
where = "/keys";
type = "ext4";
options = "ro";
}
];
pkiBundle = "/var/lib/sbctl";
autoGenerateKeys.enable = true;
autoEnrollKeys.enable = true;
};
luks.fido2Support = false;
loader.efi.canTouchEfiVariables = true;
loader.systemd-boot.enable = lib.mkForce false;
# Luks Decryption for ZFS
initrd = {
supportedFilesystems = [ "ext4" "zfs" ];
availableKernelModules = [ "hid_apple" ];
systemd = {
enable = true;
fido2.enable = true;
emergencyAccess = true;
mounts = [
{
what = "/dev/mapper/zfs-keys";
where = "/keys";
type = "ext4";
options = "ro";
}
];
};
luks.fido2Support = false;
luks.devices."zfs-keys" = {
device = "/dev/disk/by-id/nvme-CT1000P2SSD8_2138E5D5DA5A-part2";
crypttabExtraOpts = [ "fido2-device=auto" ];
};
systemd.services."zfs-import-nix-root" = {
wants = [ "keys.mount" ];
after = [ "keys.mount" ];
};
luks.devices."zfs-keys" = {
device = "/dev/disk/by-id/nvme-CT1000P2SSD8_2138E5D5DA5A-part2";
crypttabExtraOpts = [ "fido2-device=auto" ];
};
systemd.services."zfs-import-nix-root" = {
wants = [ "keys.mount" ];
after = [ "keys.mount" ];
};
};
systemd.services."zfs-import-nix-main" = {

View file

@ -4,6 +4,7 @@
imports = [
./boot.nix
./hardware.nix
./autologin.nix
];
networking.hostName = "apollo";
@ -19,17 +20,4 @@
environment.systemPackages = with pkgs; [
kitty
];
services.getty = {
autologinUser = "nyxerinys";
autologinOnce = true;
};
systemd.defaultUnit = "graphical.target";
programs.zsh.loginShellInit = ''
if [[ "$TTY" == "/dev/tty1" ]] && uwsm check may-start; then
exec uwsm start hyprland-uwsm.desktop
fi
'';
}

View file

@ -17,7 +17,7 @@
devices = ["nodev"];
};
};
kernelParams = lib.mkDefault [ "ipv6.disable=1" ];
kernelParams = [ "ipv6.disable=1" ];
};
# system.autoUpgrade = mkDefault {