52 lines
1.2 KiB
Nix
52 lines
1.2 KiB
Nix
{ lib
|
|
, config
|
|
, system
|
|
, windows-theme
|
|
, ...
|
|
}:
|
|
{
|
|
options = {
|
|
nixp = {
|
|
enable = lib.mkEnableOption "enable XP configuration in MATE";
|
|
|
|
theme = {
|
|
plymouth.enable = lib.mkEnableOption "enable plymouth Windows XP theme";
|
|
grub.enable = lib.mkEnableOption "enable grub Windows XP theme";
|
|
};
|
|
};
|
|
};
|
|
|
|
config = lib.mkMerge [
|
|
(lib.mkIf config.nixp.enable {
|
|
|
|
nixp = {
|
|
theme = {
|
|
plymouth.enable = lib.mkDefault true;
|
|
grub.enable = lib.mkDefault true;
|
|
};
|
|
};
|
|
|
|
services = {
|
|
xserver.displayManager.lightdm.background = ../assets/wall.png;
|
|
};
|
|
|
|
environment.systemPackages = with windows-theme.packages.x86_64-linux; [
|
|
windows-xp-theme
|
|
windows-xp-icons
|
|
windows-xp-cursor
|
|
];
|
|
})
|
|
(lib.mkIf config.nixp.theme.plymouth.enable {
|
|
boot = {
|
|
plymouth = {
|
|
theme = "xp";
|
|
themePackages = [ windows-theme.packages.${system}.windows-xp-plymouth ];
|
|
};
|
|
};
|
|
})
|
|
(lib.mkIf config.nixp.theme.grub.enable {
|
|
boot.loader.grub.theme = windows-theme.packages.${system}.windows-xp-grub;
|
|
})
|
|
];
|
|
}
|