# JSL Home ## Usage Shell alias for "nix home manager update" ```shell nhmu ``` ### Function ```nix { description = "Machine-specific Home Manager configuration"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; john-home-config = { url = "git+https://gitea.john-stream.com/john/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { nixpkgs, ... }@inputs: let system = "x86_64-linux"; pkgs = nixpkgs.legacyPackages.${system}; mkHomeJSL = inputs.john-home-config.lib.mkHomeConfiguration; userName = "john"; in { homeConfigurations."${userName}" = mkHomeJSL userName; }; } ``` ### Module ```nix { description = "John's system flake"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; jsl-home = { url = "git+https://gitea.john-stream.com/john/jsl-home?ref=dev"; inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, ... }@inputs: let system = "x86_64-linux"; nixosSystem = nixpkgs.lib.nixosSystem; hostName = "john-p14s"; in { nixosConfigurations.${hostName} = nixosSystem { specialArgs = { inherit inputs; inherit system; }; modules = [ ./hardware-configuration.nix ./configuration.nix inputs.jsl-home.nixosModules.default { stateVersion = "24.05"; user = "john"; root = true; ssh = true; profile = "personal"; enableShell = true; _1password = true; docker = true; # graphical = true; graphical = { steam = true; vscode = true; }; extraImports = [ ./home-manager/john.nix ./home-manager/gnome.nix ./home-manager/ssh.nix ]; } ]; }; }; } ```