idris2Packages.buildIdris: add retroactive support for building a whole dependency tree with source #351520
+183
−64
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.
Another refactor that looks like more changes than it is if you glance at the GitHub line-changes.
This PR does two things primarily:
withSource
attribute that can be used to take a derivation that would build without source and instead build it with source. This allows a project to depend on any number of packages built without source but then also have a developer shell that exposes all dependency sources to IDE integrations with a line as simple asinputsFrom = [ myPkg.withSource ];
library'
attribute to the output ofbuildIdris
alongside the existinglibrary
attribute to make it less awkward to do the default thing of building without source (which I think is even more appealing now than ever before given thewithSource
attribute.For example, one might have the following
default.nix
andshell.nix
(note the use oflibrary'
indefault.nix
andwithSource
inshell.nix
):This would conveniently mean no source code is packaged with the library by default but when used in a developer shell source code could be requested (even for all dependencies).
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-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.