{ description = "NixOS configuration"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; nixvim = { url = "github:nix-community/nixvim"; inputs.nixpkgs.follows = "nixpkgs"; }; stylix.url = "github:danth/stylix"; }; outputs = inputs@{ nixpkgs, home-manager, stylix, ... }: let system = "x86_64-linux"; in { # Adds the nix fmt command to format nix files formatter."${system}" = nixpkgs.legacyPackages."${system}".nixfmt-rfc-style; nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { system = system; modules = [ ./configuration.nix home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; # Passes inputs as an argument to home-manager home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.users.martin = import ./home.nix; } stylix.nixosModules.stylix ]; }; }; }