Killua.eu

Physics is like sex, sure it will have some practical results, but thats not why we do it.
RICHARD FEYNMAN

27

Apr 16:54

Pavel

Portage merge efficiecny


Following Diego's post about Portage's issues with massive unmerges brought me to think about what could be done to improve its merge/unmerge efficiency with respect to some tasks like rebuilding the font/mime caches. (Caveat emptor: i don't know much about Portage's internals so my thinking may be sligtly off.)
Method 1: Spawn time-consuming tasks away from the main portage process and, when using parallel-build, or add it as another portage-feature. Portage would wait for the child processes to die and inform user that the package has been merged.
Method 2: Add a persistent message queue to portage with unique entries (queue implemented in gdbm or even a textfile so that users can screw with it). All tasks that the merge process requires to be done would go into this queue and would be executed at the end of the merge. If the merge process is interrupted (ctrl+c, power outage, …), then a) the next emerge would require to first perform the queue before new packages are processed b) during boot, an init script could check if the queue doesn’t contain tasks and perform them to ensure a properly working system.

One more thing: Many ebuilds tell users what to do after a merge (i.e. after a xorg-server update, installed drivers must be rebuild, or do “hash -r” on all terminals after coreutils update)… Why aren’t (some of) these things done automatically? I guess its probably because we dont want portage to screw with the system without the user knowing. But most users will want to ‘just update their system’. So, do portage EAPIs features such as performing tasks only when version of a package changes or when user tells portage to do so? I.e. calling “emerge -uDNva —do-stuff-for-me world” would perform pkg_dostuffforuser() that would be newly defined in ebuilds.

22

Mar 20:22

Pavel

Welcome to my site!


So I finally got me a personal website! My name is Pavel, hi :-) I'm gonna post here about things that I'm interested in. that would be:

chinese martial arts and medicne, physics and science in general, free software, gentoo linux, but also philosophy, sociology and psychology. I work in a family business with medical supplies and am affiliated also with a tech company and a non-profit organization.

Thanks for visiting ;-) I probably won't use this site at all, but on the other hand, maybe I will :-)