49 lines
790 B
Nix
49 lines
790 B
Nix
{
|
|
config,
|
|
marleylib,
|
|
lib,
|
|
...
|
|
}: let
|
|
cfg = config.marleycfg.profiles;
|
|
|
|
inherit (marleylib.module) enabled;
|
|
in {
|
|
#
|
|
### Universal ###
|
|
marleyos =
|
|
{
|
|
programs = {
|
|
fish = enabled;
|
|
nh = enabled;
|
|
};
|
|
|
|
services = {
|
|
docker = enabled;
|
|
openssh = enabled; # needed for agenix
|
|
};
|
|
}
|
|
#
|
|
#
|
|
### Graphical Desktop Profile ###
|
|
// (lib.optionalAttrs cfg.desktop {
|
|
mounts.babeshare = enabled;
|
|
|
|
shell = {
|
|
ly = enabled;
|
|
niri = enabled;
|
|
};
|
|
|
|
services = {
|
|
mopidy = enabled;
|
|
protonmail-bridge = enabled;
|
|
};
|
|
})
|
|
#
|
|
#
|
|
### Server Profile ###
|
|
// (lib.optionalAttrs cfg.server {
|
|
services = {
|
|
prometheus = enabled;
|
|
};
|
|
});
|
|
}
|