flake: set options for both grub and systemd-boot
This commit is contained in:
parent
8a9d31be7d
commit
9e94d074ff
4 changed files with 49 additions and 25 deletions
|
@ -1,34 +1,54 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit (lib.modules) mkForce;
|
||||
inherit (lib.modules) mkIf;
|
||||
inherit (lib.options) mkEnableOption;
|
||||
cfg = config.modules.system.boot;
|
||||
in {
|
||||
boot = {
|
||||
initrd = {
|
||||
verbose = true;
|
||||
systemd.enable = true;
|
||||
};
|
||||
loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
systemd-boot = {
|
||||
enable = true;
|
||||
editor = mkForce false;
|
||||
configurationLimit = 5;
|
||||
options.modules.system.boot = {
|
||||
grub.enable = mkEnableOption "Grub, a bloated boot loader";
|
||||
systemd-boot.enable = mkEnableOption "Poetteringboot";
|
||||
};
|
||||
config = {
|
||||
assertions = [
|
||||
{
|
||||
assertion = cfg.systemd-boot.enable || cfg.grub.enable;
|
||||
message = "No bootloader is enabled.";
|
||||
}
|
||||
{
|
||||
assertion = cfg.systemd-boot.enable -> !cfg.grub.enable && cfg.grub.enable -> !cfg.systemd-boot.enable;
|
||||
message = "Please enable only ONE of systemd-boot or grub.";
|
||||
}
|
||||
];
|
||||
boot = {
|
||||
initrd = {
|
||||
verbose = true;
|
||||
systemd.enable = true;
|
||||
};
|
||||
grub = {
|
||||
loader = {
|
||||
efi.canTouchEfiVariables = true;
|
||||
systemd-boot = {
|
||||
enable = cfg.systemd-boot.enable;
|
||||
editor = mkForce false;
|
||||
configurationLimit = 5;
|
||||
};
|
||||
grub = {
|
||||
enable = cfg.grub.enable;
|
||||
efiSupport = true;
|
||||
device = "nodev";
|
||||
configurationLimit = 5;
|
||||
};
|
||||
};
|
||||
plymouth = {
|
||||
enable = false;
|
||||
efiSupport = true;
|
||||
device = "nodev";
|
||||
configurationLimit = 5;
|
||||
# font = "${pkgs.jetbrains-mono}/share/fonts/truetype/JetBrainsMono-Regular.ttf";
|
||||
themePackages = [pkgs.plymouth-matrix-theme];
|
||||
theme = "matrix";
|
||||
};
|
||||
};
|
||||
plymouth = {
|
||||
enable = false;
|
||||
# font = "${pkgs.jetbrains-mono}/share/fonts/truetype/JetBrainsMono-Regular.ttf";
|
||||
themePackages = [pkgs.plymouth-matrix-theme];
|
||||
theme = "matrix";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue