Sometimes I want to pass a different implementation of `mkNugetDeps`.
For example in private repos, it can be handy to use `__noChroot = true`
and bypass the deps.nix generation altogether. Or some Nuget packages
ship with ELF binaries that need to be patched, and that's best done as
soon as possible.
The example snippet will fail with this error as it is not self contained and
assumes `shadowSetup` was given:
$ nix-build docker-image.nix
error: undefined variable 'shadowSetup' at docker-image.nix:20:7
Instead use the full reference to `shadowSetup` in the example so it will work
as stated.
This commit clarifies that the meaning of the `meta.sourceProvenance`
field is independent of and unaffected by the value of the
`meta.license` field. This is based on the intent of the RFC author
as expressed here:
https://github.com/NixOS/nixpkgs/pull/161098#issuecomment-1081270201
This clarification is added for two reasons:
1. If in the future there should be some disagreement about what
`sourceProvenance` to assign to a package, this may help resolve
the disagreement. Any interpretation of `sourceProvenance` which
is influenced by the `meta.license` is clearly an incorrect
interpretation.
2. If it should turn out that it is impossible to disentangle
`sourceProvenance` from `meta.license`, this would indicate the
need for changes to the `sourceProvenance` scheme. That change
might be as simple as replacing the sentence added by this commit
with some other sentence explaining how the two fields influence
each other.
This commit implements the recommendation made in the paragraph of
this comments which begins with "Please say this explicitly...":
https://github.com/NixOS/nixpkgs/pull/161098#issuecomment-1081309089
- put `findlib` in `buildInputs` of `mkCoqDerivation` to make sure `coq` packages find their ocaml plugin dependencies,
- use `propagatedBuildInputs` to make sure ocaml plugin dependencies are in path,
- updated `coqPackage.heq` (broken url),
- fixed use of `DESTDIR` and `COQMF_COQLIB` in mkCoqDerivation,
- adding `COQCORELIB` environement variable to put ocaml plugin files in the right place,
- make `metaFetch` available from `coqPackages`
- use propagatedBuildInputs to make sure ocaml plugin stuff is in path
- updated coqPackage.heq (broken url)
- fixed use of `DESTDIR` and `COQMF_COQLIB` in mkCoqDerivation
- adding `COQCORELIB` environement variable to put ocaml plugin files in the right place
- make metaFetch available from `coqPackages`
There are many different versions of the `cudatoolkit` and related
cuda packages, and it can be tricky to ensure they remain compatible.
- `cudaPackages` is now a package set with `cudatoolkit`, `cudnn`, `cutensor`, `nccl`, as well as `cudatoolkit` split into smaller packages ("redist");
- expressions should now use `cudaPackages` as parameter instead of the individual cuda packages;
- `makeScope` is now used, so it is possible to use `.overrideScope'` to set e.g. a different `cudnn` version;
- `release-cuda.nix` is introduced to easily evaluate cuda packages using hydra.
This commit describes the "->" notation for dependency types in
greater detail, and uses g++ to provide examples of all six cases
(although the host->target and target->target examples are a bit
artificial).
It also adds three more rows to the table for the "->*" dependency
types for non-compiler-like packages; these dependency types were
already present in the documentation but the "*" was not really
explained.
Lastly, this commit adds a hyperlink to the table from the place where
it is mentioned in the "specifying dependencies" chapter.