Guida per l'aggiornamento a Gnome 2.12 John N. Laliberte Paolo Palana Questa guida illustra la maniera raccomandata per aggiornare la propria versione di GNOME a GNOME 2.12. Si assumerà che GNOME 2.12 faccia parte del ramo STABILE. GNOME 2.12 dovrebbe essere marcato stabile su tutte le architetture molto presto. 1.3 2006-01-21 Prima di cominciare.
Preparare l'ambiente.

Assicuriamoci di aver aggiunto hal, dbus e cairo alle nostre use flags. Se abbiamo intenzione di usare evolution-exchange bisognerà aggiungere anche kerberos e ldap.

Aggiornare Python.

Assicuriamoci di usare python 2.4. Se si è fermi alla versione 2.3 allora bisognerà procedere all'aggiornamento alla versione 2.4. Se non avete eseguito python-updater dopo la transizione a 2.4 è il caso di eseguirlo ora.

# emerge -av python
# python-updater
Alcune altre cose da controllare. Se abbiamo installato gnome-doc-utils bisogna fare il re-emerge. (ora dovreste avere la versione >= versione 0.4.1)
Si vuole che l'automount delle penne USB e altre cose funzionino correttamente? Guardate "Che cosa fare ora?" in questa guida.
Aggiornare a 2.12

Questa è la parte più divertente :) Aggiornare GNOME 2.12.

# emerge -av gnome

In alternativa, se non vi piacciono le cose pesanti:

# emerge -av gnome-light
Eseguire alcuni revdep-rebuild

Controlliamo se è necessario eseguire revdep-rebuild facendo:

# revdep-rebuild -p

E' possibile capire se è necessario eseguire revdep-rebuild perchè potrebbero essere elencati alcuni pacchetti. Per eseguirlo è sufficiente rimuovere il flag "-p".

Che cosa fare ora?

Aggiungere Il proprio utente al gruppo plugdev

Adesso usciamo dalla sessione corrente di GNOME e riavviamolo!

Volete che le cose si montino automaticamente quando le inserite?

Assicuratevi di aver aggiunto i flag use hal e dbus realmente.

Dovreste anche aggiungere il vostro utente al gruppo plugdev dopo che il gruppo sia stato creato dall'ebuild pmount. Altrimenti l'automounting non funzionerà. Dopo aver aggiunto il proprio utente al gruppo plugdev sarà probabilmente necessario riavviare la propria sessione. Si può controllare se già si è nel gruppo plugdev digitando id in un terminale.

E' suggerito l'uso di gamin al posto di fam. Per usare gamin, bisogna abilitare il supporto inotify nel kernel. Gamin supporta inotify, dnotify e file-polling Se si hanno problemi con gamin è comunque possibile utilizzare fam.

Se se ne vuole sapere di più sulla configurazione di gamin consultare http://www.gnome.org/~veillard/gamin/config.html <\note> Gamin non ha un initscript, quindi non bisogna aggiungerlo ad alcun runlevel.

L'opzione inotify è in "File systems -> Inotify file change notification support".

Se si sceglie di usare gamin e in predenza si usava fam è necessario seguire la seguente procedura:

# rc-update del famd
# emerge unmerge fam
# emerge -av gamin

Successivamente bisognerà aggiornare la propria macchina ricompilando il tutto con le nuove useflags usando --newuse. Un modo per fare ciò è emerge -uDav --newuse world.

# emerge -uDav --newuse world

Adesso bisogna avviare dbus e hal. E' necessario avviarli ogni volta che si riavvia il proprio computer.

# rc-update add hald default
# /etc/init.d/hald start

Non ci si dimentichi di aggiungere il proprio utente al gruppo plugdev in /etc/group.

Adesso si dovrebbe essere in grado di avviare gnome-volume-manager dalla linea di comando e inserendo una penna USB si noterà che aviene l'automount e che un'icona appare sul proprio desktop :)

Se si vuole cambiare il comportamento di gnome-volume-manager si avvii gnome-volume-properties da linea di comando. Questo dovrebbe avviare gnome-volume-manager se già non è avviato.

Problemi comuni di compilazione
Qualcun'altro ha avuto problemi simili?

Primo, il proprio errore è simile a qualcuno dei seguenti?

 make[2]: Entering directory
 `/var/tmp/portage/gnome-desktop-2.11.90/work/gnome-desktop-2.11.90/desktop-docs'
 Making all in fdl
 C/fdl.xml:603: parser error : Entity 'copy' not defined
         Copyright copy; YEAR YOUR NAME.
	                         ^
make[3]: Entering directory
`/var/tmp/portage/gnome-desktop-2.11.90/work/gnome-desktop-2.11.90/desktop-docs/fdl'
xsltproc -o fdl-C.omf --stringparam db2omf.basename fdl --stringparam
db2omf.format 'docbook' --stringparam db2omf.dtd "-//OASIS//DTD DocBook XML
V4.1.2//EN" --stringparam db2omf.lang C --stringparam db2omf.omf_dir
"/usr/share/omf" --stringparam db2omf.help_dir "/usr/share/gnome/help"
--stringparam db2omf.omf_in "`pwd`/./fdl.omf.in" `/usr/bin/pkg-config --variable
db2omf gnome-doc-utils` C/fdl.xml
compilation error: file C/fdl.xml line 15 element article
xsltParseStylesheetProcess : document is not a stylesheet
make[3]: *** [fdl-C.omf] Error 5
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2
 
Controllate su http://bugs.gentoo.org/103322 Se avete di questi problemi. In breve è necessario fare il re-emerge di gnome-doc-utils come detto in precedenza.
Traceback (most recent call last):
  File "/usr/bin/xml2po", line 34, in ?
      import libxml2
      ImportError: No module named libxml2
      make[2]: *** [de/file-roller.xml] Error 1
      make[2]: *** Waiting for unfinished jobs....
      Traceback (most recent call last):
        File "/usr/bin/xml2po", line 34, in ?
	    import libxml2
	    ImportError: No module named libxml2
make[2]: *** [es/file-roller.xml] Error 1
make[2]: Leaving directory
`/var/tmp/portage/file-roller-2.11.92/work/file-roller-2.11.92/help'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/file-roller-2.11.92/work/file-roller-2.11.92'
make: *** [all] Error 2
ACCESS DENIED  unlink:    /usr/share/xml2po/docbook.pyc
ACCESS DENIED  open_wr:   /usr/share/xml2po/docbook.pyc
ACCESS DENIED  unlink:    /usr/share/xml2po/docbook.pyc
ACCESS DENIED  open_wr:   /usr/share/xml2po/docbook.pyc
Nel primo caso probabilmente ci si è scordati di lanciare python-updater. Nel secondo caso probabilmente ci si è scordati di fare il re-emerge di gnome-doc-utils.
Che cosa fare se non si hanno errori relativi ai bugs precedentemente elencati?

Cercare su bugzilla in base al nome del proprio pacchetto per vedere se qualcunaltro ha aperto un bug simile. E' possibile eseguire una ricerca usando "ALL package-name" per cercare sia i bug aperti che quelli chiusi. Se non è possibile trovare una bug similare per favore apri un nuovo bug. Per fare questo seguire le istruzioni riportate di seguito.

Se vuoi sapere come aprire un bug, per favore consulta http://www.gentoo.org/doc/en/bugzilla-howto.xml

Si può anche cercare il gruppo gentoo gnome in #gentoo-desktop.