current
 1{
 2  inputs,
 3  config,
 4  den,
 5  ...
 6}: let
 7  inherit (den.lib) __findFile;
 8in {
 9  #############################################################
10  #
11  #  Kevin - NixOS running on ThinkBook 16P G5 IRX
12  #  My main computer, with I7-14650HX + RTX4060 Laptop GPU + 32GB memory, for daily use.
13  #
14  #############################################################
15  den.hosts.x86_64-linux.kevin = {
16    usage = "laptop";
17    pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOO9CyAqGo/WbJkncrt1a9jxS1E+hd550SC4A08I/l0/ root@kevin";
18    hashedPasswordAged = ./hashed-password.age;
19    tailscaleIpv4 = "100.64.0.1";
20    tailscaleIpv6 = "fd7a:115c:a1e0::1";
21    users.hpcesia.classes = ["homeManager"];
22    instantiate = {modules}:
23      inputs.nixpkgs.lib.nixosSystem {
24        inherit modules;
25
26        # Fix vaultix error: attribute 'inputs' missing
27        # This is an anti-pattern of Dendritic Pattern
28        # I don't like this, but I don't see another way
29        specialArgs = {inherit (inputs) self;};
30      };
31  };
32
33  den.aspects.kevin.includes = [
34    <desktop/fonts>
35    <desktop/kmscon>
36    <desktop/terminal>
37  ];
38
39  den.aspects.kevin.provides.to-users.includes = [
40    <desktop>
41    <desktop/de/custom>
42    <desktop/de/custom/wm/niri>
43    <desktop/de/custom/shell/noctalia>
44    <desktop/dm/sddm>
45    <desktop/gpg>
46  ];
47
48  flake.meta.host.hosts.kevin = {
49    system = "x86_64-linux";
50    hostPubKey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOO9CyAqGo/WbJkncrt1a9jxS1E+hd550SC4A08I/l0/ root@kevin";
51    isDesktop = true;
52    isLaptop = true;
53  };
54}