{ description = "My NixOS config flake"; # No inputs, take this flakers outputs = _: let sources = import ./npins; nixpkgs = (import sources.flake-compat {src = sources.nixpkgs;}).outputs; inherit (nixpkgs) lib; eachSystem = lib.genAttrs (import sources.systems); pkgsFor = nixpkgs.legacyPackages; inputs = sources; in { nixosConfigurations = import ./default.nix; formatter = eachSystem (system: pkgsFor.${system}.alejandra); packages = lib.mapAttrs ( _: pkgs: { inherit (import ./packages { inherit inputs pkgs; }) fish helix kakoune nushell ; } ) pkgsFor; devShells = lib.mapAttrs ( _: pkgs: { default = pkgs.mkShellNoCC { packages = [ (pkgs.callPackage (sources.npins + "/npins.nix") {}) ]; env.NPINS_OVERRIDE_nichts = "."; }; } ) pkgsFor; apps = eachSystem (system: let inherit (inputs.self.packages.${system}) fish helix nushell; in { default = inputs.self.apps.${system}.nushell; helix = { type = "app"; program = "${helix}/bin/hx"; }; nushell = { type = "app"; program = "${nushell}/bin/nu"; }; fish = { type = "app"; program = "${fish}/bin/fish"; }; }); templates = import ./templates; }; }