2022-08-13 20:59:05 +00:00
|
|
|
{
|
2022-11-20 22:28:23 +00:00
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
...
|
|
|
|
}:
|
2022-08-14 13:11:01 +00:00
|
|
|
with lib; let
|
2022-08-13 20:59:05 +00:00
|
|
|
cfg = config.pub-solar.core;
|
2022-11-20 22:28:23 +00:00
|
|
|
in {
|
2022-08-13 20:59:05 +00:00
|
|
|
imports = [
|
|
|
|
./boot.nix
|
2022-08-14 18:09:38 +00:00
|
|
|
./hibernation.nix
|
2022-08-13 20:59:05 +00:00
|
|
|
./fonts.nix
|
|
|
|
./i18n.nix
|
|
|
|
./networking.nix
|
|
|
|
./nix.nix
|
|
|
|
./packages.nix
|
|
|
|
./services.nix
|
|
|
|
];
|
|
|
|
|
|
|
|
options.pub-solar.core = {
|
2022-08-14 13:11:01 +00:00
|
|
|
lite = mkOption {
|
2022-08-13 20:59:05 +00:00
|
|
|
description = ''
|
2022-08-14 13:11:01 +00:00
|
|
|
Enable a lite edition of core with less default modules and a reduced package set.
|
2022-08-13 20:59:05 +00:00
|
|
|
'';
|
|
|
|
default = false;
|
|
|
|
type = types.bool;
|
|
|
|
};
|
|
|
|
};
|
2022-08-14 13:54:19 +00:00
|
|
|
|
|
|
|
config = {
|
|
|
|
pub-solar = {
|
2022-10-02 21:59:08 +00:00
|
|
|
audio.enable = mkIf (!cfg.lite) (mkDefault true);
|
|
|
|
crypto.enable = mkIf (!cfg.lite) (mkDefault true);
|
|
|
|
devops.enable = mkIf (!cfg.lite) (mkDefault true);
|
2022-08-14 15:17:35 +00:00
|
|
|
|
|
|
|
terminal-life = {
|
2022-10-02 21:59:08 +00:00
|
|
|
enable = mkDefault true;
|
2022-08-14 15:17:35 +00:00
|
|
|
lite = cfg.lite;
|
|
|
|
};
|
2022-08-14 13:54:19 +00:00
|
|
|
};
|
|
|
|
};
|
2022-08-13 20:59:05 +00:00
|
|
|
}
|