old
 1# colmena - Remote Deployment via SSH
 2{
 3  lib,
 4  inputs,
 5  nixos-modules,
 6  home-modules ? [],
 7  myvars,
 8  system,
 9  tags,
10  ssh-user,
11  genSpecialArgs,
12  specialArgs ? (genSpecialArgs system),
13  ...
14}: let
15  inherit (inputs) home-manager;
16in
17  {name, ...}: {
18    deployment = {
19      inherit tags;
20      targetUser = ssh-user;
21      targetHost = name; # hostName or IP address
22    };
23
24    imports =
25      nixos-modules
26      ++ (
27        lib.optionals ((lib.lists.length home-modules) > 0)
28        [
29          home-manager.nixosModules.home-manager
30          {
31            home-manager.useGlobalPkgs = true;
32            home-manager.useUserPackages = true;
33            home-manager.backupFileExtension = "home-manager.backup";
34
35            home-manager.extraSpecialArgs = specialArgs;
36            home-manager.users."${myvars.username}".imports = home-modules;
37          }
38        ]
39      );
40  }