[Nix-dev] upgrades and channels

Mathijs Kwik mathijs at bluescreen303.nl
Fri Jul 6 16:46:13 CEST 2012


On Thu, Jul 5, 2012 at 11:07 PM, Eelco Dolstra
<eelco.dolstra at logicblox.com> wrote:
> Hi,
>
> On 05/07/12 17:02, Mathijs Kwik wrote:
>
>>> And a question about NIX_PATH:
>>> by default it's
>>>
>> NIX_PATH='/nix/var/nix/profiles/per-user/root/channels/nixos:nixpkgs=/etc/nixos/nixpkgs:nixos=/etc/nixos/nixos:nixos-config=/etc/nixos/configuration.nix:services=/etc/nixos/services'
>>>
>>> I understand the name=value pairs give the <name> syntax, but how does a plain
>> dirname (like the channels/nixos dir) get handled?
>
> See the description of NIX_PATH in nix-env(1).

Nice, I should read the man pages more :)

>
>>> I see it contains nixos and nixpkgs, but also a cryptic default.nix
>
> The default.nix just includes Nixpkgs so that nix-env can find the Nixpkgs copy
> in the NixOS channel.
>
>>> My local /home/mathijs/nix-dev dir contains nixos and nixpkgs.
>>> If I want to switch to using those instead of the channel (temporarily), can I
>> just point NIX_PATH there?
>
> Yes, or use -I (e.g. "nixos-rebuild switch -I ~mathijs/nix-dev").

This works for nixos-rebuild, but not for nix-env.

Now, I know I can fiddle with the synlinks below ~/.nix-defexpr, but I
would prefer not to.
Say I can normally upgrade a package by
nix-env -iA nixos.pkgs.xterm

Now I want to do this again, but now using my local ~/nix-dev.

I tried
nix-env -iA nixos.pkgs.xterm -I ~/nix-dev
nix-env -iA nixos.pkgs.xterm -f ~/nix-dev

NIX_PATH="~/nix-dev" nix-env -iA nixos.pkgs.xterm
NIX_PATH="nixpkgs=~/nix-dev/nixpkgs:nixos=~/nix-dev/nixos" nix-env -iA
nixos.pkgs.xterm

none of these worked.


>
> --
> Eelco Dolstra | LogicBlox, Inc. | http://nixos.org/~eelco/
> _______________________________________________
> nix-dev mailing list
> nix-dev at lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev


More information about the nix-dev mailing list