{ description = "kassouni's NixOS configs"; inputs = { nixpkgs.url = "github:nixos/nixpkgs/nixos-26.05"; nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; home-manager.url = "github:nix-community/home-manager/release-26.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; nixvim.url = "github:nix-community/nixvim/nixos-26.05"; xmonad-config.url = "path:/home/kassouni/Developer/xmonad-config"; sidra.url = "github:wimpysworld/sidra"; slippi.url = "github:lytedev/slippi-nix"; slippi.inputs.nixpkgs.follows = "nixpkgs"; slippi.inputs.home-manager.follows = "home-manager"; }; outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, nixvim, xmonad-config, sidra, slippi, ... }@inputs: let systems = [ "x86_64-linux" "aarch64-linux" "x86_64-darwin" "aarch64-darwin" ]; forAllSystems = nixpkgs.lib.genAttrs systems; in { nixosConfigurations = { hierophant = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; specialArgs = { pkgs-unstable = import nixpkgs-unstable { system = "x86_64-linux"; config.allowUnfree = true; }; }; modules = [ ./machines/hierophant/configuration.nix ./machines/hierophant/hardware-configuration.nix xmonad-config.nixosModules.default slippi.nixosModules.default home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.extraSpecialArgs = { pkgs-unstable = import nixpkgs-unstable { system = "x86_64-linux"; config.allowUnfree = true; }; }; home-manager.users.kassouni = { pkgs, ... }: { imports = [ ./users/kassouni/home.nix nixvim.homeModules.nixvim xmonad-config.homeManagerModules.default slippi.homeManagerModules.default ]; home.packages = [ sidra.packages.${pkgs.system}.default ]; }; } ]; }; }; devShells = forAllSystems (system: { default = let pkgs = nixpkgs.legacyPackages.${system}; in pkgs.mkShell { buildInputs = [ ]; }; }); formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.nixfmt-tree); }; }