Hi all

Currently I am in a process of desperately getting rid of libpng14 library 
leftovers.
cave fix-linkage ..., lafilefixer, find a missing dependency in some of 
ebuilds, report to Gentoo team, find a "recursive" fix-linkage necessity, loop 
:)
Meanwhile even my graphical login manager would not start :)

That's the common thing for a gentooer, right?
Gentoo on server is especially painful because of that.

So the problem is that Gentoo/portage/paludis do not support transactional 
merging.
I mean I'd like to have a following workflow:

1. Start a install transaction.
2. Emerge all the packages/dependencies necessary.
3. Resolve all conflicts/leftovers/revdeps necessary.
4. Commit install transaction onto /. Everything in one go.

So unless everything is ready for merging your main root does not change.
You can continue to work, use your X, browser :), and even do not afraid of 
sudden kernel reboot/crash.

So, that's kind of wishful thinking so far.

Can we make it happen?
I think we can make something similar with the help of aufs and a bit of help 
from cave.

So plan is:
1. Create a chroot directory using aufs copy-on-write functionality. 
This chroot will be seen as a view of root directory, but all changes won't 
touch the main root, but "accumulate" in aufs branch.
2. Start installing/removing/whatever activity in cave with chroot as a 
parameter/mode.
3. Resolve all conflicts/leftovers/revdeps necessary.
4. Merge aufs changes back to main root.
5. Kill chroot.

I guess it should work.
And it looks like cave already has some chroot support in place. 
Even though it's somehow not documented.

And I guess this nice functionality can be even made part of paludis. But 
that's up to you of course.

Please give suggestions. 

 -- 
Regards,
Denis Golovan

_______________________________________________
paludis-user mailing list
paludis-user@lists.exherbo.org
http://lists.exherbo.org/mailman/listinfo/paludis-user

Reply via email to