BlogBlog ÜbersichtjailscriptportsoptFreeBSDLinksThermoskanne

X.Org 7.2 Upgrade mit portmaster

Seit dem Wochenende ist X.Org 7.2 im Portsbaum vorhanden. In ports/UPDATING wird für die Aktualisierung die Benutzung von portupgrade-devel empfohlen. Das Aktualisieren mit portmaster hat hier jedoch auch mit folgendem Vorgehen auf zwei Systemen funktioniert, allerdings waren auf diesen Systemen kein KDE, Gnome oder Ähnliches installiert. Dieses Vorgehen ist jedoch nicht als eigentliche Anleitung gedacht, sondern eher dazu, eventuelle Probleme, die bei einer angefangenen Aktualisierung mit portmaster entstanden sind, zu beheben. Auf der ports@-Mailingliste wird vor einem Update mit portmaster abgeraten.

Zuerst wird der Portsbaum auf den aktuellsten Stand gebracht:

# portsnap fetch update

Da die neuste Version von portmaster eine abgebrochene Aktualisierungen wiederaufnehmen kann, wurde das Upgrade nicht mit der Version aus den Ports, sondern mit der neusten Version von portmaster gemacht:

# cd /root && fetch http://dougbarton.us/portmaster
# chmod 755 portmaster

Auf Systemen vor 6.2-RELEASE muss noch folgende Zeile in die /etc/make.conf eingefügt werden:

X11BASE=${LOCALBASE}

Da OpenOffice.org nicht neu gebaut werden soll, wurde es zuerst deinstalliert:

# pkg_delete de-openoffice.org\*

Nun kann das Aktualisieren gestartet werden, dazu muss zuerst die XORG_UPGRADE Variable gesetzt werden und danach kann das Update gestartet werden:

# setenv XORG_UPGRADE yes
# /root/portmaster -b -a

Das Upgrade brach hier zwei mal ab. Das erste Mal reichte ein Neustarten von portmaster:

# /root/portmaster -b -a -R

Das zweite Mal liess sich Thunderbird nicht aktualisieren, also wurden Thunderbird und alle davon anhängigen Ports deinstalliert. Dieses Problem wurde jedoch unterdessen im Portsbaum behoben. Nach dem Deinstallieren konnte das Upgrade fortgesetzt werden.

Falls vor dem Update der Meta-Port x11/xorg nicht installiert war, werden evtl. nicht alle benötigten X.Org 7.2 Komponenten installiert. Also muss dieser Port nachträglich installiert werden:

# cd /usr/ports/x11/xorg && make install clean

Nun können alle noch vorhandenen Dateien unter /usr/X11R6 nach /usr/local verschoben werden. Dazu kann ein vorhandenes Skript benutzt werden:

# sh /usr/ports/Tools/scripts/mergebase.sh

Sind Dateien sowohl unter /usr/X11R6 als auch unter /usr/local vorhanden, werden diese angezeigt und diese Konflikte müssen manuell gelöst werden. Danach kann das Skript nochmals gestartet werden.

Anschliessend kann eine neue xorg.conf generiert werden:

# mv /etc/X11/xorg.conf /etc/X11/xorg.conf.69
# Xorg -configure

Nun kann X.Org und die neue Konfiguration getestet werden:

# X -config /root/xorg.conf.new

Startet der X-Server, kann die neu generiert xorg.conf verwendet werden:

# mv /root/xorg.conf.new /etc/X11/xorg.conf

Danach sollte die graphische Oberfläche wieder funktionieren. Nun können OpenOffice.org und die Ports, die sich nicht aktualisieren liessen und deshalb deinstalliert wurden, wieder installiert werden.

Möchte man beim Upgrade allerdings auf Nummer sicher gehen, so sollte man die Anweisungen aus ports/UPDATING befolgen!

UPDATE 28.05.2007: Auf ports@ wurde nun der offizielle Weg des Upgrades mit portmaster vorgestellt: http://marc.info/?l=freebsd-ports&m=118025616904661&w=2

Comments (4)  Permalink

Comments

Nornagest @ 22.05.2007 08:57 UTC
Anstatt OpenOffice zu deinstallieren, reicht auch ein
touch /var/db/openoffice*/+IGNOREME
Beat @ 23.05.2007 16:07 UTC
Danke für den Tipp, das mit dem +IGNOREME kannte ich gar nicht. Es war jedoch trotzdem mal an der Zeit OpenOffice.org zu aktualisieren...
Nornagest @ 01.06.2007 17:35 UTC
Inzwischen kann portmaster sogar -x, was bestimmte Ports zumindest als Abhängigkeiten vom Bauen ausschließt.

Übrigens müsste der Pfad da oben /var/db/pkg/openoffice*/ heißen. :)

Ich hab mich selbst immernoch nicht durchgerungen mein OO neu zu bauen, vielleicht warte ich tatsächlich noch auf 2.3.
doesn't matter @ 06.06.2007 13:23 UTC
Statt OOo zu deinstallieren oder mit IGNOREME zu taggen, kann man es auch in der /usr/local/etc/pkgtools.conf eintragen, damit es ignoriert wird.
No new comments allowed (anymore) on this post.