36 lines
796 B
Nix
36 lines
796 B
Nix
{
|
|
lib,
|
|
options,
|
|
...
|
|
}:
|
|
with lib;
|
|
{
|
|
options = {
|
|
custom.program = mkOption {
|
|
type = types.attrsOf (
|
|
types.submodule (
|
|
{ config, ... }:
|
|
{
|
|
options = {
|
|
name = mkOption {
|
|
type = types.string;
|
|
};
|
|
requirements = mkOption {
|
|
type = types.listOf (types.enum (import ./capabilities.nix));
|
|
default = [ "cli" ];
|
|
};
|
|
home-config = mkOption {
|
|
type = types.deferredModule;
|
|
};
|
|
system-config = mkOption {
|
|
# type = types.attrs;
|
|
type = types.deferredModule;
|
|
default = { };
|
|
};
|
|
};
|
|
}
|
|
)
|
|
);
|
|
};
|
|
};
|
|
}
|