Pourquoi avertissement dpkg lors de mise à jour

Tu es sûr de ça ? À ma connaissance, dpkg ne mémorise pas quel paquet a créé quel répertoire dans ses informations d’état, et je n’en vois pas l’intérêt. Il me semble plus plausible que dpkg tente de supprimer un répertoire quand plus aucun paquet installé ne le mentionne puisqu’il a la liste des fichiers et répertoires de chaque paquet.

Quel rapport avec les scripts de post-installation des paquets ? Ce ne sont pas eux qui suppriment les répertoires vides.

Je m’étais abstenu d’intervenir quand j’ai vu l’histoire de l’usbmerge et buster totalement hors sujet pour une testing en me disant mais où ça va encore partir avant que le sujet n’atteigne 100 messages comme certains adorent les faire dériver pour papoter.
Je répondais à Valentin (voir le début du sujet, pour mémoire) qui utilise une testing sans connaître le comportement de base de dpkg.
Je me doutais bien que tu attendais une intervention pour relancer (j’ai du flair pour ça), redemander une précision, un super détail, un cheveu à recouper en quatre à n’en plus finir, et malheureusment je ne suis pas client pour ça. Désolé.
Non ce n’est pas ‹ dpkg › qui est un binaire qui stocke un historique d’installation, évidemment, mais le mécanisme apt/dpkg qui sait parfaitement ce qui a été créé par qui et par quoi, et qui vérifiera s’il peut supprimer un répertoire avec ou sans avertissement.
Ce sera tout pour moi. Merci.

Tes interventions dans cette discussion sont hors sujet ou fausses.

Hors sujet, les avertissements auraient aussi lieu si une telle mise à jour était faite dans stable ou par un simple « upgrade ».

Hors sujet, il s’agit du comportement intrinsèque de dpkg lui-même et non de scripts de post-installation.

Hors sujet en effet, tu le reconnais toi-même.

Et pourtant si, la fusion d’/usr est bien une des causes de ces avertissements.

Ce que j’ai mis en gras est faux. L’information que tel répertoire a été créé par l’installation de tel paquet n’est pas mémorisée. La seule information mémorisée est que P1 et P2 utilisent tous les deux le répertoire, donc ce répertoire est censé pouvoir être supprimé lorsque les deux paquets seront désinstallés, quel que soit l’ordre d’installation et de désinstallation.

Les avertissements cités dans le messagfe initial sont exclusivement la conséquence des trois facteurs suivants :

  • le comportement propre de dpkg (et non de scripts de post-installation ou suppression) qui tente de supprimer un répertoire lorsque le dernier paquet à qui il appartient est désinstallé
  • la mise à jour des paquets systemd et udev qui déplace des fichiers de /bin et /lib vers /usr/bin et /usr/lib
  • /lib qui est un lien symbolique pointant vers /usr/lib (/usr fusionné)

Pitoyable. « Le mécanisme », c’est dpkg. Quant à apt, il n’a rien à voir là-dedans, il ne s’occupe pas de ça.

Puisses-tu tenir parole.