mirror of
https://github.com/kp2pml30/dotfiles.git
synced 2026-02-16 23:34:42 +04:00
57 lines
1.1 KiB
Nix
57 lines
1.1 KiB
Nix
{ config
|
|
, pkgs
|
|
, lib
|
|
, ...
|
|
}:
|
|
let
|
|
cfg = config.kp2pml30.server;
|
|
in {
|
|
options.kp2pml30.server = {
|
|
username = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = "kp2pml30-serv";
|
|
};
|
|
hostname = lib.mkOption {
|
|
type = lib.types.str;
|
|
default = null;
|
|
};
|
|
|
|
nginx = lib.mkEnableOption "";
|
|
|
|
forgejo = lib.mkEnableOption "";
|
|
|
|
dns = lib.mkEnableOption "";
|
|
nix-cache = lib.mkEnableOption "";
|
|
xray = lib.mkEnableOption "";
|
|
|
|
sitePath = lib.mkOption {
|
|
type = lib.types.str;
|
|
};
|
|
};
|
|
|
|
imports = [
|
|
./ports.nix
|
|
./ssh.nix
|
|
./nginx.nix
|
|
./boot.nix
|
|
./site.nix
|
|
./forgejo.nix
|
|
./dns.nix
|
|
./nix-cache.nix
|
|
./xray.nix
|
|
./secrets.nix
|
|
];
|
|
|
|
config = {
|
|
security.pam.enableSSHAgentAuth = true;
|
|
|
|
users.users."${cfg.username}" = {
|
|
isNormalUser = true;
|
|
openssh.authorizedKeys.keys = [
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII2dRBDECmIuKt+2B2q9cmFudKga+EzbD4pCX6x3JNLB kp2pml30@kp2pml30-personal-pc"
|
|
];
|
|
extraGroups = [ "wheel" "networkmanager" "acme" ];
|
|
hashedPassword = "$6$UK6oHr2gPRYD4Rak$lgF.mYReC0jahNuI4kt0j/CsrajVzMprvp3HgjKwwsjYHU6/Ur9jfROXZbKhhpyCLRmnlCpWeRCbHEYO/jhIv/";
|
|
};
|
|
};
|
|
}
|