Verschiedene Fragen zu Programm de-/installationen

BeNeDeLux

Wissensbegierig
Hallo Zusammen,

ich beschäftige mich grad wieder mit FreeBSD und möchte mehr damit machen. Es geht aktuell um das Thema Programm installation und deren deinstallation. Ich lese auch schon im Wiki aber so schlüssig ist es noch nicht für mich. Da ich im Arbeitsumfeld viel mit Linux besonders mit Debian zu tun habe bin ich da vielleicht auch etwas verwöhnt ?! :rolleyes:

1.) Wenn Programme aus den Ports kompiliert sind, werden diese dann durch ein:
Code:
# freebsd-update fetch
# freebsd-update install
berücksichtigt und gefixt wenn ein Bug/Fehler drin ist ?
Oder sind nur Programme betroffen die aus den pre-Packages installiert wurden ?

2.) Werden beim kompilieren aus den Ports die abhänigkeiten geprüft ?
So weit ich gesehen habe ja, aber sicher war ich mir nicht. Ging zu schnell am Bildschirm vorbei.

3.) Unter debian gab es "dpkg-reconfigure" welches dem "make config" in FreeBSD entspricht ?

4.) Bei einem "make deinstall" werden da auch Configs mit gelöscht ?
Das dabei keine Abhänigkeiten geprüft werden ist klar, aber wichtig sind mir die angepassten Configs.

5.) Ich sollte mehrere Programme installieren ~ 50
5.1) Diese selber zu kompilieren würde keinen sinn machen oder ? Schon allein der Zeitaufwand...
5.2) Kann ich wie unter Debian alle in eine liste schreiben und dann mit `cat` an "pkg_add -r" weitergeben ? Oder gibt es da eine eigene Lösung ?

Für ein paar Antworten zu den Fragen würde ich mich freuen :D

Greez BeNe
 
1) Hat gar nichts mit den Ports zu tun.
2) Nur ob sie vorhanden sind. Nicht ob die Abhängigkeiten auch aktuell sind. Es gibt aber software die das für dich regelt (portupgrade oder portmaster zum Beispiel).
3) Keine Ahnung was das Debian-Ding macht, also kann ich das nicht beantworten.
4) Nein, nur Beispieldateien.
5)
Code:
# xargs -o < liste pkg_add -r
sollte funktionieren.
 
1) nein. bei FreeBSD wird unterschieden zwischen base und third-party. ports sind third-party, und freebsd-update ist fürs base. portmaster ist das, was du suchst.

2) ja, sowohl bei den ports als auch bei paketen (pkg_add)

3) ja, so ungefähr, falls es configure-optionen gibt (allerdings nur bei den ports. packages lassen sich dadurch nicht beeinflussen, aber dafür kannst du dir dann eigene pakete aus den ports bauen)

4) nein, eigentlich nicht. die im ~/.* sowieso nicht, weil diese die software selber anlegt und nix mit dem system an sich zu tun hat.

5) pkg_add -r prog1 prog2 progN (warum willst du dafür ne extra datei anlegen?)

alle diese fragen beantwortet dir eigentlich auch das handbuch.
 
1.) Wenn Programme aus den Ports kompiliert sind, werden diese dann durch ein:
Code:
# freebsd-update fetch
# freebsd-update install
berücksichtigt und gefixt wenn ein Bug/Fehler drin ist ?
Nein
Oder sind nur Programme betroffen die aus den pre-Packages installiert wurden ?
Nein. freebsd-update aktualisiert nur das base system, niemals die ports. Die Trennung von base und ports ist ein fundamentaler Unterschied zu Debian.
2.) Werden beim kompilieren aus den Ports die abhänigkeiten geprüft ?
So weit ich gesehen habe ja, aber sicher war ich mir nicht. Ging zu schnell am Bildschirm vorbei.
Ja.
3.) Unter debian gab es "dpkg-reconfigure" welches dem "make config" in FreeBSD entspricht ?
Nein. "make config" wirkt sich nur bei der Installation aus, nicht während des Betriebs. Ein Äquivalent zu dpkg-reconfigure gibt es nicht.
4.) Bei einem "make deinstall" werden da auch Configs mit gelöscht ?
Das dabei keine Abhänigkeiten geprüft werden ist klar, aber wichtig sind mir die angepassten Configs.
"make deinstall" entspricht pkg_delete und dabei werden sehrwohl Abhängigkeiten geprüft. Man kann eine Löschung natürlich mit -f erzwingen.
5.) Ich sollte mehrere Programme installieren ~ 50
5.1) Diese selber zu kompilieren würde keinen sinn machen oder ? Schon allein der Zeitaufwand...
Die Pakete für das jeweilige RELEASE werden nicht aktualisiert, auch bei Sicherheitslücken nicht. Wieder ein Unterschied zu Debian. Es gibt die Pakete für STABLE, die bei den build Tests abfallen. Ob die auf einem älteren RELEASE laufen, ist eine andere Frage.

5.2) Kann ich wie unter Debian alle in eine liste schreiben und dann mit `cat` an "pkg_add -r" weitergeben ? Oder gibt es da eine eigene Lösung ?
Die man page sagt: Ja. Aber ich habe das nie ausprobiert; benutze sowieso keine packages.

Fazit:
Du mußt Dir die Trennung von base und ports unbedingt klar machen. Im Gegensatz zu den Linux-Distributionen gibt es das FreeBSD Grundsystem. Das ist der Kram, der in subversion auf den Servern liegt und von dem es releases gibt. Zusätzlich gibt es den ports tree, mit dessen Hilfe man Fremdsoftware auf FreeBSD installieren kann. Grundsystem und ports tree werden im Wesendlichen getrennt von einander entwickelt (abzüglich ports freeze, stable packages und unterstützten branches). Es gibt einige Software, die sich sowohl in base als auch in den ports befindet.


MfG
Michael Krauss
 
Das ging jetzt aber fix! Danke euch allen erstmal.
Es gibt aber software die das für dich regelt (portupgrade oder portmaster zum Beispiel).
Genau, über portmaster und co. habe ich auch schon im Handbuch gelesen.
Code:
# xargs -o < liste pkg_add -r
Danke, das hat geklappt
5) pkg_add -r prog1 prog2 progN (warum willst du dafür ne extra datei anlegen?)
Weil ich das ganze auf mehreren Servern installieren sollte und ich nicht immer alles abtippen möchte. Paste & Copy wurde auch gehen aber so finde ich es besser.
alle diese fragen beantwortet dir eigentlich auch das handbuch.
Richtig, da lese ich auch schon eine weile, aber es werden z.B. drei Programme für ein und die selbe sache beschrieben(portupgrade, portmanager, portmaster) und teilweise ist es halt echt das falsche verstehen des Artikels bzw denke mal das es so sein wird wie ich denke. Ein Handbuch kann ich nix fragen :o Lese aber trotzdem eifrig weiter.
freebsd-update aktualisiert nur das base system, niemals die ports. Die Trennung von base und ports ist ein fundamentaler Unterschied zu Debian.
Allerdings ein Unterschied. Um es nochmals zusammenzufassen.
Es gibt das:

a.) Basesystem

  • welches ich mit pkg_* die Packages verwalten (installieren, löschen..) kann und mit
  • freebsd-update fetch (holen)
  • freebsd-update install auf dem laufenden halte
b.) Ports

  • welche ich mit portupgrade, portmanager, portmaster oder was auch immer noch verwalten und auf dem laufenden halte
  • und selber kompiliert werden müssen
Ist das soweit richtig ?

Wenn ich jetzt etwas über das Basesystem mit pkg_add installiere, sagen wir mal einen WebServer (Apache22) mit MySQL-Server
und hier später eine neu Version erscheint. Bekomme ich diese ja dann über freebsd-update fetch/update auf den Server ?

Und beim Kompilieren ? Hole ich die neusten Änderungen z.B. mit portmaster und dann ?
Ich sollte ja dann eine Liste haben was aktuell auf meinem Server in Version x.y läuft und neu kompilieren. Dazu wäre dann portaudit gedacht ?
Grundsystem und ports tree werden im Wesendlichen getrennt von einander entwickelt (abzüglich ports freeze, stable packages und unterstützten branches).
In welchen Zyklen wird denn das Grundsysem upgedatet bzw. die Packages da darin ? Weil ich das in der manpage von freebsd-update gelesen habe:
Code:
the FreeBSD Security Team only builds updates for
     releases shipped in binary form by the FreeBSD Release Engineering Team,
     e.g., FreeBSD 6.1-RELEASE and FreeBSD 6.2-RC1, but not FreeBSD 6.2-STABLE
     or FreeBSD 7.0-CURRENT.
Ich werde mich da heute abend mal noch weiter rein lesen... :confused:
Habe vorher auch schon mal versucht Apache22 mit php5 zum laufen zu bringen.
Der Apache läutf und bei dem Versuch php5 auf das System zu bringen mittels pkg_add -r bekomme ich folgenden Fehler:
Code:
[root@freebsd ~/trunk/docs/FreeBSD]# pkg_add -r php5
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.1-release/Latest/php5.tbz... Done.
pkg_add: warning: package 'php5-5.2.8' requires 'libxml2-2.6.32', but 'libxml2-2.7.2_1' is installed
Heißt für mich das ich schon was versaut habe da ja mein aktuelles Packet neuer ist als das was benötigt wird! Aber wie kann das jetzt sein ?
Mir geht es hier jetzt nur um php5 sondern generell wenn solche Versionsunterschiede sind. Mit -force komme ich leider auch nicht drüber weg.

Ich versuche wirklich mir Mühe zu geben aber da ist noch viel zu machen...
Unix != Linux

Greez BeNe
 
Um es nochmals zusammenzufassen.
Es gibt das:

a.) Basesystem

  • welches ich mit pkg_* die Packages verwalten (installieren, löschen..) kann und mit
  • freebsd-update fetch (holen)
  • freebsd-update install auf dem laufenden halte
b.) Ports

  • welche ich mit portupgrade, portmanager, portmaster oder was auch immer noch verwalten und auf dem laufenden halte
  • und selber kompiliert werden müssen
Ist das soweit richtig ?
Nein, Du hast die pkg tools falsch eingeordnet. Die gehören auch zu den ports. Der Rest stimmt. Die Pakete, die auf den Installationsmedien enthalten sind, gehören nicht zum Basissystem. Das ist einfach vorkompilierte Software von einem snapshot der Ports.

Nach der Installation gibt es zwischen dem Port und seinem Paket keinen Unterschied mehr. Die pkg tools werden auch für die installierten Ports verwendet.

Die Pakete sind vor allem dann nützlich, wenn Du viele FreeBSD Installationen parallel verwalten mußt. Dann baust Du auf einer Maschine alle Ports, die Du installieren willst mit "make package"; anschließend kopierst Du die Pakete auf die anderen Rechner, oder setzt einen FTP Server damit auf.

Es gibt kein offizielles highlevel Verwaltungstool für die Ports. Aber zumindest gibt es in /usr/ports/UPDATING Hinweise für portmaster und portupgrade. Nimm also am Besten eines von den beiden.

Generell gibt es eine Aufteilung zwischen base und ports im Dateisystem. Alles was unter /usr/local liegt, kommt aus dem Ports System. Alles andere aus dem Basissystem.

Wenn ich jetzt etwas über das Basesystem mit pkg_add installiere, sagen wir mal einen WebServer (Apache22) mit MySQL-Server
und hier später eine neu Version erscheint. Bekomme ich diese ja dann über freebsd-update fetch/update auf den Server ?

Und beim Kompilieren ? Hole ich die neusten Änderungen z.B. mit portmaster und dann ?
Ich sollte ja dann eine Liste haben was aktuell auf meinem Server in Version x.y läuft und neu kompilieren. Dazu wäre dann portaudit gedacht ?
Ein Beispiel ist vieleicht einfacher. So fahre ich Updates:
Basissystem:
  • freebsd-update fetch
  • freebsd-update install
Ports:
  • portsnap fetch update
  • portmaster -a

Portaudit verändert das System (absehen von seiner eigenen Datenbank) gar nicht. Es wirft nur die Namen von Paketen mit Sicherheitslücken aus.

In welchen Zyklen wird denn das Grundsysem upgedatet bzw. die Packages da darin ?
Es gibt keine festen Releasezyklen. Erfahrungsgemäß 2 Minor Versionen pro Jahr.
Es gibt irgendwo auch eine Übersicht.

Die Ports sind, wie sagt man so schön, Rolling Release. Es gibt nur einen einzigen, gemeinsamen ports tree für FreeBSD 6, 7 und 8. Du kannst also auch auf einem älteren Basissystem aktuelle Software aus den ports installieren.

Sobald Du die Trennung von base und ports verstanden hast, solltest Du dir die Entwicklung des Basissystems in den unterschiedlichen branches ansehen. Aber Vorsicht, es gibt verdammt viele davon.
Code:
the FreeBSD Security Team only builds updates for
     releases shipped in binary form by the FreeBSD Release Engineering Team,
     e.g., FreeBSD 6.1-RELEASE and FreeBSD 6.2-RC1, but not FreeBSD 6.2-STABLE
     or FreeBSD 7.0-CURRENT.
Die STABLE und CURRENT branches betreffen Dich nicht. Bis Du weißt, was Du tust, verwendest Du nur Releases.

Ich werde mich da heute abend mal noch weiter rein lesen... :confused:
Habe vorher auch schon mal versucht Apache22 mit php5 zum laufen zu bringen.
Der Apache läutf und bei dem Versuch php5 auf das System zu bringen mittels pkg_add -r bekomme ich folgenden Fehler:
Code:
[root@freebsd ~/trunk/docs/FreeBSD]# pkg_add -r php5
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-7.1-release/Latest/php5.tbz... Done.
pkg_add: warning: package 'php5-5.2.8' requires 'libxml2-2.6.32', but 'libxml2-2.7.2_1' is installed
Heißt für mich das ich schon was versaut habe da ja mein aktuelles Packet neuer ist als das was benötigt wird! Aber wie kann das jetzt sein ?
Mir geht es hier jetzt nur um php5 sondern generell wenn solche Versionsunterschiede sind. Mit -force komme ich leider auch nicht drüber weg.
Ich sehe da kein Problem, solange sich die ABI von libxml2 nicht verändert hat, schadet die neuere Version nicht. Naja, ich weiß schon warum ich mich von packages fern halte.

Zu entscheiden, wann eine Version zu neu ist, kann sehr kompliziert sein. Wenn die ABI einer Bibliothek inkompatibel verändert wurde, dann gibt es Probleme. Wann das der Fall ist, hängt von der Art der Veränderung, der Programmiersprache, dem verwendetem Compiler und natürlich vom Luftdruck ab. Das hat aber mit FreeBSD direkt nichts zu tun.
 
Nein, Du hast die pkg tools falsch eingeordnet. Die gehören auch zu den ports. Der Rest stimmt. Die Pakete, die auf den Installationsmedien enthalten sind, gehören nicht zum Basissystem. Das ist einfach vorkompilierte Software von einem snapshot der Ports.
Ok, Ok - so macht das alles sinn!

Nach der Installation gibt es zwischen dem Port und seinem Paket keinen Unterschied mehr. Die pkg tools werden auch für die installierten Ports verwendet.
Habe ich verstanden. Vorteil ist das nicht alles extra kompiliert werden muss.

Es gibt kein offizielles highlevel Verwaltungstool für die Ports. Aber zumindest gibt es in /usr/ports/UPDATING Hinweise für portmaster und portupgrade. Nimm also am Besten eines von den beiden.
Genau das war eine Kernantwort. Wenn einer von Linux kommt dann ist das halt meistens der Fall, apt-get, emerge, yast...
Das beispiel war gut, Danke!

Es gibt keine festen Releasezyklen. Erfahrungsgemäß 2 Minor Versionen pro Jahr. Es gibt irgendwo auch eine Übersicht.

Die Ports sind, wie sagt man so schön, Rolling Release. Es gibt nur einen einzigen, gemeinsamen ports tree für FreeBSD 6, 7 und 8. Du kannst also auch auf einem älteren Basissystem aktuelle Software aus den ports installieren.
Hart :cool: War mir jetzt so auch noch nicht bewusst.
ich weiß schon warum ich mich von packages fern halte.
Wegen genau solchen Versionsproblemen ?
Aber wie genau z.B. gehts Du vor ? Angenommen ich setze auf einem RootServer FreeBSD auf. Wenn dann eine neue Version von PHP oder Apache rauskommt muss ich es ja kompilieren mit allen Modulen und unterstützungen. Wo der Zeitaufwand doch sicher nicht gerade ohne ist. Vorkompilierte packete gibt es ja so nicht kurz nach der erscheinung in dem Fall. Ich seh schon, learning by doing.

Vielen vielen Dank für deine Antworten und hilfreie Unterstützung!

Greez BeNe
 
Aber wie genau z.B. gehts Du vor ? Angenommen ich setze auf einem RootServer FreeBSD auf. Wenn dann eine neue Version von PHP oder Apache rauskommt muss ich es ja kompilieren mit allen Modulen und unterstützungen. Wo der Zeitaufwand doch sicher nicht gerade ohne ist. Vorkompilierte packete gibt es ja so nicht kurz nach der erscheinung in dem Fall.

Naja, die eigentliche Frage ist doch, ob du jedes kleine Update mitmachen musst. Wirklich notwendig ist ein Update doch nur dann, wenn es in der Vorgängerversion ein Sicherheitsproblem gab, das gefixt wurde, oder wenn die neue Version eine zusätzliche Funktion hat, die du brauchst und nutzen willst. Ein Update aus so ziemlich jedem anderen Grund ist ja im Wesentlichen nichts anderes als Versionitis. ;)

Gruß
 
Stimmt allerdings!
Wenn dann wegen der Sicherheit und neue features sind "nice to have" :belehren:
*BSD verfolgt ja was das angeht eine ganz andere ideologie wie z.B. Linux.
Das ist mitunter ein Grund warum mich das ganze dahinter interessiert.

Ich versuche mich jetzt nach wie vor immer noch auf meinem Desktop-PC und einem ESX Server mit FreeBSD.
Wobei die Installation von KDE4 auf meinem Desktop-PC ja schon seit stunden läuft und immer noch kein Ende in Sicht ist :o

Greez BeNe
 
es ist sinnvoll, vor einem update - sei es ports oder basissystem (sicherheitsfixes oder neue version (kommt beides auch über die announce mailingliste)) - in die entsprechende UPDATING zu schauen, /usr/src/UPDATING oder /usr/ports/UPDATING, ob es zu problemen kommen kann oder es irgendwo knallt aufgrund von neuen versionen. in den dateien wird es dann meistens beschrieben, auch, wie ein möglichst schmerzloser updateweg läuft.
aus eigener erfahrung möchte ich hinzufügen, dass ich mit portmaster besser zurechtkomme als mit portupgrade, was ich vorher verwendet habe. bei portupgrade wird halt noch eine datenbank nebenher geführt, die auch gepflegt werden will, wobei sich portmaster da im system selber bedient und sich auf die verlässt. hat beides seine vor- und nachteile ich kann jedenfalls nur von mir sagen, dass ich mit portmaster besser zurechtkomme. aber man sollte ja immer das nehmen, was sich am besten eignet (oder persönlich am besten anfühlt, aber ich schweife ab ;)).

viel erfolg
 
Ich bin jetzt auch schon mit portmaster vertraut und will es erstmal weiterhin nutzen.
Danke für die Tipps.

Was mir jetzt allerdings aufgefallen ist, wenn ich Software z.B. "htop" aus den Port kompiliere kann ich es nicht gleich danach ausführen -> command not found.

Wenn ich die Session aber abmelde bzw. zwischen user & root wechlse kann ich danach "htop" ausführen.
Die Manpage ich ist gleich nach der Installation/kompilieren da aber das Programm selber nicht !?
Gibt es eine Umgebungsvariable die aktualisiert werden muss oder ist das "reload" der Session normal/nötig ?

Greez BeNe
 
Versuche bitte folgendes:

Code:
rehash

Wenn dann immer noch "command not found" kommt dann überprüfe deine PATH Variable. Aber ich denke ein "rehash" wird reichen.

Gruß
xcvb
 
Das liegt an der Shell. Ich nehme an du hast noch die standardmäßige (t)csh in Gebrauch. In dem Fall kannst du den Pfad neu einlesen durch das Kommando "rehash".
 
Jup! Und schon funktioniert es :) Gleich mal merken - Danke!
Benutzt Ihr etwa eine andere shell als csh? Bash gibt es auch was ich gesehen habe.

Greez BeNe
 
Ich benutze auch die tcsh. Portupgrade kann übrigens mit dem Parameter -P Pakete zum Updaten verwenden.
 
/bin/tcsh und /bin/csh sind das gleiche Programm, per Hardlink zweimal aufrufbar. Je nach Aufrufname verhält es sich anders. /bin/csh macht daraus eine klassische Berkeley C Shell, /bin/tcsh die Tenex C Shell. Tenex - besser bekannt als TOPS-20, in was DEC es umbenannt hatte - war ein Betriebssystem der 70er und frühen 80er. Ist längst tot, doch die Funktionen der sehr guten Shell hat man in die CSH portiert und sie somit zu TSCH gemacht. Der Unterschied sind Dinge wie selektive Vergangenheit und die praktisch unbegrenzt programmierbare Autovervollständigung.
 
Danke für die Info zu den Shells. Aktuell treibe ich mich mit bash auf dem System rum, geht ganz gut weil auch das pwd immer angezeigt wird.

Was ich noch fragen möchte:
Wenn ich z.B. das aktuelle KDE4 aus meinen Ports kompilieren mochte oder ein andere Software,
dann kommen ja immer wieder bei einigen Paketen Optionen oder Module die aktiviert werden können (blauer Hintergrund mit checkboxen)
Hierfür gibt es keinen Parameter bei make für default einstellungen ?
Heißt ja immer so schön "make Befehl absetzten und Kaffeetrinken gehen".
Allerdings bleibt die Installation ja dann bei den Fragen immer stehen. Default macht jetzt in meinem Fall sinn weil ich eh nicht wüsste was ich alles aktivieren soll/muss.

Bleibt Ihr da etwa vor dem Rechner sitzen um alle 5-10min. die Fragen zu beantworten ?
Einen schnelleren weg um zu KDE4 oder andere größere Packete gibt es nicht oder ?
Bei Linux um das mal schnell zuvergleichen dauerte eine Installation unter Debian keine 30min.
Ok war schon ein fertiges Paket aber am Ziel bin ich schneller. Der Zeitaufwand unter *BSD ist doch für solche Sachen ist fast uninteressant oder ?!

Greez BeNe
 
Du suchst
Code:
make config-recursive
oder Du benutzt einfach portmaster.
Beides geht zuerst die Optionen aller zu installierender Ports durch, bevor die Kompilierorgie beginnt. Siehe dazu:
Code:
man ports
man portmaster
 
Danke für die Info zu den Shells. Aktuell treibe ich mich mit bash auf dem System rum, geht ganz gut weil auch das pwd immer angezeigt wird.

Das kann man auch bei der tcsh einstellen. So könnte man Beispielsweise folgende Variable in ~/.cshrc setzen:

Code:
set prompt="%B%n@%m%b: %~ %% "

Das würde dann folgenden Prompt liefern:

Code:
matze@lodoss: ~/Pictures %

Welche Optionen es da gibt kannst du in der Manpage von csh nachlesen (ziemlich weit unten irgendwo unter "Special shell variables").


Zu deinem anderen Problem kann ich nicht direkt was zu KDE sagen, weil ichs nicht benutze. Aber eigentlich müsste Portmaster so arbeiten, daß es die gesamte Config-Geschichte durchklimpert bevor es anfängt zu bauen. Insbesondere bei KDe könnte das ein paar Minuten dauern weils unmengen von Ports sind, die da installiert werden. Aber wenn das durch ist müsste die eigentliche Kompiliererei dann eigenständig durchlaufen.


Gruß
 
ich dachte auch immer, daß mir mit der bash vieles einfacher sei. Doch ich gebe zu, daß ich dazu gelernt habe. Mit der tcsh bin ich einfacher und schneller durch mit meinen Einstellungen und sie verwöhnt mich dann sogar noch mehr, als es die bash getan hatte.
Das mit prompt und dem aktuellen Verzeichnis dort ist nur eine Möglichkeit. Die autovervollständigung und history und diese auch selektiv, das willst du bald nicht mehr missen.

Es gibt noch die Möglichkeit, durch einen Eintrag in der make.conf immer ja zu diesen Fragen zu sagen, was aber nicht immer gut ist. Und dann nehme ich inzwischen sehr gerne die /var/db/ports von einem System auf das nächste. Damit kann ich dann die einmal gefundenen Optionen wieder benutzen und die stehen dann zur Verfügung, wenn/wann ich den port denn bauen will, es sei denn, es kommen halt neue Optionen hinzu.
 
Zurück
Oben