web-dev-qa-db-fra.com

L'icône HPLIP SysTray est cassée, se bloque à chaque connexion - pourquoi?

J'utilise Ubuntu MATE 16.04.5 LTS avec toutes les mises à jour actuelles et HPLIP du référentiel officiel Ubuntu:

$ dpkg -l | grep hplip
ii  hplip       3.16.3+repack0-1   AMD64  HP Linux Printing and Imaging System (HPLIP)
ii  hplip-data  3.16.3+repack0-1   all    HP Linux Printing and Imaging - data files
ii  hplip-gui   3.16.3+repack0-1   all    HP Linux Printing and Imaging - GUI utilities (Qt-based)

$ apt-cache policy hplip-gui 
hplip-gui:
  Installed: 3.16.3+repack0-1
  Candidate: 3.16.3+repack0-1
  Version table:
 *** 3.16.3+repack0-1 500
        500 http://archive.ubuntu.com/ubuntu xenial/universe AMD64 Packages
        500 http://archive.ubuntu.com/ubuntu xenial/universe i386 Packages
        100 /var/lib/dpkg/status

Si j'essaie de trouver son fichier XDG, je reçois:

$ dpkg -L hplip-gui | grep "xdg.*desktop"
/etc/xdg/autostart/hplip-systray.desktop

Cela commence par la commande:

$ cat /etc/xdg/autostart/hplip-systray.desktop | grep Exec
Exec=hp-systray -x

Si je le lance manuellement, je reçois:

$ hp-systray -x

HP Linux Imaging and Printing System (ver. 3.16.3)
System Tray Status Service ver. 2.0

Copyright (c) 2001-15 HP Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Segmentation fault (core dumped)

L’intégrité du système est bonne - je n’obtiens aucune erreur de sortie de debsums --all --changed.

La question: pourquoi HPLIP Systray est-il bloqué et que dois-je faire pour que cela fonctionne à nouveau?

1
N0rbert

Tout d’abord, nous devons déterminer le type de fichier hp-systray:

$ which hp-systray 
/usr/bin/hp-systray
$ file $(which hp-systray)
/usr/bin/hp-systray: symbolic link to ../share/hplip/systray.py
$ file $(readlink -f $(which hp-systray))
/usr/share/hplip/systray.py: Python script, ASCII text executable

- donc c'est Python script.

Ensuite, en lisant le crash dump sur /var/crash/_usr_share_hplip_systray.py.1000.crash, nous pouvons déterminer ce qui suit. Le crashdump contient des références aux modules python installés par pip3:

...
ProcMaps:
...
 ... /usr/local/lib/python3.5/dist-packages/sip.so
 ... /usr/local/lib/python3.5/dist-packages/sip.so
 ... /usr/local/lib/python3.5/dist-packages/sip.so
 ... /usr/local/lib/python3.5/dist-packages/sip.so

Il faut donc supprimer le module sip problématique avec

Sudo pip3 uninstall sip

Il a résolu le problème HPLIP car il utilisera sip du package python3-sip.


Mais supprimer sip rompt ReText qui avait été installé à partir de pip3.
Pour résoudre ce problème, nous devons:

  • ajustez les dépendances ReText pour le faire fonctionner:

    Sudo -H pip3 install sip==4.18 PyQt5-sip==4.19.11 PyQt5==5.7 retext
    

    mais cette méthode ralentit l'édition du texte et le déplacement du curseur sur du matériel pas trop nouveau.

  • supprimez la version deb/APT de hplip comme décrit dans la autre réponse , puis installez ReText avec:

    Sudo -H pip3 install PyQt5==5.9.2 retext 
    

    Remarque: PyQt 5.9.2 est nécessaire pour le fonctionnement normal du rendu Chromium (WebKit) et la coexistence avec Spyder3.

1
N0rbert