{ outputs = inputs: inputs.flake-parts.lib.mkFlake { inherit inputs; } { imports = with inputs; [ easy-hosts.flakeModule home-manager.flakeModules.home-manager ]; systems = [ "x86_64-linux" ]; easy-hosts = { autoConstruct = true; path = ./hosts; onlySystem = "x86_64-nixos"; shared = { modules = [ inputs.lix-module.nixosModules.default ./nixosModules ]; }; }; flake = { homeConfigurations = let userConfig = system: extraModules: inputs.home-manager.lib.homeManagerConfiguration { extraSpecialArgs = { inherit inputs; }; pkgs = inputs.nixpkgs.legacyPackages.${system}; modules = [ ./hmModules ] ++ extraModules; }; in { "pan@juri" = userConfig "x86_64-linux" [ ./users/juri ]; "pan@jibril" = userConfig "x86_64-linux" [ ./users/jibril ]; "pan@onizuka" = userConfig "x86_64-linux" [ ./users/onizuka ]; }; }; }; inputs = { # Save data with this url. Source: # at://did:plc:mojgntlezho4qt7uvcfkdndg/app.bsky.feed.post/3loogwsoqok2w # cid: bafyreidhuuxs3cuabneygtxir65hnd7hvy4hwj5rwrylpwmp7jhxciasve nixpkgs.url = "https://channels.nixos.org/nixpkgs-unstable/nixexprs.tar.xz"; home-manager = { type = "github"; owner = "nix-community"; repo = "home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; flake-parts = { type = "github"; owner = "hercules-ci"; repo = "flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; }; easy-hosts = { type = "github"; owner = "tgirlcloud"; repo = "easy-hosts"; }; lix = { url = "https://git.lix.systems/lix-project/lix/archive/main.tar.gz"; flake = false; }; lix-module = { url = "https://git.lix.systems/lix-project/nixos-module/archive/main.tar.gz"; inputs.nixpkgs.follows = "nixpkgs"; inputs.lix.follows = "lix"; }; niri = { type = "github"; owner = "sodiboo"; repo = "niri-flake"; inputs.nixpkgs.follows = "nixpkgs"; }; sops-nix = { type = "github"; owner = "Mic92"; repo = "sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; }; }