Hello all,

I spent a good time this weekend working on the /System/Index thing.
However, I found a great problem and I can't see how to overcome it.

Given that we have a system compiled against /System/Index, we'll have
things like /System/Index/lib/libc.so, /System/Index/bin/gcc, and so
on. Now let's say that we want to compile a new version of Glibc, 2.5.
Compile will prefix its installation to /System/Index, with a sandbox
created so that writes in that dir will be automatically moved to
/Programs/Glibc/2.5 when the union is removed.

Everything is fine, until the installer tries to perform some
operation with symlinks, such as 'ln -s libc.so.6 libc.so'. Since
libc.so already exists in /System/Index/lib and no '--force' flag was
passed to ln, the link creation will fail, as well as the install
procedure.

I got this problem while compiling Glibc in a similar case where
zic(8) was invoked and tried to create a symlink by doing a symlink(2)
call. Well, this shows that we can't fix the problem with a simple
workaround on 'ln'. I hope this is only me who's not thinking good
enough, but the only way I could think on fixing this was to hack on
unionfs to allow different views on read() and write() -- something I
obviously don't want to do.

I really appreciate suggestions on how to fix this. Could you please
take a time to think about possible workarounds for this problem?

Thanks,

-- 
Lucas
powered by /dev/dsp
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to