1 Commits

Author SHA1 Message Date
d2e35626d2 initial attempt 2025-02-10 09:54:57 -05:00
2 changed files with 29 additions and 0 deletions

View File

@@ -1,6 +1,8 @@
{ ... }:
{
imports = [
./program_list.nix
./audio
./browsers
./development

View File

@@ -0,0 +1,27 @@
{ config, pkgs, lib, ...}:
let
addProgram = name: requiredCapabilities: extraConfig: {
options.custom.programs_list.${name} = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable ${name}";
};
config = lib.mkIf
(
(config.custom.programs.${name} or false)
&& (builtins.all (capability: config.capabilities.${capability}.available or false) requiredCapabilities)
)
(
{ environment.systemPackages = [ pkgs.${name} ]; }
// extraConfig
);
};
firefox = addProgram "firefox" [ "display" ];
in
{
imports = [
firefox
];
}