Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions rust-overlay.nix
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ let
getComponentsWithFixedPlatform = pkgs: pkgname: stdenv:
let
pkg = pkgs.${pkgname};
srcInfo = pkg.target.${toRustTargetCompat stdenv.targetPlatform} or pkg.target."*";
srcInfo = pkg.target.${toRustTargetCompat stdenv.hostPlatform} or pkg.target."*";
components = srcInfo.components or [];
componentNamesList =
builtins.map (pkg: pkg.pkg) (builtins.filter (pkg: (pkg.target != "*")) components);
Expand All @@ -78,7 +78,7 @@ let
let
inherit (super.lib) unique;
pkg = pkgs.${pkgname};
srcInfo = pkg.target.${toRustTargetCompat stdenv.targetPlatform} or pkg.target."*";
srcInfo = pkg.target.${toRustTargetCompat stdenv.hostPlatform} or pkg.target."*";
extensions = srcInfo.extensions or [];
extensionNamesList = unique (builtins.map (pkg: pkg.pkg) extensions);
in
Expand Down Expand Up @@ -127,13 +127,15 @@ let
in
extensionsToInstall;

getComponents = pkgs: pkgname: targets: extensions: targetExtensions: stdenv: fetchurl:
getComponents = pkgs: pkgname: extraTargets: extensions: targetExtensions: stdenv: fetchurl:
let
inherit (builtins) head map;
inherit (super.lib) flatten remove subtractLists unique;
targetExtensionsToInstall = checkMissingExtensions pkgs pkgname stdenv targetExtensions;
extensionsToInstall = checkMissingExtensions pkgs pkgname stdenv extensions;
hostTargets = [ "*" (toRustTargetCompat stdenv.hostPlatform) (toRustTargetCompat stdenv.targetPlatform) ];
hostTargets = [ "*" (toRustTargetCompat stdenv.hostPlatform) ];
implicitTargets = subtractLists hostTargets [ (toRustTargetCompat stdenv.targetPlatform) ];
targets = unique (extraTargets ++ implicitTargets);
pkgTuples = flatten (getTargetPkgTuples pkgs pkgname hostTargets targets stdenv);
extensionTuples = flatten (map (name: getTargetPkgTuples pkgs name hostTargets targets stdenv) extensionsToInstall);
targetExtensionTuples = flatten (map (name: getTargetPkgTuples pkgs name targets targets stdenv) targetExtensionsToInstall);
Expand Down