76 lines
1.9 KiB
Nix
76 lines
1.9 KiB
Nix
{ config, pkgs, lib, ... }:
|
|
|
|
with lib;
|
|
|
|
{
|
|
options.machine = {
|
|
confPath = mkOption {
|
|
type = types.path;
|
|
description = ''
|
|
Path to the machines configuration.nix
|
|
'';
|
|
};
|
|
allowUnfree = mkOption {
|
|
type = types.bool;
|
|
description = ''
|
|
Wether to allow the installation of unfree packages.
|
|
'';
|
|
};
|
|
pkgs = mkOption {
|
|
type = types.listOf types.string;
|
|
description = ''
|
|
The list of metapackages to be installed.
|
|
'';
|
|
};
|
|
services = mkOption {
|
|
type = types.listOf types.string;
|
|
description = ''
|
|
List of services to be enabled.
|
|
'';
|
|
};
|
|
conffiles = mkOption {
|
|
type = types.listOf types.string;
|
|
description = ''
|
|
List of configuration files to be enabled.
|
|
'';
|
|
};
|
|
hostName = mkOption {
|
|
type = types.str;
|
|
description = ''
|
|
The Machines HostName
|
|
'';
|
|
};
|
|
firewall = {
|
|
allowPing = mkOption {
|
|
type = types.bool;
|
|
description = ''
|
|
See networking.firewall.allowPing.
|
|
'';
|
|
};
|
|
allowedUDPPorts = mkOption {
|
|
type = types.listOf types.int;
|
|
description = ''
|
|
See networking.firewall.allowerdUDPPorts.
|
|
'';
|
|
};
|
|
allowedTCPPorts = mkOption {
|
|
type = types.listOf types.int;
|
|
description = ''
|
|
See networking.firewall.allowedTCPPorts.
|
|
'';
|
|
};
|
|
allowedUDPPortRanges = mkOption {
|
|
type = types.listOf (types.attrsOf types.int);
|
|
description = ''
|
|
See networking.firewall.allowerdUDPPortRanges.
|
|
'';
|
|
};
|
|
allowedTCPPortRanges = mkOption {
|
|
type = types.listOf (types.attrsOf types.int);
|
|
description = ''
|
|
See networking.firewall.allowedTCPPortRanges.
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
}
|