Outils personnels
Vous êtes ici : Accueil Linux Gentoo Utilisation d'une Gentoo - Problèmes/Solutions - FAQ 27 - libpng-1.5.6, newuse et fin de 'gnome-cups-manager' (MàJ du 31/12/2011)
Navigation
Se connecter


Mot de passe oublié ?
 

27 - libpng-1.5.6, newuse et fin de 'gnome-cups-manager' (MàJ du 31/12/2011)

Par Freecrazy - Dernière modification 30/01/2012 16:35

Près de 2 mois après la dernière mise à jour, je voulais commencer l'année 2012 avec un micro à jour et pleinement fonctionnel. Et pour cette nouvelle année j'ai eu droit à tout je crois : plus de clavier ni souris, plus de wi-fi, problème avec Python v2 et v3, avec des 'lib' (libpng), avec des newuse ... enfin bref que du bonheur !

Faut-il encore répéter les séquences de mise à jour ? Oui ! alors voir la page : Mettre à Jour une Gentoo

La mise à jour de portage se passe sans problème.

1 news relative à libpng15 sur laquelle on reviendra très vite.

Non, là où cela coince c'est comme d'habitude à la mise à jour proprement dite :

 

1 - Error : The above package list contains packages which cannot be installed at the same time on the same system

Sans être un anglais pure souche, on comprend aisément que l'on a un souci. La sortie complète de mon 'emerge -uD world' est donnée ici, vous y trouverez d'ailleurs l'ensemble des problématiques de cette mise à jour.

Les paquets se bloquant les uns autres sont :

  • net-analyser/wireshark-1.6.0_rc1 bloque sa propre version 1.6.4
  • x11-plugins/enigmail bloque mail-client/thunderbird-8.0-r1

 En lisant cette page http://www.gentoo.org/doc/fr/handbook/handbook-x86.xml?full=1#blocked on lit qu'il faut soit renoncer à l'installation soit supprimer le paquet bloquant.

Donc ici la solution est assez simple, un  :

# emerge -C wireshark enigmail

et cela devrait passer (il ne faudra pas oublier de réinstaller ces 2 paquets une fois que tout fonctionnera correctement)

 

2 - The following USE changes are necessary to proceed (utilisation de --autounmask-write)

Dans la sortie complète de mon 'emerge -uD world', nous avons aussi :

The following USE changes are necessary to proceed:
#required by www-client/firefox-8.0, required by @selected, required by @world (argument)
=media-libs/libpng-1.5.6 apng
#required by x11-drivers/xf86-video-vmware-11.0.3,
 required by x11-base/xorg-drivers-1.11[video_cards_vmware],
 required by x11-base/xorg-server-1.11.2-r2[xorg],
 required by x11-drivers/xf86-video-glint-1.2.6
=x11-libs/libdrm-2.4.27 libkms

Use --autounmask-write to write changes to config files (honoring CONFIG_PROTECT).

Vous aurez compris que 2 USE sont manquants : apng et libkms.

L'option --autounmask-write est nouvelle (mi 2011 je pense), et son utilisation est expliquée ici

On retrouve la fameuse libpng-1.5.6 dont il est question dans la news. Mais occupons-nous d'abord des nouveaux USE et testons la nouvelle option --autounmask-write :

# emerge --autounmask-write =www-client/firefox-8.0

m'ajoute bien l'USE apng dans /etc/portage/package.use mais après un 'etc-update' quand même. (Pour libkms je l'ajouterai manuellement dans package.use : =x11-libs/libdrm-2.4.27 libkms)

Mais ensuite quand je lance

# emerge -uav =www-client/firefox-8.0

j'ai une impossibilité car libpng-1.5.6 ne peut s'installer car libpng-1.4.3 est requis pour dev-java/icedtea-bin-1.10.3

Qu'à cela ne tienne je désinstalle icedtea-bin-1.10.3 et ... c'est le b....l. En effet je ne peux toujours pas installer ni libpng-1.5.6, ni firefox du fait de gdk-pixbuf-2.24.0-r1 qui me bloque l'installation de libpng-1.5.6 et j'ai une liste relativement importante d'ebuild qui dépendent d'autres versions de libpng !!!

C'est le moment (oui, enfin disons qu'il n'est pas trop tard) de s'intéresser à la news sur :

 

3 - Mettre à jour libpng en la passant à la version 1.5.6 (upgrade to libpng15)

Remettons nous en mémoire ce que raconte cette news avec la commande 'eselect news read' (si vous l'avez déjà lue il vous faut donner son numéro que vous trouverez avec la commande 'eselect news list').

Je tente un :

# emerge -uav libpng

mais la réponse (voir aussi réponse complète) :

Calculating dependencies  ...... done!
[ebuild     U  ] media-libs/libpng-1.5.6 [1.4.8-r1] USE="apng* static-libs" 688 kB
[blocks B      ] <x11-libs/gdk-pixbuf-2.24.0-r1 ("<x11-libs/gdk-pixbuf-2.24.0-r1"
 is blocking media-libs/libpng-1.5.6)

Total: 1 package (1 upgrade), Size of downloads: 688 kB
Conflict: 1 block (1 unsatisfied)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

montre que l'on est encore devant une situation de blocage. Ici je n'ose pas supprimer gdk-pixbuf (paquet de x11-libs) et ce d'autant plus que la version installée est la 2.22.1-r2 et que c'est la 2.24.0-r1 qui bloque. Donc j'opte pour la commande :

# emerge -uav libpng -n gdk-pixbuf    // -n = --noreplace

 et là cela passe, comme le montre la sortie de cet emerge :

These are the packages that would be merged, in order:

Calculating dependencies  ..... done!
[ebuild     U  ] media-libs/libpng-1.5.6 [1.4.8-r1] USE="apng* static-libs" 688 kB
[ebuild     U  ] x11-libs/gdk-pixbuf-2.24.0-r1 [2.22.1-r2]
 USE="X introspection jpeg tiff -debug -doc -jpeg2k -test (-svg%*)" 1,149 kB
[blocks b      ] <x11-libs/gdk-pixbuf-2.24.0-r1
 ("<x11-libs/gdk-pixbuf-2.24.0-r1" is blocking media-libs/libpng-1.5.6)

Total: 2 packages (2 upgrades), Size of downloads: 1,837 kB
Conflict: 1 block

Would you like to merge these packages? [Yes/No]

La réponse Yes entraîne la mise à jour de libpng ET de gdk-pixbuf (pour s'en assurer vous pouvez aller voir /var/log/portage/elog/summary.log)

Ensuite je suis les indications de fin, à savoir :

# revdep-rebuild --library '/usr/lib/libpng14.so.14'

ce qui me (re)compile 24 paquets dont cairo (cité dans la news).

Une fois le revdep-rebuild terminé (que je relancerai une 2ième fois), il est considéré comme sûr de supprimer l'ancienne bibliothèque :

# rm '/usr/lib/libpng14.so.14'

Dans mon cas malheureusement le 'revdep-rebuild' se termine sur une erreur de Gnome. Erreur que je verrai plus tard après avoir relancé ma séquence de mise à jour.


4 - Fin de 'gnome-cups-manager', bienvenue à 'system-config-printer-gnome'

Et enfin dans la sortie complète de mon 'emerge -uD world', nous avions aussi :

!!! The following installed packages are masked:
- net-print/gnome-cups-manager-0.33-r2::gentoo (masked by: package.mask)
/usr/portage/profiles/package.mask:
# Pacho Ramos <pacho@gentoo.org> (21 Nov 2011)
# Unmaintained by upstream for ages, use
# app-admin/system-config-printer-gnome instead.
# Removal in 30 days. Bug #352952

Il est dit que 'net-print/gnome-cups-manager' n'est plus maintenu depuis longtemps, et qu'il vaut mieux le remplacer par 'app-admin/system-config-printer-gnome', ce que nous faisons de suite :

# emerge -va system-config-printer-gnome

ce qui m'installe de 12 nouveaux paquets ! Ensuite il ne reste plus qu'à supprimer 'gnome-cups-manager' par :

# emerge -Ca gnome-cups-manager

 

5 - Reprise de la séquence de mise à jour

116 paquets sont concernés. Tout se passe correctement jusqu'au 110ième qui me compile Thunderbird. En effet en revenant jeter un œil sur l'avancement des travaux je ne trouve plus ma fenêtre de Gnome-terminal et mon conky n'apparaît plus ?

En regardant dans les log et la version de Thunderbird installé il est clair que sa mise à jour s'est mal passée, mais que s'est-il passé exactement je n'en sais rien.

Dans un Eterm (ou xterm qui fonctionne aussi), je redémarre conky :

$ conky -d

Ensuite je désinstalle Thunderbird pour installer sa version binaire, soit les commandes :

# emerge -C thunderbird
# emerge -va thunderbird-bin

J'essaie une réinstallation de gnome-terminal

# emerge -va gnome-terminal

mais il ne fonctionne toujours pas.

Du coup je relance ma mise à jour, pour les 10 paquets restant :

# emerge -uDva world

Entre temps, je ne sais pourquoi (surchauffe, plus d'alimentation ?) mon micro s'est arrêté et au démarrage, mon interface graphique est sans clavier et sans souris, donc inutilisable ! J'essaie les commandes classiques (cf. Mettre à Jour une Gentoo ) mais cela ne change rien. Du coup j'en reviens à ma commande de mise à jour 'emerge -uDva world' qui cherchera à m'installer :

[ebuild   U  ] rox-base/mime-editor-0.6 [0.5-r2]
[ebuild   U  ] gnome-base/gvfs-1.6.7-r1 [1.6.7]

Mais j'ai de suite :

ERROR: rox-base/mime-editor-06  failed (install phase) :
    0distutils URI escape failed
.....
The specific snippet of code :
    feedname=$(0distutils -e "${src}") || die "0distutils URI escape failed";

En m'inspirant de cette page et de celle-ci qui donne le code de l'ebuild, j'ai lancé les commandes suivantes :

# cd /var/tmp/portage/rox-base/mime-editor-0.6/work/
# 0distutils -e mime-editor-0.6/MIME-Editor/MIME-Editor.xml
Fatal: No module named zeroinstall.injector.model
# 0distutils -u mime-editor-0.6/MIME-Editor/MIME-Editor.xml
http://rox.sourceforge.net/2005/interfaces/MIME-Editor

('0distutils -h' pour savoir à quoi correspondent les options. Voir aussi sur bugzilla https://bugs.gentoo.org/show_bug.cgi?id=395929 )

L'histoire des versions de Python évoquées dans les pages citées aurait du me mettre la puce à l'oreille. Mais à cet instant je suis un peu perdu. Donc je laisse de côté 'rox-base/mime-editor-06' et je vais voir ce qui se passe du côté de  'gnome-base/gvfs'.

 Je lance un

# emerge -uDv gvfs

en retour en fin de compilation j'obtiens :

Messages for package gnome-base/gvfs-1.6.7-r1:
  * In order tu use the new gvfs services, please reload dbus configuration
  * You may need to log out and log back in for some changes to take effect

Comme le man daemon-dbus indique : "SIGHUP will cause the D-Bus daemon to PARTIALLY reload its configuration file", j'opte pour un redémarrage.

Mais cette fois le réseau ne démarre pas et je n'ai toujours pas de clavier et de souris.

Je reprend la màj du début avec 'emerge --sync'

26 mises à jour et cela plante sur la 20ième 'sys-libs/db-4.8.30' qui me dit ne pas pouvoir appeler java-config, n'aurai-je pas upgradé python sans avoir lancer 'python updater'. Voilà qui rejoint mes problématiques précédentes.

# python updater
* Starting Python Updater...
* Main active version of Python : 2.7
* Active version of Python2: 2.7
* Active version of Python 3: 3.1
*   Adding to list : app-office/openoffice-bin:0
*   Adding to list : app-portage/mirrorselect:0
*   Adding to list : dev-java/javatoolkit:0
*   Adding to list : dev-python/pygtksourceview:2
*   Adding to list : dev-python/pyxf86config:0
*   Adding to list : dev-python/sancho:0
*   Adding to list : dev-vcs/git:0
*   Adding to list : net-analyser/nmap:0
*   Adding to list : rox-base/zeroinstall-injector:0
* emerge -Dv1 --keep-going {toutes les applis précédentes}

These are the packages that would be merge, in order:

Calculating dependencies... done!

emerge: there are no ebuilds to satisfy "dev-python/pyxf86config:0"
#

J'avoue que l'arrêt ma laisse perplexe ! alors que la pyxf86config.0.3.34-r2 est installé.

Du coup je reprends en manuel :

# emerge -Dv1 --keep-going app-office/openoffice-bin:0 app-portage/mirrorselect:0 //
dev-java/javatoolkit:0 dev-python/pygtksourceview:2

J'essaie la suite, mais outre pyxf86config:0 j'ai aussi nmap:0 dont l'ebuild n'existe pas. Donc :

# emerge -Dv1 --keep-going dev-python/sancho:0 dev-vcs/git:0 rox-base/zeroinstall-injector:0

Ensuite je passe directement à :

# emerge --depclean

qui me répond que des dépendances ne peuvent pas être complétement résolues du fait de paquets (en fait un seul ici) non installés :

virtual/rubygems[ruby_targets_ruby18] pulled in by :
    dev-ruby/ruby-pango-0.19.4
    dev-ruby/ruby-glib2-0.19.4
    dev-ruby/ruby-gdkpixbuf2-0.19.4
    dev-ruby/ruby-libglade2-0.19.4
    dev-ruby/ruby-atk-0.19.4
    dev-ruby/ruby-gtk2-0.19.4

Et on me conseille gentiment de lancer :

# emerge --update --newuse --deep --with-bdeps=y @world

Et c'est reparti pour 39 compilations dont 'sys-libs/db-4.8.30'

Mais cela ne change rien à ma sortie d''emerge --depclean', donc :

# emerge -vD ruby-pango ruby-glib2 ruby-gdkpixbuf2 ruby-libglade2 ruby-atk ruby-gtk2

qui me compile rubygem-1 ?! (j'avais fais avant un 'emerge -vD rubygems' qui à priori n'a as eu d'effet, du moins pas celui escompté)

Et cette fois tout passe, l''emerge --depclean' aussi (par un 'emerge --noreplace firefox' j'ai remis firefox-3.1 dans le set world afin qu'il ne soit pas supprimé) ainsi que le 'revdep-rebuild' qui me recompile tcpdump.

Tout à l'air en ordre, mais lorsque je lance 'startx' je l'ai toujours pas de clavier et de souris sous mon interface graphique, seule :

# emerge -1 $(qlist -IC x11-drivers)

me sortira de ce mauvais pas comme indiqué à ma page Mettre à Jour une Gentoo

Sous interface graphique, je réinstalle 'wireshark'. 'enigmail' ne peut l'être, je pense que c'est du au fait d'avoir installé 'thunderbird-bin'.

 

6 - Les derniers ajustements : la commande 'thunderbird-bin', l'affichage des pages man  

Tout à l'air de fonctionner : 'gnome-terminal', 'firefox' version 3.6.20 (puisque j'ai empêché la mise à jour à la version 8), 'rox', par contre 'thunderbird' ne se lance pas, et 'man' me sort en erreur 127 (sh: /usr/bin/less: Aucun fichier ou dossier de ce type).

  • Pour thunderbird c'est simple, comme j'ai installé le binaire au lieu d'avoir compilé les sources, il suffit de remplacer l'appel 'thunderbird' par 'thunderbird-bin' dans .fluxbox/menu et dans .fluxbox/keys pour les touches spéciales de mon Evo N600 (Cf. aussi 23 - Sous X mon clavier est en 'us' et non en 'fr' (ou le passage à xorg 1.9) paragraphe '3 - Et mes touches spéciales')
  • Pour le man, c'est facile il suffit d'installer less (disparu pourquoi ? je ne sais pas, je pensais que cela venait avec 'bash' ici en version 4.1_p9 mais non !) par un 'emerge sys-apps/less', mais cela me donne des pages avec plein d'ESC surlignés. Pour corriger cela il faut se rendre dans :
    # vi /etc/man.conf
    et ajouter comme il est dit l'option -c à TROFF, NROFF, JNROFF ("If you have a new troff (version 1.18.1?) and its colored output causes problems, add the -c option to TROFF, NROFF, JNROFF").
    Nota : Je n'ai pas d'appli 'troff', mais j'ai 'xditview' d'installé en version 1.0.2 qui est décrit comme "display ditroff output". En tout cas mon problème est résolu.
    Page man illisible

 

Et voilà tout est enfin OK.

Ah oui, j'allais oublier : j'ai parlé dans mon intro de problème WiFi, en fait ce n'était que ma carte Wi-Fi USB qui était mal enfichée !!!

Actions sur le document