{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; maxfetch.url = "github:jobcmax/maxfetch"; orcaslicer.url = "github:ovlach/nix-orca-slicer"; hyprland.url = "github:hyprwm/Hyprland"; sops-nix = { url = "github:mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs-stable.follows = ""; }; nur.url = "github:nix-community/NUR"; arrpc.url = "github:notashelf/arrpc-flake"; }; outputs = { self, nixpkgs, home-manager, nur, ...}@inputs: let system = "x86_64-linux"; username = "nicolaivds"; home_profile = "nicolaivds"; pkgs = nixpkgs.legacyPackages.${system}; # The path to this very repo flake_path = "~/.dotfiles"; in { homeConfigurations = { "${username}" = home-manager.lib.homeManagerConfiguration { inherit pkgs; extraSpecialArgs = { inherit username flake_path inputs; }; modules = [ ./nix/users/${home_profile} # Pin registry to flake { nix.registry.nixpkgs.flake = nixpkgs; } # Pin channel to flake # { home.sessionVariables.NIX_PATH = "nixpkgs=nixpkgs=flake:nixpkgs$\{NIX_PATH:+:$NIX_PATH}"; } { home.sessionVariables.NIX_PATH = "nixpkgs=flake:nixpkgs$\{NIX_PATH:+:$NIX_PATH}"; } ]; }; }; nixosConfigurations = { desktop = nixpkgs.lib.nixosSystem { inherit system; specialArgs = { inherit username flake_path inputs; }; modules = [ ./nix/systems/main/desktop { nix.registry.nixpkgs.flake = nixpkgs; } # { nix.nixPath = [ "nixpkgs=configflake:nixpkgs" ]; } { nix.nixPath = [ "nixpkgs=flake:nixpkgs" ]; } ]; }; }; }; }