nixfiles: add meta option
contains metadata about enabled modules (there's no "official" way to check if wayland is enabled)
This commit is contained in:
parent
68cad3482e
commit
33ee7046ef
@ -13,18 +13,24 @@ in
|
|||||||
];
|
];
|
||||||
config = {};
|
config = {};
|
||||||
options.nixfiles = {
|
options.nixfiles = {
|
||||||
standalone = lib.mkOption {
|
meta.standalone = lib.mkOption {
|
||||||
default = isStandalone;
|
default = isStandalone;
|
||||||
description = "Whether or not the home-manager installation is standalone (standalone installations don't have access to osConfig).";
|
description = "Whether or not the home-manager installation is standalone (standalone installations don't have access to osConfig).";
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
readOnly = true;
|
readOnly = true;
|
||||||
internal = true;
|
internal = true;
|
||||||
};
|
};
|
||||||
graphical = lib.mkOption {
|
meta.graphical = lib.mkOption {
|
||||||
description = "Whether to enable graphical home-manager applications";
|
description = "Whether to enable graphical home-manager applications";
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
default = (osConfig ? services && osConfig.services.xserver.enable);
|
default = (osConfig ? services && osConfig.services.xserver.enable);
|
||||||
example = true;
|
example = true;
|
||||||
};
|
};
|
||||||
|
meta.wayland = lib.mkOption {
|
||||||
|
description = "Whether to prefer wayland packages and configuration";
|
||||||
|
type = lib.types.bool;
|
||||||
|
default = (lib.hasAttrByPath [ "nixfiles" "meta" "wayland" ] osConfig) && osConfig.nixfiles.meta.wayland;
|
||||||
|
example = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -14,5 +14,11 @@ in
|
|||||||
];
|
];
|
||||||
config = {};
|
config = {};
|
||||||
options.nixfiles = {
|
options.nixfiles = {
|
||||||
|
meta.wayland = lib.mkOption {
|
||||||
|
description = "Whether to prefer wayland applications and configuration";
|
||||||
|
default = false;
|
||||||
|
example = true;
|
||||||
|
type = lib.types.bool;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ in
|
|||||||
desktop.enable = true;
|
desktop.enable = true;
|
||||||
wm.enable = true;
|
wm.enable = true;
|
||||||
};
|
};
|
||||||
|
nixfiles.meta.wayland = true;
|
||||||
|
|
||||||
services.xserver.displayManager.sddm.enable = true;
|
services.xserver.displayManager.sddm.enable = true;
|
||||||
|
|
||||||
|
@ -21,6 +21,7 @@ in
|
|||||||
services.xserver.desktopManager.plasma5.enable = true;
|
services.xserver.desktopManager.plasma5.enable = true;
|
||||||
services.xserver.displayManager.defaultSession = "plasmawayland";
|
services.xserver.displayManager.defaultSession = "plasmawayland";
|
||||||
programs.kdeconnect.enable = mkDefault true;
|
programs.kdeconnect.enable = mkDefault true;
|
||||||
|
nixfiles.meta.wayland = true;
|
||||||
|
|
||||||
systemd.user = {
|
systemd.user = {
|
||||||
services.restart-xdg-desktop-portal-kde = {
|
services.restart-xdg-desktop-portal-kde = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user