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/nix
base: 7cd9859e411c
Choose a base ref
...
head repository: NixOS/nix
compare: f443d5ca19f0
Choose a head ref
  • 10 commits
  • 4 files changed
  • 5 contributors

Commits on Jan 23, 2020

  1. installer: Handle edge case where the nix-daemon is already running o…

    …n the system
    
    On a systemd-based Linux distribution: If the user has previously had multi-user Nix installed on the system, removed it and then reinstalled multi-user Nix again the old nix-daemon.service will still be running when `scripts/install-systemd-multi-user.sh` tries to start it which results in nothing being done and the old daemon continuing its run.
    
    When a normal user then tries to use Nix through the daemon the nix binary will fail to connect to the nix-daemon as it does not belong to the currently installed Nix system. See below for steps to reproduce the issue that motivated this change.
    
    $ sh <(curl https://nixos.org/nix/install) --daemon
    
    $ sudo rm -rf /etc/nix /nix /root/.nix-profile /root/.nix-defexpr /root/.nix-channels /home/nix-installer/.nix-profile /home/nix-installer/.nix-defexpr /home/nix-installer/.nix-channels ~/.nix-channels ~/.nix-defexpr/ ~/.nix-profile /etc/profile.d/nix.sh.backup-before-nix /etc/profile.d/nix.sh; sed -i '/added by Nix installer$/d' ~/.bash_profile
    
    $ unset NIX_REMOTE
    
    $ sh <(curl https://nixos.org/nix/install) --daemon
    
    └$ export NIX_REMOTE=daemon
    
    └$ nix-env -iA nixpkgs.hello
    installing 'hello-2.10'
    error: cannot connect to daemon at '/nix/var/nix/daemon-socket/socket': No such file or directory
    (use '--show-trace' to show detailed location information)
    
    └$ sudo systemctl restart nix-daemon.service
    
    └$ nix-env -iA nixpkgs.hello
    installing 'hello-2.10'
    these paths will be fetched (6.09 MiB download, 27.04 MiB unpacked):
      /nix/store/2g75chlbpxlrqn15zlby2dfh8hr9qwbk-hello-2.10
      /nix/store/aag9d1y4wcddzzrpfmfp9lcmc7skd7jk-glibc-2.27
    copying path '/nix/store/aag9d1y4wcddzzrpfmfp9lcmc7skd7jk-glibc-2.27' from 'https://cache.nixos.org'...
    copying path '/nix/store/2g75chlbpxlrqn15zlby2dfh8hr9qwbk-hello-2.10' from 'https://cache.nixos.org'...
    building '/nix/store/w9adagg6vlikr799nkkqc9la5hbbpgmi-user-environment.drv'...
    created 2 symlinks in user environment
    Rovanion committed Jan 23, 2020
    Copy the full SHA
    a413594 View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2020

  1. Copy the full SHA
    46992e7 View commit details
    Browse the repository at this point in the history

Commits on Feb 14, 2020

  1. Copy the full SHA
    d78141a View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2020

  1. Merge pull request #3328 from Rovanion/nix-daemon-already-running-whe…

    …n-installing-fix
    
    installer: Handle edge case where the nix-daemon is already running on the system
    edolstra committed Feb 19, 2020
    Copy the full SHA
    e3e8ee0 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #3357 from carlosdagos/pure-nix-shell-proxy-env

    Pass through http proxy env vars in pure shell
    edolstra committed Feb 19, 2020
    Copy the full SHA
    2a14c28 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #3332 from Calvin-L/patch-1

    Document that autoconf is a dependency
    edolstra committed Feb 19, 2020
    Copy the full SHA
    2ba67da View commit details
    Browse the repository at this point in the history
  4. nix-shell: clean up the tmpDir and escape variables

    The problem fixed: each nix-shell invocation creates a new temporary
    directory (`/tmp/nix-shell-*`) and never cleans up.
    
    And while I'm here, shellescape all variables inlined into the rcfile.
    See what might happen without escaping:
    
        $ export TZ="';echo pwned'"
        $ nix-shell -p hello --run hello
        pwned
        Hello, world!
    xzfc committed Feb 19, 2020
    Copy the full SHA
    f2a03ac View commit details
    Browse the repository at this point in the history
  5. Merge pull request #3325 from xzfc/clean-tmpdir

    nix-shell: clean up the tmpDir and escape variables
    edolstra committed Feb 19, 2020
    Copy the full SHA
    2e953b5 View commit details
    Browse the repository at this point in the history

Commits on Feb 27, 2020

  1. nix dev-shell: Add --command option

    Note: like 'nix run', and unlike 'nix-shell', this takes an argv
    vector rather than a shell command. So
    
      nix dev-shell -c 'echo $PATH'
    
    doesn't work. Instead you need to do
    
      nix dev-shell -c bash -c 'echo $PATH'
    edolstra committed Feb 27, 2020
    Copy the full SHA
    2672a28 View commit details
    Browse the repository at this point in the history
  2. Copy the full SHA
    f443d5c View commit details
    Browse the repository at this point in the history