# SPDX-FileCopyrightText: 2026 Qyriad # # SPDX-License-Identifier: EUPL-1.1 { pkgs ? import { config.checkMeta = true; }, qpkgs ? let src = fetchTarball "https://github.com/Qyriad/nur-packages/archive/main.tar.gz"; in import src { inherit pkgs; }, }: let inherit (qpkgs) lib; # Use LLD for faster link times. defaultStdenv = pkgs.clangStdenv.override { cc = pkgs.clangStdenv.cc.override { bintools = pkgs.wrapBintoolsWith { inherit (pkgs.llvmPackages) bintools; }; }; }; dynix = (qpkgs.callPackage ./package.nix { clangStdenv = defaultStdenv; }) .overrideAttrs (final: prev: { dynixCommand = qpkgs.stdlib.mkStdenvPretty prev.dynixCommand; dynixModules = qpkgs.stdlib.mkStdenvPretty prev.dynixModules; }) |> qpkgs.stdlib.mkStdenvPretty; byStdenv = lib.mapAttrs (stdenvName: stdenv: let withStdenv = dynix.override { clangStdenv = stdenv; }; dynix' = withStdenv.overrideAttrs (prev: { pname = "${prev.pname}-${stdenvName}"; }); in dynix') qpkgs.validStdenvs; in dynix.overrideAttrs (prev: lib.recursiveUpdate prev { passthru = { inherit byStdenv; }; })