mirror of
https://github.com/NixOS/nixpkgs.git
synced 2026-06-05 21:03:40 +00:00
Move the portable modular service base from nixos/modules/system/service/portable/ to lib/services/, making it importable by any module system (home-manager, nix-darwin) without reaching into the nixos/ tree. Moved files: service.nix, lib.nix, config-data.nix, config-data-item.nix, test.nix. All external references updated (systemd/system.nix, doc/manual/default.nix, assertions.nix, README.md). No functional changes - only import paths differ.
39 lines
1.0 KiB
Nix
39 lines
1.0 KiB
Nix
{ lib, ... }:
|
|
{
|
|
|
|
options = {
|
|
|
|
assertions = lib.mkOption {
|
|
type = lib.types.listOf lib.types.unspecified;
|
|
internal = true;
|
|
default = [ ];
|
|
example = [
|
|
{
|
|
assertion = false;
|
|
message = "you can't enable this for that reason";
|
|
}
|
|
];
|
|
description = ''
|
|
This option allows modules to express conditions that must
|
|
hold for the evaluation of the system configuration to
|
|
succeed, along with associated error messages for the user.
|
|
'';
|
|
};
|
|
|
|
warnings = lib.mkOption {
|
|
internal = true;
|
|
default = [ ];
|
|
type = lib.types.listOf lib.types.str;
|
|
example = [ "The `foo' service is deprecated and will go away soon!" ];
|
|
description = ''
|
|
This option allows modules to show warnings to users during
|
|
the evaluation of the system configuration.
|
|
'';
|
|
};
|
|
|
|
};
|
|
# impl of assertions is in
|
|
# - <nixpkgs/nixos/modules/system/activation/top-level.nix>
|
|
# - <nixpkgs/lib/services/lib.nix>
|
|
}
|