globale "USE" Flags - oder warum wird für freebsd-doc-en X mitinstalliert?

Marlboro

BSD Frischling
Hallo Forum,

ich habe mir gerade FreeBSD 8 auf einem alten Notebook installiert. Bin bei FreeBSD immer noch in der Lernphase - wollte es deswegen auf einem Notebook installieren um mich täglich damit auseinander zu setzen.

Sinn war es eigentlich das System "schlank" zu halten. X sollte fürs erste garnicht installiert werden.

Ich komme aus dem Gentoo-Lager (ein Meta-Linux das einige Ports Konzepte übernommen hat)... dort gab es USE-Flags. Gibt es sowas in FreeBSD auch?
Man konnte zB mit USE="-X -kde -gnome usw" systemweit festlegen das alles ohne X (und den damit verbundenden Rattenschwanz) installiert wurde.

Ich habe mich doch sehr gewundert, warum bei freebsd-doc-en Xorg samt cups usw installiert werden muss... mit make config wurde lediglich HTML_SPLIT aktiviert.

Kann mich einer mal aufklären oder in die richtige Richtung schubsen?
 
Hi,

wenn ich dich richtig verstehe suchst Du die /etc/make.conf

Da kann sowas wie "WITHOUT_CUPS=yes" rein.

Gruß
Kai
 
Das mit der make.conf war wir schon bewusst.
Ich wollte eigentlich eher wissen ob es eine art Liste für die globalen Build Flags gibt.
Z.B. wenn ich etwas wie "WITHOUT_X=yes" setze, hält sich das Ports-System dran und verzichtet brav auf alles was nach Xorg riecht?
 
Ja, aber es ist recht schwierig bestimmte Abhängigkeiten rauszuhalten. Das geht nur so weit die jeweiligen Ports das unterstützen.
 
Wenn ich diese USE-Flags richtig verstehe, so gibt es unter FreeBSD nichts vergleichbares.
WITHOUT_X=yes gilt nur für die Ports, die man wahlweise mit und ohne X bauen kann. Das sind nur wenige, aber für die lohnt sich ein entsprechender Eintrag in der make.conf.
Ansonsten gibt es nur faule Tricks, um X aus Deinem System herauszuhalten. Z. B. könntest Du einen der untersten, grundlegendsten X-Ports "sabotieren", so daß er nicht mehr baut. Dann führt der Versuch, so etwas wie graphics/gimp zu installieren, zu einer Fehlermeldung. Oder Du gehst den brutalen Weg, installierst zunächst alles, was Dir gefällt, und machst dann von X ausgehend ein rekursives Löschen. Das ist aber ziemlich doof. :)

Gruß
Tronar
 
Verstehe ich jetzt nicht. Wenn man kein X will, dann installiert man einfach kein X.
Besonders wenn das System schlank sein soll, also die Zahl der Pakete überschaubar, ist das doch kein Problem.
 
Verstehe ich jetzt nicht. Wenn man kein X will, dann installiert man einfach kein X.
Besonders wenn das System schlank sein soll, also die Zahl der Pakete überschaubar, ist das doch kein Problem.
Dann mußt Du Dich halt bei jedem einzelnen Port, den Du installierst, immer erkundigen, ob er X mitbringt oder nicht. Ein ständiges "make fetch-recursive-list" ist auch auf "überschaubaren" Systemen mühsam. Wie er schrieb, steckt ja gerade die X-Abhängigkeit in Ports, bei denen man es nicht erwartet, etwa freebsd-doc-en.
Man könnte natürlich versuchen zu automatisieren:
alias herdamit 'make fetch-recursive-list | grep -i xorg || make install'
 
Wenn man ein Programm installieren will und sich eben dieses Programm unter FreeBSD nicht ohne X installieren lässt, bringt es einem herzlich wenig dieses Programm einfach nicht zu installieren.
Ganz kurz gesagt - nein, das FreeBSD Portssystem bringt nicht die selbe Flexibilität wie die der USE-Flags unter Gentoo, es ist ein Alleinstellungsmerkmal von Gentoo.
Wenn die Anforderung darin besteht, Programm n zu installieren, aber kein X muss halt das System genutzt werden, dass diese Anforderung erfüllt.
 
AFAIK genauso wie FreeBSD... wenn eine Abhängigkeit nicht optional sondern benötigt ist, wird sie installiert.
 
Gentoo hat sehr wohl das "-X" Useflag. Klar, bei gimp macht es natürlich keinen sinn, bei anderen sachen schon. Prominente Beispiele sind zB CUPS, ImageMagick usw... es ging ja eigentlich auch nicht darum zB Gimp ohne GUI zu kompilieren... letztes Beispiel war doc-freebsd: Hatte Abhängigkeit zu ghostscript; gs zu cups; cups zu X uswusf; (nur sinnbildlich gesprochen). Es ging mir einfach nur darum bestimmte features aus dem system raus zu halten (weil nicht benötigt).

Nächstes Beispiel wird VirtualBox sein: Es lässt sich prima headless betreiben: ich bin gespannt ob ich es unter FreeBSD hingebogen bekomme, VBox ohne X an den start zu bekommen.

Jedenfalls erstmal Dank an alle für die Antworten :-)
 
Gentoo hat dieses USE-Flag gar nicht, weil es gimp ohne gui nicht gibt und es ohne diese Unterstützung sinnlos wäre.

Ich weiss nicht, ob Gentoo Gimp ohne x installieren kann. Gimp kann man aber tatsächlich ohne Gui starten und das ist auch für Stapelverarbeitungen sehr sinnvoll. Optionen -i, --batch-interpreter, und -b
Früher gabs da mal ein eigenes Binary für.
 
Generell könnten die WITH_ und WITHOUT_ Flags in FreeBSD die gleiche Funktion erfüllen, gäbe es eine zentrale Liste von empfohlenen Flags und kochte nicht jeder Port seine eigene Suppe.
 
Ok. Also richtet man sich am besten nach den "well known" Flags (wie zB WITHOUT_X11 usw) sollte aber drauf gefasst sein das in einem anderen Port vllt. WITHOUT_XORG zum gewünschten Effekt führt ?!?

Klingt erstmal sub-optimal. Kann mir jedoch vorstellen, dass es einem zu mehr Sorgfalt beim planen und aufsetzen eines Systems "zwingt". Von daher evtl. doch nicht soooo schlecht. Man muss halt nur das positive dabei sehen ;-)
 
Zurück
Oben