diff --git a/generated/all-maintainers.nix b/generated/all-maintainers.nix index 9c9269cb..d7720132 100644 --- a/generated/all-maintainers.nix +++ b/generated/all-maintainers.nix @@ -211,6 +211,12 @@ githubId = 45952970; name = "repparw"; }; + skiletro = { + email = "git@skilet.ro"; + github = "skiletro"; + githubId = 19377854; + name = "jamie"; + }; skoove = { email = "zie@sturges.com.au"; github = "skoove"; diff --git a/modules/limine/meta.nix b/modules/limine/meta.nix new file mode 100644 index 00000000..883e7d2f --- /dev/null +++ b/modules/limine/meta.nix @@ -0,0 +1,6 @@ +{ lib, ... }: +{ + name = "Limine"; + homepage = "https://limine-bootloader.org"; + maintainers = [ lib.maintainers.skiletro ]; +} diff --git a/modules/limine/nixos.nix b/modules/limine/nixos.nix new file mode 100644 index 00000000..d352fd85 --- /dev/null +++ b/modules/limine/nixos.nix @@ -0,0 +1,55 @@ +{ + mkTarget, + config, + lib, + ... +}: +mkTarget { + name = "limine"; + humanName = "Limine"; + + extraOptions.useWallpaper = config.lib.stylix.mkEnableWallpaper "Limine" true; + + configElements = [ + ( + { colors }: + { + boot.loader.limine.style = with colors; { + graphicalTerminal = { + palette = "${base05};${base08};${base0B};${base0A};${base0D};${base0E};${base0C};${base00}"; + brightPalette = "${base00};${base08};${base0B};${base0A};${base0D};${base0E};${base0C};${base05}"; + background = base00; + foreground = base05; + brightBackground = base05; + brightForeground = base0A; + }; + backdrop = base00; + }; + } + ) + ( + { cfg, image }: + { + boot.loader.limine.style.wallpapers = lib.mkIf cfg.useWallpaper [ + image + ]; + } + ) + ( + { imageScalingMode }: + { + # Stylix supports more scaling modes than limine supports. + boot.loader.limine.style.wallpaperStyle = + { + "stretch" = "stretched"; + "fill" = "stretched"; + "fit" = "stretched"; + "center" = "centered"; + "tile" = "tiled"; + inherit null; + } + .${imageScalingMode}; + } + ) + ]; +} diff --git a/stylix/maintainers.nix b/stylix/maintainers.nix index b2170385..908ab357 100644 --- a/stylix/maintainers.nix +++ b/stylix/maintainers.nix @@ -53,6 +53,12 @@ github = "osipog"; githubId = 87434959; }; + skiletro = { + email = "git@skilet.ro"; + name = "jamie"; + github = "skiletro"; + githubId = 19377854; + }; skoove = { email = "zie@sturges.com.au"; name = "Zie Sturges";