From 454d2b93411feeb9a41063bf4d107824eb4ee106 Mon Sep 17 00:00:00 2001 From: Bart van der Braak Date: Wed, 22 Jan 2025 11:05:14 +0100 Subject: [PATCH] Add custom bootloader --- nixos/flake.nix | 101 +++++------------------------------ nixos/modules/bootloader.nix | 37 +++++++++---- 2 files changed, 40 insertions(+), 98 deletions(-) diff --git a/nixos/flake.nix b/nixos/flake.nix index 581c13b..36d1fb8 100644 --- a/nixos/flake.nix +++ b/nixos/flake.nix @@ -16,96 +16,23 @@ ./users.nix ./packages.nix ./services.nix + ./modules/bootloader.nix ]; }; + qemu = nixpkgs.lib.nixosSystem { + specialArgs = { inherit inputs; }; + modules = [ + ./hardware/qemu.nix - # tongfang = nixpkgs.lib.nixosSystem { - # specialArgs = { inherit inputs; }; - # modules = [ - # ./hardware/tongfang.nix - - # ./modules/kde.nix - # ./modules/battery.nix - # ./modules/bluetooth.nix - # ./modules/bootloader.nix - # ./modules/configuration.nix - # ./modules/creative-tools.nix - # ./modules/devops-tools.nix - # ./modules/display-manager.nix - # ./modules/environment-variables.nix - # ./modules/firewall.nix - # ./modules/fonts.nix - # ./modules/gc.nix - # ./modules/greeter.nix - # ./modules/info-fetchers.nix - # ./modules/internationalisation.nix - # ./modules/keyboard.nix - # ./modules/linux-kernel.nix - # ./modules/lsp.nix - # ./modules/networking.nix - # ./modules/nix-settings.nix - # ./modules/nixpkgs.nix - # ./modules/open-ssh.nix - # ./modules/printing.nix - # ./modules/programming-languages.nix - # ./modules/screen.nix - # ./modules/services.nix - # ./modules/sound.nix - # ./modules/terminal-utils.nix - # ./modules/theme.nix - # ./modules/time.nix - # ./modules/usb.nix - # ./modules/users.nix - # ./modules/utils.nix - # ./modules/virtualisation.nix - # ./modules/vpn.nix - # ./modules/work.nix - # ]; - # }; - - # qemu = nixpkgs.lib.nixosSystem { - # specialArgs = { inherit inputs; }; - # modules = [ - # ./hardware/qemu.nix - - # ./modules/kde.nix - # # ./modules/battery.nix - # # ./modules/bluetooth.nix - # # ./modules/bootloader.nix - # ./modules/configuration.nix - # # ./modules/creative-tools.nix - # # ./modules/devops-tools.nix - # ./modules/display-manager.nix - # # ./modules/environment-variables.nix - # # ./modules/firewall.nix - # # ./modules/fonts.nix - # # ./modules/gc.nix - # ./modules/greeter.nix - # # ./modules/info-fetchers.nix - # # ./modules/internationalisation.nix - # # ./modules/keyboard.nix - # # ./modules/linux-kernel.nix - # # ./modules/lsp.nix - # ./modules/networking.nix - # ./modules/nix-settings.nix - # # ./modules/nixpkgs.nix - # # ./modules/open-ssh.nix - # # ./modules/printing.nix - # # ./modules/programming-languages.nix - # # ./modules/screen.nix - # # ./modules/services.nix - # # ./modules/sound.nix - # # ./modules/terminal-utils.nix - # # ./modules/theme.nix - # # ./modules/time.nix - # # ./modules/usb.nix - # ./modules/users.nix - # # ./modules/utils.nix - # # ./modules/virtualisation.nix - # # ./modules/vpn.nix - # # ./modules/work.nix - # ]; - # }; + ./modules/kde.nix + ./modules/configuration.nix + ./modules/display-manager.nix + ./modules/greeter.nix + ./modules/networking.nix + ./modules/nix-settings.nix + ./modules/users.nix + ]; + }; }; }; } diff --git a/nixos/modules/bootloader.nix b/nixos/modules/bootloader.nix index cab20c1..c86f6c6 100644 --- a/nixos/modules/bootloader.nix +++ b/nixos/modules/bootloader.nix @@ -2,16 +2,31 @@ { # Bootloader options - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.loader.timeout = 2; - boot.initrd.enable = true; - boot.initrd.systemd.enable = true; - boot.consoleLogLevel = 3; - boot.plymouth = { - enable = true; - font = "${pkgs.jetbrains-mono}/share/fonts/truetype/JetBrainsMono-Regular.ttf"; - themePackages = [ pkgs.nixos-bgrt-plymouth ]; - theme = "nixos-bgrt"; + boot = { + # Enable Plymouth + plymouth = { + enable = true; + font = "${pkgs.jetbrains-mono}/share/fonts/truetype/JetBrainsMono-Regular.ttf"; + themePackages = with pkgs; [ + (adi1090x-plymouth-themes.override { + selected_themes = [ "motion" ]; + }) + ]; + theme = "motion"; + }; + + # Enable "Silent Boot" + consoleLogLevel = 0; + initrd.verbose = false; + kernelParams = [ + "quiet" + "splash" + "boot.shell_on_fail" + "loglevel=3" + "rd.systemd.show_status=false" + "rd.udev.log_level=3" + "udev.log_priority=3" + ]; + loader.timeout = 0; }; } \ No newline at end of file