Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-26 Thread Ludovic Courtès
Hi Florian, Florian Friesdorf skribis: > If now two derivations are put > together into a new derivation, their components will be symlinked and > here, as I understand now, hardlinks are not an option because nix uses > the symlinks to store information about dependencies. Yes, the garbage col

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-25 Thread Florian Friesdorf
On Sun, 25 Sep 2011 22:23:57 +0200, l...@gnu.org (Ludovic =?iso-8859-1?Q?Court=E8s?=) wrote: > Florian Friesdorf skribis: > > > On Sat, 24 Sep 2011 21:56:02 +0200, l...@gnu.org (Ludovic > > =?iso-8859-1?Q?Court=E8s?=) wrote: > >> Hi Florian, > >> > >> Florian Friesdorf skribis: > >> > >> > W

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-25 Thread Ludovic Courtès
Hi, Florian Friesdorf skribis: > On Sat, 24 Sep 2011 21:56:02 +0200, l...@gnu.org (Ludovic > =?iso-8859-1?Q?Court=E8s?=) wrote: >> Hi Florian, >> >> Florian Friesdorf skribis: >> >> > Why is nix using symlinks to link files in the nix store? >> >> Because hard links don’t work across device

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-25 Thread Rok Garbas
On 24/09/11 17:15, Peter Simons wrote: > Hi Florian, > > > If ./bin/python is a symlink, python will resolve it to find its home > > and set sys.prefix accordingly. > > it seems to me like Python is behaving perfectly reasonable. The prefix of > Python is at /nix/store/vzpvrymynp4n93bznxha6hadj

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread Marc Weber
Excerpts from Florian Friesdorf's message of Sat Sep 24 23:38:42 +0200 2011: > But the links would be just intra-store links, or? Is it a supported > setup to have parts of the store on different devices? Some tests in nixos mount a writable filesystem over a readonly store. It would be hard to m

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread Florian Friesdorf
On Sat, 24 Sep 2011 21:56:02 +0200, l...@gnu.org (Ludovic =?iso-8859-1?Q?Court=E8s?=) wrote: > Hi Florian, > > Florian Friesdorf skribis: > > > Why is nix using symlinks to link files in the nix store? > > Because hard links don’t work across devices. But the links would be just intra-store l

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread Ludovic Courtès
Hi Florian, Florian Friesdorf skribis: > Why is nix using symlinks to link files in the nix store? Because hard links don’t work across devices. Ludo’. ___ nix-dev mailing list nix-dev@lists.science.uu.nl http://lists.science.uu.nl/mailman/listinfo/

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread Peter Simons
Hi Florian, > If ./bin/python is a symlink, python will resolve it to find its home > and set sys.prefix accordingly. it seems to me like Python is behaving perfectly reasonable. The prefix of Python is at /nix/store/vzpvrymynp4n93bznxha6hadj0ww68vx-python-2.7.1. The other paths, /tmp/cfl/bad o

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread Florian Friesdorf
On Sat, 24 Sep 2011 17:15:08 +0200, Peter Simons wrote: > Hi Florian, > > > If ./bin/python is a symlink, python will resolve it to find its home > > and set sys.prefix accordingly. > > it seems to me like Python is behaving perfectly reasonable. The prefix of > Python is at /nix/store/vzpvrym

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread Florian Friesdorf
On Sat, 24 Sep 2011 08:03:03 -0700, s...@shealevy.com wrote: > It seems like the problem here is with Python, not nix. Isn't there a way > to set some env var or command line flag to set sys.prefix manually? Then > you can create a wrapper script to call the "real" Python with the right > value. S

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread shea
It seems like the problem here is with Python, not nix. Isn't there a way to set some env var or command line flag to set sys.prefix manually? Then you can create a wrapper script to call the "real" Python with the right value. Or patch Python not to follow symlinks like that. > On Sat, 24 Sep 201

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread Florian Friesdorf
On Sat, 24 Sep 2011 16:41:07 +0200, Peter Simons wrote: > Hi Florian, > > > Why is nix using symlinks to link files in the nix store? > > Would switching to hardlinks break something? > > why do you think that hardlinks would be preferable? Two profiles: /tmp/cfl/bad: more than one derivation

Re: [Nix-dev] nix store: hardlink vs symlink

2011-09-24 Thread Peter Simons
Hi Florian, > Why is nix using symlinks to link files in the nix store? > Would switching to hardlinks break something? why do you think that hardlinks would be preferable? It is easy to determine where a symlink points to, but it's expensive to determine that for a hardlink. That information

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread shea
>From my understanding (which may be terribly incorrect), hard links would cause two problems during the hash-scanning phase of a nix build: 1. At least as of Eelco's thesis, we were ignoring hard links in the canonicalization of store paths. That means that after a build, any hard-linked files wi

Re: [Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread Marc Weber
> - hardlinks for individual files Isn't there a permission issue? As user you should not be allowed to change hardlinked files - but you want to delet theme (because you want to be allowed to remove ~/.nix-profile). Isn't that the reason why you need to be root to create hardlinks? You're right e

[Nix-dev] nix store: hardlink vs symlink (was Re: python application vs python environment)

2011-09-24 Thread Florian Friesdorf
Isolating aspects of the original mail: On Sat, 24 Sep 2011 14:36:20 +0200, Florian Friesdorf wrote: > If ./bin/python is a symlink, we have currently a problem and PYTHONHOME > would be a solution, if python is a real file, we do not have a problem. > > So instead of symlinking the python exec