{ inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; master.url = "github:nixos/nixpkgs/master"; stable.url = "github:nixos/nixpkgs/nixos-22.11"; unstable.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager.url = "github:nix-community/home-manager"; spicetify-nix.url = "github:the-argus/spicetify-nix"; nur.url = "github:nix-community/NUR"; nixpkgs-f2k.url = "github:moni-dz/nixpkgs-f2k"; nix-gaming.url = "github:fufexan/nix-gaming"; systems.url = "github:nix-systems/default-linux"; nix-thorium.url = "github:almahdi/nix-thorium"; nixGL = { url = "github:nix-community/nixGL"; inputs.nixpkgs.follows = "nixpkgs"; }; hyprland = { type = "git"; url = "https://github.com/hyprwm/Hyprland"; submodules = true; }; hyprland-plugins = { url = "github:hyprwm/hyprland-plugins"; inputs.hyprland.follows = "hyprland"; }; Hyprspace = { url = "github:KZDKM/Hyprspace"; inputs.hyprland.follows = "hyprland"; }; }; outputs = { self, nixpkgs, home-manager, systems, ... }@inputs: let inherit (self) outputs; lib = nixpkgs.lib // home-manager.lib; forEachSystem = f: lib.genAttrs (import systems) (system: f pkgsFor.${system}); pkgsFor = lib.genAttrs (import systems) (system: import nixpkgs { inherit system; }); in { inherit lib; defaultPackage.x86_64-linux = home-manager.defaultPackage.x86_64-linux; formatter.x86_64-linux = nixpkgs.legacyPackages.x86_64-linux.alejandra; nixosConfigurations = { kansai = lib.nixosSystem { specialArgs = { inherit inputs outputs; }; modules = [ inputs.home-manager.nixosModule ./hosts/kansai/configuration.nix ]; }; }; homeConfigurations = { ebisu = home-manager.lib.homeManagerConfiguration { pkgs = pkgsFor.x86_64-linux; modules = [ ./home/ebisu/home.nix ]; extraSpecialArgs = { inherit inputs outputs self; }; }; }; }; }