{ inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; inputs.nix-select.url = "git+https://git.clan.lol/clan/nix-select.git"; inputs.nixpkgs-lib.url = "github:nix-community/nixpkgs.lib"; outputs = inputs: let forAllSystems = f: inputs.nixpkgs.lib.genAttrs inputs.nixpkgs.lib.systems.flakeExposed (system: f rec { inherit system; pkgs = inputs.nixpkgs.legacyPackages.${system}; inherit (pkgs) lib; }); in { inherit inputs; overlays.default = prev: { nixq = prev.callPackage ./package.nix { inherit (inputs) nix-select nixpkgs-lib; }; }; packages = forAllSystems ({ pkgs, ... }: rec { default = nixq; nixq = pkgs.callPackage ./package.nix { inherit (inputs) nix-select nixpkgs-lib; }; nixq-nix = pkgs.callPackage ./package.nix { inherit (inputs) nix-select nixpkgs-lib; extraRuntimeDeps = [ pkgs.nix ]; }; nixq-lix = pkgs.callPackage ./package.nix { inherit (inputs) nix-select nixpkgs-lib; extraRuntimeDeps = [ pkgs.lix ]; }; }); devShells = forAllSystems ({ lib, pkgs, ... }: rec { default = pkgs.mkShellNoCC { packages = builtins.attrValues { inherit (pkgs) lix jq yq bat ; }; env.NIXQ_NIX_SELECT_PATH = inputs.nix-select.outPath; env.NIXQ_NIXPKGS_LIB_PATH = inputs.nixpkgs.outPath; env.UV_PYTHON_DOWNLOADS = "never"; }; }); }; }