{ inputs = { nixpkgs = { url = "github:NixOS/nixpkgs/nixpkgs-unstable"; flake = false; }; flake-utils.url = "github:numtide/flake-utils"; fenix = { url = "github:nix-community/fenix"; flake = false; }; qyriad-nur = { url = "github:Qyriad/nur-packages"; flake = false; }; }; outputs = { self, nixpkgs, flake-utils, fenix, qyriad-nur, }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; qpkgs = import qyriad-nur { inherit pkgs; }; inherit (qpkgs) lib; fenixLib = import fenix { inherit pkgs; }; dynix = import ./default.nix { inherit pkgs qpkgs; }; extraVersions = lib.mapAttrs' (stdenvName: value: { name = "${stdenvName}-dynix"; inherit value; }) dynix.byStdenv; devShell = import ./shell.nix { inherit pkgs qpkgs dynix fenixLib; }; extraDevShells = lib.mapAttrs' (stdenvName: value: { name = "${stdenvName}-dynix"; inherit value; }) dynix.byStdenv; in { packages = extraVersions // { default = dynix; inherit dynix; }; devShells = extraDevShells // { default = devShell; }; checks = self.packages.${system}.default.tests // { default = self.packages.${system}.default.allTests; }; }); }