Stretch - Problème d'installation avec apt-get (paquets non-nécessaires)

Bonjour,

À chaque fois que je veux installer quelque chose avec Stretch, j’ai ce message :
# apt-get upgrade
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Calcul de la mise à jour… Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
clipit coinor-libcbc3 coinor-libcgl1 coinor-libclp1 coinor-libcoinmp1v5
coinor-libcoinutils3v5 coinor-libosi1v5 cracklib-runtime deluge
deluge-common deluge-gtk espeak-ng-data ethtool fonts-linuxlibertine
fonts-sil-gentium fonts-sil-gentium-basic galculator giblib1
gir1.2-atspi-2.0 gir1.2-clutter-1.0 gir1.2-clutter-gst-3.0 gir1.2-cogl-1.0
gir1.2-coglpango-1.0 gir1.2-evince-3.0 gir1.2-gst-plugins-base-1.0
gir1.2-gstreamer-1.0 gir1.2-gtkclutter-1.0 gir1.2-gtksource-3.0
gir1.2-javascriptcoregtk-4.0 gir1.2-json-1.0 gir1.2-soup-2.4
gir1.2-webkit2-4.0 gir1.2-wnck-3.0 gnome-accessibility-themes
gnome-disk-utility gnome-orca gnome-screenshot gnome-settings-daemon
gnome-sushi gnome-system-tools gnome-themes-standard
gnome-themes-standard-data gpicview gtk2-engines gtk2-engines-pixbuf
gucharmap gvfs-fuse hyphen-en-us iio-sensor-proxy leafpad libao-common
libao4 libappindicator1 libatk-adaptor libaudio2 libboost-chrono1.62.0
libboost-filesystem1.62.0 libboost-iostreams1.62.0 libboost-python1.62.0
libboost-random1.62.0 libboost-system1.62.0 libbrlapi0.6 libbsh-java
libcdr-0.1-1 libcrack2 libdbusmenu-glib4 libdbusmenu-gtk4 libdotconf0
libenca0 libespeak-ng1 libexempi3 libfm-data libfm-extra4 libfm-gtk-data
libfm-gtk4 libfm-modules libfm4 libfreehand-0.1-1 libgail-3-0 libgeoclue-2-0
libgeocode-glib0 libgjs0e libgnome-autoar-0-0 libgnome-autoar-common
libgtksourceview-3.0-1 libgtksourceview-3.0-common libgucharmap-2-90-7
libgweather-3-6 libgweather-common libid3tag0 libimlib2 libindicator7
libiptcdata0 libiw30 libkeybinder0 liblightdm-gobject-1-0 libmariadbclient18
libmenu-cache-bin libmenu-cache3 libmikmod3 libmozjs-24-0 libmspub-0.1-1
libmusicbrainz5-2 libmusicbrainz5cc2v5 libobrender32v5 libobt2v5 liboobs-1-5
liborcus-0.11-0 libpagemaker-0.0-0 libpcaudio0 libportmidi0
libpwquality-common libpwquality1 libqt4-dbus libqt4-declarative
libqt4-designer libqt4-help libqt4-network libqt4-script libqt4-scripttools
libqt4-sql libqt4-sql-mysql libqt4-svg libqt4-test libqt4-xml
libqt4-xmlpatterns libqt5script5 libqtassistantclient4 libqtcore4 libqtdbus4
libqtgui4 libreoffice libreoffice-avmedia-backend-gstreamer libreoffice-calc
libreoffice-draw libreoffice-gtk2 libreoffice-help-en-us libreoffice-impress
libreoffice-librelogo libreoffice-nlpsolver libreoffice-ogltrans
libreoffice-pdfimport libreoffice-script-provider-bsh
libreoffice-script-provider-js libreoffice-script-provider-python
libreoffice-wiki-publisher libsdl-mixer1.2 libsdl-ttf2.0-0 libsmpeg0
libsonic0 libspeechd2 libstemmer0d libtorrent-rasterbar9
libtracker-sparql-1.0-0 libupower-glib3 libuser1 libva-wayland1
libvisio-0.1-1 libwnck-3-0 libwnck-3-common libwnck-common libwnck22 libxdo3
libxklavier16 libxmmsclient-glib1 libxmmsclient6 libxres1 light-locker
lightdm lightdm-gtk-greeter lp-solve lxappearance lxappearance-obconf lxde
lxde-common lxde-core lxde-icon-theme lxde-settings-daemon lxhotkey-core
lxhotkey-data lxhotkey-gtk lxhotkey-plugin-openbox lxinput lxlauncher lxlock
lxmenu-data lxmusic lxpanel lxpanel-data lxrandr lxsession
lxsession-default-apps lxsession-edit lxsession-logout lxtask menu-xdg mpv
musescore-soundfont-gm mysql-common mythes-en-us nautilus nautilus-data
net-tools obconf openbox openbox-lxde-session p7zip p7zip-full pcmanfm
python-attr python-cffi-backend python-chardet python-click python-colorama
python-constantly python-cryptography python-dbus python-enum34 python-gi
python-glade2 python-gobject python-idna python-incremental python-ipaddress
python-libtorrent python-notify python-openssl python-pam
python-pkg-resources python-pyasn1 python-pyasn1-modules python-pygame
python-qt4 python-serial python-service-identity python-setuptools
python-sip python-six python-twisted-bin python-twisted-core
python-twisted-web python-wicd python-xdg python-zope.interface
python3-brlapi python3-louis python3-pyatspi python3-speechd python3-xdg
qdbus qt-at-spi qtchooser qtcore4-l10n rfkill rtmpdump scrot sdparm smplayer
smplayer-l10n smplayer-themes speech-dispatcher
speech-dispatcher-audio-plugins speech-dispatcher-espeak-ng
system-tools-backends timgm6mb-soundfont upower usermode wicd-daemon
wireless-tools x11-apps x11-session-utils xarchiver xbitmaps xbrlapi xdotool
xinit xmms2-core xmms2-plugin-alsa xmms2-plugin-id3v2 xmms2-plugin-mad
xmms2-plugin-vorbis xorg xsane xsane-common youtube-dl
Veuillez utiliser « apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

Autrement dit, si je fais “apt autoremove”, je suprrime quasiment tout mon système. Savez-vous d’où vient le problème ? Merci. :slight_smile:

C’est peut-être lié à la désinstallation de xscreensaver (vue sur l’autre fil) qui fait partie intégrante du bureau LXDE debian.

Yep, il y avait des chances, mais je l’ai réinstallé et ça ne change rien du tout. J’ai du mal à voir d’où vient le problème. :confused:

La suppression de xscreensaver a peut-être entraînée la suppression d’autre chose.

J’ai réparé en faisant :

 #apt-mark showauto | xargs apt-get install

Oh le bourrin !

Typiquement, un paquet supprimé est une dépendance d’un méta-paquet comme un environnement de bureau qui est donc supprimé aussi et laisse ses autres dépendances installées automatiquement orphelines.

Tu pouvais retrouver dans l’historique récent d’apt (/var/log/apt/history.log) quels paquets ont été supprimés, installés ou mis à jour.

Merde…C’était si sale que ça ? :smiley:

En fait, c’est apparu après avoir installé le paquet xserver-xorg-input-synaptics (pour avoir le touchpad actif qui ne fonctionnait pas avec le driver libinput)…Enfin, c’est ce que j’en déduis après avoir consulté l’historique.

J’aurais dû faire quoi, du coup ? :confused:

Oui car ces paquets ne seront plus jamais désinstallables automatiquement même lorsqu’ils ne seront plus nécessaires pour de bon.

Après avoir installé un paquet, c’est surprenant. Pas de suppression, vraiment ?

Ok ! Bon, ça m’apprendra.

Si, du coup, xserver-xorg-input-libinput. J’ai pensé à un remplacement, mais ça ne l’a pas fait. J’ai dû réinstaller xserver-xorg-input-libinput ensuite.

De toute façon, j’accumule les problèmes avec ce PC. Là, je viens de modifier /usr/share/X11/xorg.conf.d/70-synaptics.conf (le touchpad se désactivait après la sortie de veille) et depuis, le clavier ne répond plus. :smiley:

Ben voilà. C’est une dépendance de xserver-xorg-input-all qui est une dépendance de task-desktop qui est une dépendance de task-lxde-desktop. Tous ces méta-paquets ont donc dû être désinstallés en même temps et leurs dépendances installées automatiquement sont considérées comme n’étant plus nécessaires.

Réinstaller xserver-xorg-input-libinput n’y change rien, c’est seulement le méta-paquet de plus haut niveau task-lxde-desktop qu’il aurait fallu réinstaller, ou bien ses dépendances de premier niveau qu’il aurait fallu marquer comme noauto.

Bon à savoir, je me suis précipité. Merci pour l’explication. :slight_smile:

J’ai écris une rapide explication au sujet de ces soucis de méta-paquets, la voici pour la prochaine fois où cette situation se présentera :

L’explication est bonne, mais je trouve la solution proposée un peu cavalière :

Et la solution est tout aussi simple, il suffit de désigner les paquets
qu’on veut garder dans cette liste comme « installés manuellement »

“Il suffit”… Pas si simple en pratique de reconnaître les paquets qu’on veut garder parmi des dizaines voire centaines de paquets. Remonter les dépendances inverses peut également s’avérer laborieux. Si la suppression ne remonte pas à très longtemps, l’historique des suppressions de paquets me semble la meilleure piste.

Aussi, un détail que personne n’a l’air d’avoir souligné ni dans ce fil ni dans le truc&astuce est que apt-get affiche systématiquement les paquets qui vont être supprimés à cause des dépendances et demande confirmation par défaut. Cela m’étonne car voir apt-get me demander si je veux vraiment désinstaller des paquets comme task-desktop ou task-lxde-desktop serait de nature à m’inquiéter quelque peu.

ça doit pouvoir se gérer dans le fichier /etc/apt/apt.conf.d/01autoremove

Sur le modèle
{
NeverAutoRemove
{
"^firmware-linux.*";
"^linux-firmware$";
};

pourquoi ne pas ajouter par exemple task-lxde-desktop

Ce n’est pas le méta-paquet qui est sujet à l’autoremove mais ses dépendances. Au final ça risque de faire beaucoup.

Sur mon PC HP pas de carte Nvidia mais si je veux desinstaller Nouveau

root@debian:/# apt purge xserver-xorg-video-nouveau
Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
libreoffice-gtk2 system-config-printer xsane xsane-common
Veuillez utiliser « apt autoremove » pour les supprimer.
Les paquets suivants seront ENLEVÉS :
task-desktop* task-gnome-desktop* task-xfce-desktop* xserver-xorg-video-all* xserver-xorg-video-nouveau*
0 mis à jour, 0 nouvellement installés, 5 à enlever et 0 non mis à jour.
Après cette opération, 535 ko d’espace disque seront libérés.
Souhaitez-vous continuer ? [O/n]

Je me retrouverai aussi en slip :grinning:

C’est certain que cette gestion des dépendances est propice à la catastrophe

Oui. Je trouve stupide de mettre une dépendance forte de l’environnement de bureau sur les pilotes Xorg.