diff options
| author | danbst <abcz2.uprola@gmail.com> | 2019-03-25 10:51:23 +0200 |
|---|---|---|
| committer | danbst <abcz2.uprola@gmail.com> | 2019-03-25 10:58:46 +0200 |
| commit | f72903864d5e2be87bb532a516ee8d52c034a9fc (patch) | |
| tree | 90d2cf6b090375e59c601b20ccd43eef6d02a0be /pkgs/development/python-modules/httpserver | |
| parent | 5699e8edc7243fce3ed2332e76c04c7469f78d4b (diff) | |
pkgsMusl, pkgsi686Linux, pkgsStatic: fix infinite recursion with overlays
Consider example:
$ nix-instantiate ./nixos -A system --arg configuration '
{
boot.isContainer = true;
nixpkgs.overlays = [ (self: super: {
nix = self.pkgsStatic.nix;
}) ];
}'
When resolving package through overlays, we figure out that
nix == self.pkgsStatic.nix
=>
nix == (import <nixpkgs> { inherit overlays; }).nix
=>
nix == (import <nixpkgs> { overlays = [(self: super: { nix = self.pkgsStatic.nix; })];}).nix
and we enter infinite recursion of nixpkgs evaluations.
The proper fix should terminate recursion by assigning self fixpoint
to inner custom package set. But I get infinite recursion somehow, so
I use `super`. It is less correct modulo deep custom overrides, but behaves
correctly for simple cases and doesn't OOM evaluator.
Fixes https://github.com/NixOS/nixpkgs/issues/57984
Diffstat (limited to 'pkgs/development/python-modules/httpserver')
0 files changed, 0 insertions, 0 deletions
