make-derivation.nix: Factor out makeDerivationArgument#295378
Merged
roberth merged 11 commits intoNixOS:masterfrom Mar 14, 2024
Merged
make-derivation.nix: Factor out makeDerivationArgument#295378roberth merged 11 commits intoNixOS:masterfrom
makeDerivationArgument#295378roberth merged 11 commits intoNixOS:masterfrom
Conversation
…duplicate functionality
These two commits make for a cleaner commit history and git blame than NixOS#295105, where this refactor was developed. See its commit messages for details and design choices, esp. up to and including 37f76fd.
... after inlining chooseDevOutputs.
13 tasks
Member
|
I believe this change may have broke let
pkgs = import <nixpkgs> {
config.checkMetaRecursively = true;
};
testdrv = pkgs.stdenv.mkDerivation {
name = "hi";
buildCommand = ''
touch $out
'';
};
in testdrv
|
13 tasks
roberth
added a commit
that referenced
this pull request
Mar 17, 2024
Oddly, I can't reproduce the error, but this change will make it more robust. See #295378 (comment)
This was referenced Jan 19, 2025
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
Refactor and improve performance.
The refactor is good in its own right, and may serve as a step towards #273815 as well as modularization that eventually benefits RFC 92 dynamic derivations and multi-derivation packages (e.g. separate derivation for the
docoutput).Performance
Review by commit
Commits 1 and 2 change the structure of the file to return an attrset "library" of one function.
Commits 3 and 4 were developed in Proof of concept, refactor/extract
makeDerivationArgument#295105 with a more meticulous commit history, but reapplied "in one go" using the original file text for a cleaner diff and git blame. I.e. the small, safe steps can be traced back there.The subsequent commits are individual pure refactors without changes in behavior.
Things done
nix.conf? (See Nix manual)sandbox = relaxedsandbox = truenix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/)Add a 👍 reaction to pull requests you find important.