Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
base: 921b2ccff895
Choose a base ref
...
head repository: NixOS/nixpkgs
compare: 3dedec4ab831
Choose a head ref
  • 2 commits
  • 2 files changed
  • 2 contributors

Commits on Mar 26, 2019

  1. pkgs/top-level/stage.nix: don't override overlays and config in `…

    …nixpkgsFun`
    
    `nixpkgsFun` already sets them via `args`. Doing this also introduces unexpected
    hard to debug errors, see the patch.
    oxij authored and danbst committed Mar 26, 2019
    Copy the full SHA
    e8dac0c View commit details
    Browse the repository at this point in the history
  2. pkgsMusl, pkgsi686Linux, pkgsStatic: fix infinite recursion with over…

    …lays
    
    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 #57984
    danbst committed Mar 26, 2019
    Copy the full SHA
    3dedec4 View commit details
    Browse the repository at this point in the history