48 lines
1.2 KiB
Nix
48 lines
1.2 KiB
Nix
{ lib, config, pkgs, ... }:
|
|
with lib;
|
|
let
|
|
cfg = config.pub-solar;
|
|
in
|
|
{
|
|
options.pub-solar = {
|
|
user = {
|
|
name = mkOption {
|
|
description = "User login name";
|
|
type = types.nullOr types.str;
|
|
default = "nixos";
|
|
};
|
|
description = mkOption {
|
|
description = "User description";
|
|
type = types.nullOr types.str;
|
|
default = "The main PubSolarOS user";
|
|
};
|
|
password = mkOption {
|
|
description = "User password";
|
|
type = types.nullOr types.str;
|
|
default = null;
|
|
};
|
|
publicKeys = mkOption {
|
|
description = "User SSH public keys";
|
|
type = types.listOf types.path;
|
|
default = [ ];
|
|
};
|
|
fullName = mkOption {
|
|
description = "User full name";
|
|
type = types.nullOr types.str;
|
|
default = null;
|
|
};
|
|
email = mkOption {
|
|
description = "User email address";
|
|
type = types.nullOr types.str;
|
|
default = null;
|
|
};
|
|
gpgKeyId = mkOption {
|
|
description = "GPG Key ID";
|
|
type = types.nullOr types.str;
|
|
default = null;
|
|
};
|
|
autologin = mkEnableOption "Autologin the pub solar user on all TTYs";
|
|
};
|
|
};
|
|
}
|