{ config, inputs, lib, pkgs, ... }: let inherit (lib.modules) mkIf; inherit (lib.options) mkEnableOption; cfg = config.modules.system.boot.lanzaboote; in { options.modules.system.boot.lanzaboote.enable = mkEnableOption "Lanzaboote"; imports = [ inputs.lanzaboote.nixosModules.lanzaboote ]; config = mkIf cfg.enable { boot = { lanzaboote = { enable = true; pkiBundle = "/var/lib/sbctl"; }; # Lanzaboote currently replaces the systemd-boot module. # This setting is usually set to true in configuration.nix # generated at installation time. So we force it to false # for now. loader.systemd-boot.enable = lib.mkForce false; }; environment.systemPackages = [pkgs.sbctl]; }; }