{ inputs, ... }: let userName = "john"; in { flake.modules.nixos.user = { pkgs, ... }: { users.users."${userName}" = { name = "${userName}"; shell = pkgs.zsh; }; programs.zsh.enable = true; home-manager.users."${userName}" = { imports = [ inputs.self.homeModules."${userName}" ]; }; }; flake.homeConfigurations.${userName} = inputs.home-manager.lib.homeManagerConfiguration { pkgs = import inputs.nixpkgs { system = "x86_64-linux"; }; modules = [ inputs.self.homeModules.users."${userName}" # Include another inline module to set the options created through the jsl-home modules { homeManagerFlakeDir = "~/.config/home-manager"; docker.enable = true; ssh.matchSets = { certs = true; appdaemon = true; homelab = true; }; } ]; }; }