Control: retitle -1 libglib2.0-dev: /usr/share/glib-2.0/gdb/*.pyc not removed if created Control: severity -1 minor Control: tags -1 + pending
On Fri, 30 Apr 2021 at 02:42:34 +0200, Christoph Anton Mitterer wrote: > Upon [purging libglib2.0-dev] there were some leftovers: > > Removing libglib2.0-dev:amd64 (2.66.8-1) ... > dpkg: warning: while removing libglib2.0-dev:amd64, directory > '/usr/share/glib-2.0/gdb' not empty so not removed > > l /usr/share/glib-2.0/gdb/ > total 25k > drwxr-xr-x 1 root root 38 Apr 30 00:44 . > drwxr-xr-x 1 root root 76 Apr 30 00:44 .. > -rw-r--r-- 1 root root 9,8k May 31 2015 glib.pyc > -rw-r--r-- 1 root root 11k May 31 2015 gobject.pyc Normally this does not happen: $ podman run --rm -it debian:sid-slim # apt update ... # apt upgrade ... # apt install libglib2.0-dev ... # apt purge libglib2.0-dev ... Removing libglib2.0-dev:amd64 (2.82.0-1) ... Processing triggers for libglib2.0-0t64:amd64 (2.82.0-1) ... No schema files found: doing nothing. # apt autoremove --purge (no warnings about /usr/share/glib-2.0/gdb here either) I believe the root cause for you having seen this warning is that you have run gdb *as root* to debug a program that uses GLib, which results in /usr/share/glib-2.0/gdb/*.py being byte-compiled as a side-effect. Normally, if you run gdb as an unprivileged user, this does not happen, because the unprivileged user doesn't have write access to /usr/share/glib-2.0/gdb. A reproducer: $ podman run --rm -it debian:sid-slim # apt update ... # apt upgrade ... # apt install libglib2.0-dev gdb ... # gdb --args gio cat /dev/null ... (gdb) run (gdb) exit # apt purge libglib2.0-dev ... Removing libglib2.0-dev:amd64 (2.82.0-1) ... dpkg: warning: while removing libglib2.0-dev:amd64, directory '/usr/share/glib-2.0/gdb' not empty so not removed I believe this can be resolved by migrating /usr/share/glib-2.0/gdb into libglib2.0-dev-bin or libgio-2.0-dev-bin package, and registering its contents with dh_python. smcv