Vielleicht ein kleiner Kritikpunkt:
Warum alle USE flags in der
/etc/make.conf setzen? Ich finde das
a) unübersichtlicher, und
b) bläht das viele Programme mit unnötigen Features und Abhängigkeiten auf und führt zu zusätzlich installierten aber nicht benötigten Programmen
Ich würde wirklich nur globale USE flags in
/etc/make.conf verwenden, also vor allem so Sachen wie
"hardened nptl -gnome -ipv6 -java -kde -X", und vielleicht noch USE flags, die sowieso bei den meisten Programmen benötigt würden.
Ein Beispiel: "ssl":
Wenn man das USE flag setzt, wird alles mit SSL Unterstützung kompiliert und gegen openssl gelinkt. Aber braucht man z.B. unbedingt MySQL mit SSL-Unterstützung, wenn man gleichzeitig "skip-networking" verwendet? Wenn mal ein openssl Sicherheits-Update ansteht, wird MySQL dann auch neu kompiliert, obwohl es wie gesagt SSL gar nicht verwenden
kann (es gibt natürlich Szenarien wo MySQL SSL benötigt, aber genau dafür ist dann ja die
"/etc/portage/package.use" gedacht). Anders herum führen globale USE flags wie mysql, perl, python... dazu, dass sämtliche Pakete mit entsprechender Unterstützung oder zusätzliche Pakete/Module installiert werden - die man in den seltensten Fällen braucht (z.B. Apache mit
mod_auth_mysql...).
Also ich mache das etwa so:
/etc/make.conf
Code: Select all
USE="hardened nptl utf8 -gnome -gtk -gtk2 -ipv6 -java -kde -qt -quicktime -X"
/etc/portage/package.use
Code: Select all
dev-db/mysql -* extraengine readline
dev-lang/php -* apache2 bcmath cli crypt ctype dom fastbuild gd gif hash iconv imap iodbc jpeg memlimit mhash mime mysql nls odbc pcre pear png readline session simplexml ssl soap spl sqlite truetype xml xmlreader xmlwriter zlib
dev-php5/pecl-apc mmap
dev-util/subversion -* apache2 bash-completion nls python zlib
mail-mta/postfix -* pam
net-www/apache -* apache2 mpm-prefork ssl
www-servers/lighttpd php ssl
www-apps/trac -* cgi silvercity sqlite
Ich verwende -* um möglichst schlanke Programme zu erhalten (und möglichst wenig Abhängigkeiten, die globalen USE flags werden in diesem Fall gar nicht mehr berücksichtigt!). Das mag für den ein oder anderen vielleicht zu mühselig sein - dann lässt man das einfach weg, und fügt lediglich noch die USE-flags hinzu, die bei
emerge -pv <PAKET> eben noch fehlen. Ich finde das so übersichtlicher und flexibler ;-)
Sonst nochmal Kompliment, wirklich gute Arbeit!
PS: AFAIK wurde in
dev-db/mysql "innodb" durch "extraengine" ersetzt.