marleyos/modules/nixos/profiles.nix

47 lines
883 B
Nix

{
config,
marleylib,
lib,
...
}: let
cfg = config.marleycfg.profiles;
inherit (marleylib.module) enabled;
in {
marleyos = lib.mkMerge [
# Universal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
{
programs = {
nh = enabled;
};
services = {
docker = enabled;
};
}
#
#
# Graphical Desktop - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(lib.optionalAttrs cfg.desktop {
mounts.babeshare = enabled;
shell = {
ly = enabled;
niri = enabled;
};
services = {
mopidy = enabled;
protonmail-bridge = enabled;
};
})
#
#
# Server - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(lib.optionalAttrs cfg.server {
services = {
prometheus = enabled;
};
})
];
}