diff options
Diffstat (limited to 'nixpkgs/nixos/modules/services/network-filesystems/openafs/lib.nix')
-rw-r--r-- | nixpkgs/nixos/modules/services/network-filesystems/openafs/lib.nix | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/nixpkgs/nixos/modules/services/network-filesystems/openafs/lib.nix b/nixpkgs/nixos/modules/services/network-filesystems/openafs/lib.nix new file mode 100644 index 000000000000..1cc9bed847ab --- /dev/null +++ b/nixpkgs/nixos/modules/services/network-filesystems/openafs/lib.nix @@ -0,0 +1,33 @@ +{ config, lib, ...}: + +let + inherit (lib) concatStringsSep mkOption types; + +in rec { + + mkCellServDB = cellName: db: '' + >${cellName} + '' + (concatStringsSep "\n" (map (dbm: if (dbm.ip != "" && dbm.dnsname != "") then dbm.ip + " #" + dbm.dnsname else "") + db)) + + "\n"; + + # CellServDB configuration type + cellServDBConfig = { + ip = mkOption { + type = types.str; + default = ""; + example = "1.2.3.4"; + description = "IP Address of a database server"; + }; + dnsname = mkOption { + type = types.str; + default = ""; + example = "afs.example.org"; + description = "DNS full-qualified domain name of a database server"; + }; + }; + + openafsMod = config.services.openafsClient.packages.module; + openafsBin = config.services.openafsClient.packages.programs; + openafsSrv = config.services.openafsServer.package; +} |