blob: 428d7ead541d42732cdc403cccd4e2a55c206cac (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
{ config, lib, pkgs, ... }:
let
cfg = config.sys.core;
in
{
imports = [
./audio.nix
./bootloader.nix
./drivers.nix
./fonts.nix
./greet.nix
./home-manager.nix
./localization.nix
./memory.nix
./networking.nix
./power.nix
./security.nix
./storage.nix
./users.nix
];
options.sys.core = {
allowUnfree.enable = lib.mkEnableOption "unfree software";
flatpak.enable = lib.mkEnableOption "Flatpak support";
hardwareTools = {
enable = lib.mkEnableOption "peripheral and thermal tools";
};
};
config = lib.mkMerge [
(lib.mkIf cfg.allowUnfree.enable {
nixpkgs.config.allowUnfree = true;
})
(lib.mkIf cfg.flatpak.enable {
services.flatpak.enable = true;
})
(lib.mkIf cfg.hardwareTools.enable {
programs.coolercontrol.enable = true;
environment.systemPackages = [ pkgs.rivalcfg ];
})
];
}
|