diff options
author | Silvan Mosberger <infinisil@icloud.com> | 2018-08-04 23:21:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-04 23:21:31 +0200 |
commit | 31dda068dbfbe1cf0bf4635f77cf90783d142c05 (patch) | |
tree | 7a3632098a35268a8d1ae55bf50b7d7912067d24 /nixos/modules/system/boot/loader | |
parent | 0bc6225bb4c5993a721bbf4df1983618d1fc618a (diff) | |
parent | e08148041f4487d364d2701f9107c2ccff620132 (diff) | |
download | nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar.gz nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar.bz2 nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar.lz nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar.xz nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.tar.zst nixlib-31dda068dbfbe1cf0bf4635f77cf90783d142c05.zip |
Merge pull request #42877 from Infinisil/systemd-boot/consoleMode
nixos/systemd-boot: Add consoleMode option
Diffstat (limited to 'nixos/modules/system/boot/loader')
-rw-r--r-- | nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py | 1 | ||||
-rw-r--r-- | nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix | 34 |
2 files changed, 35 insertions, 0 deletions
diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py index 3333569c36be..1dc888c58227 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot-builder.py @@ -43,6 +43,7 @@ def write_loader_conf(profile, generation): f.write("default nixos-generation-%d\n" % (generation)) if not @editor@: f.write("editor 0"); + f.write("console-mode @consoleMode@\n"); os.rename("@efiSysMountPoint@/loader/loader.conf.tmp", "@efiSysMountPoint@/loader/loader.conf") def profile_path(profile, generation, name): diff --git a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix index a5a88a99be8f..feed863efd66 100644 --- a/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix +++ b/nixos/modules/system/boot/loader/systemd-boot/systemd-boot.nix @@ -22,6 +22,8 @@ let editor = if cfg.editor then "True" else "False"; + inherit (cfg) consoleMode; + inherit (efi) efiSysMountPoint canTouchEfiVariables; }; in { @@ -52,6 +54,38 @@ in { compatibility. ''; }; + + consoleMode = mkOption { + default = "keep"; + + type = types.enum [ "0" "1" "2" "auto" "max" "keep" ]; + + description = '' + The resolution of the console. The following values are valid: + </para> + <para> + <itemizedlist> + <listitem><para> + <literal>"0"</literal>: Standard UEFI 80x25 mode + </para></listitem> + <listitem><para> + <literal>"1"</literal>: 80x50 mode, not supported by all devices + </para></listitem> + <listitem><para> + <literal>"2"</literal>: The first non-standard mode provided by the device firmware, if any + </para></listitem> + <listitem><para> + <literal>"auto"</literal>: Pick a suitable mode automatically using heuristics + </para></listitem> + <listitem><para> + <literal>"max"</literal>: Pick the highest-numbered available mode + </para></listitem> + <listitem><para> + <literal>"keep"</literal>: Keep the mode selected by firmware (the default) + </para></listitem> + </itemizedlist> + ''; + }; }; config = mkIf cfg.enable { |