current
 1{
 2  inputs,
 3  config,
 4  den,
 5  ...
 6}: let
 7  inherit (den.lib) __findFile;
 8in {
 9  #############################################################
10  #
11  #  Pardofelis - NixOS running on a 2C4G VPS
12  #  My main server hosted by Yecaoyun.
13  #
14  #############################################################
15  den.hosts.x86_64-linux.pardofelis = {
16    usage = "server";
17    pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEuT/WkeA7btTeATmWJ2O9f/A6FI0Gl/1KjPGfHbWD5C root@pardofelis";
18    hashedPasswordAged = ./hashed-password.age;
19    sshPorts = [23930];
20    authorizedKeys = ["ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFMKaGC2I3an4AJDeWzVx5vhm63+kxi6zJNdh7yEp6CK hpcesia@kevin"];
21    tailscaleIpv4 = "100.64.0.4";
22    tailscaleIpv6 = "fd7a:115c:a1e0::4";
23    users.hpcesia = {};
24    instantiate = {modules}:
25      inputs.nixpkgs.lib.nixosSystem {
26        inherit modules;
27
28        # Fix vaultix error: attribute 'inputs' missing
29        # This is an anti-pattern of Dendritic Pattern
30        # I don't like this, but I don't see another way
31        specialArgs = {inherit (inputs) self;};
32      };
33  };
34
35  den.aspects.pardofelis.provides.to-users.includes = [
36    <desktop/no-stylix>
37  ];
38
39  flake.meta.host.hosts.pardofelis = {
40    system = "x86_64-linux";
41    hostPubKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEuT/WkeA7btTeATmWJ2O9f/A6FI0Gl/1KjPGfHbWD5C root@pardofelis";
42    deploy = true;
43    sshPorts = [23930];
44    isServer = true;
45  };
46
47  den.aspects.pardofelis.nixos = {
48    imports = (
49      map
50      (n: config.flake.modules.nixos."${config.flake.meta.service.prefix}${n}")
51      [
52        "artalk"
53        "authelia"
54        "freshrss"
55        "gokapi"
56        "homepage"
57        "vaultwarden"
58        "wakapi"
59      ]
60    );
61  };
62}