{ description = "MY NixOS configuration BITCH not yours fuck YOU honestly"; inputs = { nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable"; home-manager = { url = "github:nix-community/home-manager/master"; # The `follows` keyword in inputs is used for inheritance. # Here, `inputs.nixpkgs` of home-manager is kept consistent with # the `inputs.nixpkgs` of the current flake, # to avoid problems caused by different versions of nixpkgs. inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, nixpkgs, home-manager, }@inputs: let inherit (self) outputs; nix.registry.nixos.flake = inputs.self; environment.etc."nix/inputs/nixpkgs".source = nixpkgs.outPath; nix.nixPath = ["nixpkgs=${nixpkgs.outPath}"]; in{ nixosConfigurations = { homepc = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs outputs;}; system = "x86_64-linux"; modules = [ ./machines/homepc/configuration.nix { home-manager.extraSpecialArgs = {inherit inputs outputs;}; home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.laythe = import ./machines/homepc/home.nix; } ] } } }; }