* Improvements to profiles. Generations are now per-profile, e.g.,

default -> default-94-link
  default-82-link -> /nix/store/cc4480...
  default-83-link -> /nix/store/caeec8...
  ...
  default-94-link -> /nix/store/2896ca...
  experimental -> experimental-2-link
  experimental-1-link -> /nix/store/cc4480...
  experimental-2-link -> /nix/store/a3148f...

* `--profile' / `-p' -> `--switch-profile' / `-S'
* `--link' / `-l' -> `--profile' / `-p'
* The default profile is stored in $prefix/var/nix/profiles.
  $prefix/var/nix/links is gone.  Profiles can be stored anywhere.
* The current profile is now referenced from ~/.nix-profile, not
  ~/.nix-userenv.
* The roots to the garbage collector now have extension `.gcroot', not
  `.id'.
This commit is contained in:
Eelco Dolstra 2004-02-06 10:30:20 +00:00
parent d445da7a7b
commit 66e94d3275
10 changed files with 84 additions and 78 deletions

View file

@ -3,7 +3,7 @@
use strict;
use IPC::Open2;
my $linkdir = "@localstatedir@/nix/links";
my $linkdir = "@localstatedir@/nix/profiles";
my $storedir = "@prefix@/store";
my %alive;
@ -24,7 +24,7 @@ closedir DIR;
my @roots;
foreach my $link (@links) {
$link = $linkdir . "/" . $link;
next if (!($link =~ /.id$/));
next if (!($link =~ /.gcroot$/));
open ROOT, "<$link" or die "cannot open $link: $!";
my $root = <ROOT>;
chomp $root;

View file

@ -1,9 +1,9 @@
if test -n "$HOME"; then
NIX_LINK="$HOME/.nix-userenv"
NIX_LINK="$HOME/.nix-profile"
if ! test -L "$NIX_LINK"; then
echo "creating $NIX_LINK"
_NIX_DEF_LINK=@localstatedir@/nix/links/current
_NIX_DEF_LINK=@localstatedir@/nix/profiles/default
ln -s "$_NIX_DEF_LINK" "$NIX_LINK"
fi