Okay, the summary is not accurate, I can remove it, but it takes some core things together with it, which is something unexpected. For example I really do not want to remove binutils, neither fedora-packager, nor gcc or vala. Is that really such a core package, that it cannot be removed on its own? # dnf remove elfutils-debuginfod-client Removing: elfutils-debuginfod-client x86_64 0.185-2.fc34 @updates 46 k Removing dependent packages: abrt-cli x86_64 2.14.6-3.fc34 @updates 0 abrt-desktop x86_64 2.14.6-3.fc34 @updates 0 anaconda-install-env-deps x86_64 34.24.9-1.fc34 @fedora 0 annobin x86_64 9.71-1.fc34 @updates 269 k binutils x86_64 2.35.1-41.fc34 @fedora 30 M elfutils-debuginfod-client-devel x86_64 0.185-2.fc34 @updates 8.9 k fedora-packager noarch 0.6.0.6-1.fc34 @updates 55 k flatpak-module-tools noarch 0.13-1.fc34 @fedora 7.5 k gcc x86_64 11.1.1-3.fc34 @updates 84 M gcc-c++ x86_64 11.1.1-3.fc34 @updates 30 M gobject-introspection-devel x86_64 1.68.0-3.fc34 @updates 13 M telepathy-glib-devel x86_64 0.24.2-2.fc34 @fedora 18 M telepathy-glib-vala noarch 0.24.2-2.fc34 @fedora 255 k vala x86_64 0.48.17-1.fc34 @updates 9.1 M Removing unused dependencies: abrt-addon-ccpp x86_64 2.14.6-3.fc34 @updates 405 k abrt-addon-kerneloops x86_64 2.14.6-3.fc34 @updates 92 k abrt-addon-pstoreoops x86_64 2.14.6-3.fc34 @updates 19 k abrt-addon-vmcore x86_64 2.14.6-3.fc34 @updates 46 k abrt-addon-xorg x86_64 2.14.6-3.fc34 @updates 62 k abrt-gui x86_64 2.14.6-3.fc34 @updates 102 k abrt-gui-libs x86_64 2.14.6-3.fc34 @updates 36 k abrt-plugin-bodhi x86_64 2.14.6-3.fc34 @updates 37 k abrt-retrace-client x86_64 2.14.6-3.fc34 @updates 54 k abrt-tui x86_64 2.14.6-3.fc34 @updates 70 k binutils-gold x86_64 2.35.1-41.fc34 @fedora 2.0 M bodhi-client noarch 5.7.0-1.fc34 @updates 26 k boost-regex x86_64 1.75.0-4.fc34 @fedora 867 k createrepo_c x86_64 0.17.2-1.fc34 @updates 200 k createrepo_c-libs x86_64 0.17.2-1.fc34 @updates 258 k ctags x86_64 5.8-31.fc34 @fedora 404 k cvs x86_64 1.11.23-56.fc34 @fedora 1.1 M dnf-utils noarch 4.0.21-1.fc34 @updates 23 k dracut-squash x86_64 054-12.git20210521.fc34 @updates 2.8 k drpm x86_64 0.5.0-3.fc34 @fedora 128 k fakeroot x86_64 1.25.3-2.fc34 @fedora 154 k fakeroot-libs x86_64 1.25.3-2.fc34 @fedora 133 k fedmsg-base noarch 1.1.2-3.fc34 @fedora 39 k fedora-packager-yubikey noarch 0.6.0.6-1.fc34 @updates 37 k fedpkg noarch 1.40-6.fc34 @updates 239 k gcc-gdb-plugin x86_64 11.1.1-3.fc34 @updates 322 k gdb x86_64 10.2-1.fc34 @updates 388 k gdb-headless x86_64 10.2-1.fc34 @updates 13 M glibc-devel x86_64 2.33-14.fc34 @updates 127 k glibc-headers-x86 noarch 2.33-14.fc34 @updates 2.0 M gnome-abrt x86_64 1.3.6-7.fc34 @updates 468 k guile x86_64 5:2.0.14-24.fc34 @fedora 12 M isomd5sum x86_64 1:1.2.3-12.fc34 @fedora 59 k kernel-headers x86_64 5.12.9-300.fc34 @updates 5.3 M kexec-tools x86_64 2.0.21-5.fc34 @fedora 1.2 M koji noarch 1.25.0-1.fc34 @updates 688 k krb5-pkinit x86_64 1.19.1-8.fc34 @updates 122 k krb5-workstation x86_64 1.19.1-8.fc34 @updates 3.1 M libbabeltrace x86_64 1.5.8-6.fc34 @fedora 519 k libipt x86_64 2.0.4-1.fc34 @fedora 115 k libkadm5 x86_64 1.19.1-8.fc34 @updates 221 k libreport-fedora x86_64 2.15.2-2.fc34 @updates 51 k libreport-plugin-kerneloops x86_64 2.15.2-2.fc34 @updates 44 k libreport-plugin-logger x86_64 2.15.2-2.fc34 @updates 51 k libserf x86_64 1.3.9-18.fc34 @fedora 136 k libsodium x86_64 1.0.18-7.fc34 @fedora 355 k libstdc++-devel x86_64 11.1.1-3.fc34 @updates 13 M libtool x86_64 2.4.6-40.fc34 @fedora 2.6 M libvala x86_64 0.48.17-1.fc34 @updates 1.9 M libxcrypt-devel x86_64 4.4.20-2.fc34 @updates 30 k libyubikey x86_64 1.13-15.fc34 @fedora 92 k mock noarch 2.10-1.fc34 @updates 593 k mock-core-configs noarch 34.3-1.fc34 @updates 213 k mock-scm noarch 2.10-1.fc34 @updates 14 k module-build-service noarch 3.6.1-1.fc34 @updates 1.4 M openpgm x86_64 5.2.122-26.fc34 @fedora 301 k python3-GitPython noarch 3.1.13-1.fc34 @fedora 1.0 M python3-abrt-addon noarch 2.14.6-3.fc34 @updates 15 k python3-alembic noarch 1.5.5-1.fc34 @fedora 4.6 M python3-amqp noarch 5.0.6-1.fc34 @updates 376 k python3-argcomplete noarch 1.12.0-3.fc34 @fedora 219 k python3-arrow noarch 0.17.0-2.fc34 @fedora 373 k python3-babel noarch 2.9.1-1.fc34 @updates 27 M python3-beautifulsoup4 noarch 4.9.3-2.fc34 @fedora 1.0 M python3-billiard noarch 1:3.6.4.0-1.fc34 @updates 781 k python3-bodhi noarch 5.7.0-1.fc34 @updates 35 k python3-bodhi-client noarch 5.7.0-1.fc34 @updates 184 k python3-bugzilla noarch 3.0.2-2.fc34 @fedora 377 k python3-cccolutils x86_64 1.5-17.fc34 @fedora 34 k python3-celery noarch 5.0.5-2.fc34 @fedora 2.4 M python3-click noarch 7.1.2-5.fc34 @fedora 618 k python3-click-didyoumean noarch 0.0.3-2.fc34 @fedora 8.9 k python3-click-plugins noarch 1.1.1-8.fc34 @fedora 24 k python3-click-repl noarch 0.1.6-3.fc34 @fedora 20 k python3-daemon noarch 2.3.0-1.fc34 @fedora 117 k python3-docutils noarch 0.16-4.fc34 @fedora 5.9 M python3-dogpile-cache noarch 1.1.2-1.fc34 @fedora 407 k python3-editor noarch 1.0.4-8.fc34 @fedora 21 k python3-fedmsg noarch 1.1.2-3.fc34 @fedora 1.3 M python3-fedora noarch 1.1.1-2.fc34 @fedora 374 k python3-file-magic noarch 5.39-5.fc34 @fedora 21 k python3-flask noarch 1:1.1.2-5.fc34 @fedora 766 k python3-flask-migrate noarch 2.5.3-4.fc34 @updates 65 k python3-flask-script noarch 2.0.6-10.fc34 @fedora 700 k python3-flask-sqlalchemy noarch 2.4.4-3.fc34 @fedora 214 k python3-flatpak-module-tools noarch 0.13-1.fc34 @fedora 272 k python3-funcsigs noarch 1.0.2-23.fc34 @fedora 78 k python3-future noarch 0.18.2-9.fc34 @fedora 3.2 M python3-gitdb noarch 4.0.5-2.fc34 @fedora 405 k python3-gssapi x86_64 1.6.9-3.fc34 @fedora 2.0 M python3-humanize noarch 0.5.1-25.fc34 @fedora 42 k python3-itsdangerous noarch 1.1.0-4.fc34 @fedora 85 k python3-jinja2 noarch 2.11.3-1.fc34 @fedora 2.6 M python3-jsonschema noarch 3.2.0-9.fc34 @fedora 414 k python3-kitchen noarch 1.2.6-9.fc34 @fedora 347 k python3-kobo noarch 0.19.0-2.fc34 @fedora 295 k python3-kobo-rpmlib noarch 0.19.0-2.fc34 @fedora 14 k python3-koji noarch 1.25.0-1.fc34 @updates 1.4 M python3-kombu noarch 1:5.0.2-2.fc34 @fedora 1.3 M python3-ldap3 noarch 2.8.1-2.fc34 @fedora 3.8 M python3-libmodulemd x86_64 2.12.1-1.fc34 @updates 12 k python3-lockfile noarch 1:0.12.2-2.fc34 @fedora 66 k python3-m2crypto x86_64 0.37.1-1.fc34 @fedora 1.4 M python3-moksha-common noarch 1.2.5-17.fc34 @fedora 73 k python3-moksha-hub noarch 1.5.17-10.fc34 @fedora 233 k python3-munch noarch 2.5.0-4.fc34 @fedora 55 k python3-openidc-client noarch 0.6.0-11.20180605gitcd8d91c.fc34 @fedora 57 k python3-parameterized noarch 0.7.4-2.fc34 @fedora 149 k python3-pbr noarch 5.5.1-2.fc34 @fedora 3.4 M python3-progressbar2 noarch 3.52.1-2.fc34 @fedora 206 k python3-prometheus_client noarch 0.9.0-2.fc34 @fedora 273 k python3-prompt-toolkit noarch 3.0.5-5.fc34 @fedora 2.7 M python3-pungi noarch 4.2.9-1.fc34 @updates 1.6 M python3-pyroute2 noarch 0.5.6-5.fc34 @fedora 2.0 M python3-pyrsistent x86_64 0.17.3-5.fc34 @fedora 368 k python3-pyusb noarch 1.0.2-11.fc34 @fedora 375 k python3-requests-gssapi noarch 1.2.3-1.fc34 @fedora 57 k python3-rpkg noarch 1.62-4.fc34 @updates 775 k python3-smmap noarch 3.0.1-4.fc34 @fedora 156 k python3-solv x86_64 0.7.17-3.fc34 @fedora 525 k python3-soupsieve noarch 2.2-1.fc34 @fedora 214 k python3-sqlalchemy x86_64 1.3.24-1.fc34 @updates 11 M python3-stevedore noarch 3.2.2-4.fc34 @fedora 244 k python3-stomper noarch 0.4.3-9.fc34 @fedora 185 k python3-templated-dictionary noarch 1.1-2.fc34 @fedora 26 k python3-txws noarch 0.9.1-23.fc34 @fedora 44 k python3-txzmq noarch 0.8.2-4.fc34 @fedora 155 k python3-utils noarch 2.4.0-3.fc34 @fedora 997 k python3-vine noarch 5.0.0-3.fc34 @fedora 47 k python3-wcwidth noarch 0.2.5-3.fc34 @fedora 469 k python3-werkzeug noarch 1.0.1-5.fc34 @updates 1.9 M python3-yubico noarch 1.3.3-5.fc34 @fedora 218 k python3-zmq x86_64 22.0.3-1.fc34 @fedora 1.5 M rpkg-common noarch 1.62-4.fc34 @updates 12 k rpm-build x86_64 4.16.1.3-1.fc34 @fedora 242 k rpmdevtools noarch 9.3-4.fc34 @fedora 217 k rpmlint noarch 1.11-17.fc34 @updates 688 k source-highlight x86_64 3.1.9-9.fc34 @fedora 2.8 M squashfs-tools x86_64 4.4-5.git1.fc34 @fedora 418 k subversion x86_64 1.14.1-1.fc34 @fedora 5.1 M subversion-libs x86_64 1.14.1-1.fc34 @fedora 4.6 M telepathy-filesystem noarch 0.0.2-18.fc34 @fedora 0 telepathy-glib x86_64 0.24.2-2.fc34 @fedora 2.7 M tmux x86_64 3.1c-2.fc34 @fedora 909 k udisks2-iscsi x86_64 2.9.2-2.fc34 @fedora 56 k utf8proc x86_64 2.6.1-2.fc34 @fedora 358 k xemacs-filesystem noarch 21.5.34-39.20200331hge2ac728aa576.fc34 @fedora 0 xxhash-libs x86_64 0.8.0-2.fc34 @fedora 107 k ykpers x86_64 1.20.0-7.fc34 @fedora 338 k zeromq x86_64 4.3.4-1.fc34 @fedora 922 k zstd x86_64 1.5.0-1.fc34 @updates 1.9 M Transaction Summary ================================================================================ Remove 166 Packages Freed space: 368 M Is this ok [y/N]:
Note this is Fedora 34. Funny part is, the "How to test" of the Fedora 35 change [1] starts with "install the package", but if the core parts of the system require it, is there a way to *not* have it installed everywhere? In any case, the most confusing thing for me is it's named *...-client*, which invokes for me that it can be uninstalled on its own, when I'm not interested in the *client* functionality. [1] https://fedoraproject.org/wiki/Changes/DebuginfodByDefault#How_To_Test
Thanks for the report. We are discussing this also in context of bug #1947876. I tweaked the Changes page to point out that rpm installation is already done. Until the time when/if these RPM dependencies are tweaked, uninstalling this package is not the best way of not using it. Rather do that by keeping $DEBUGINFOD_URLS unset or empty. See also https://fedoraproject.org/wiki/Debuginfod . I propose closing this as NOTABUG.
(In reply to Frank Ch. Eigler from comment #2) > uninstalling this package is not the best way of not using it. Why not? The uninstall should make sure nothing is doing things I do not want it to do (I really do not want to auto-download 600+MB of the WebKitGTK package debuginfo, which unpacks to more than 2GB, on my relatively slow network (not talking about metered networks, whch you might have covered, I believe)). > Rather do that by keeping $DEBUGINFOD_URLS unset or empty. I thought that too, but the change page is sparse on how to do that "for all users and all processes". I checked the /etc/profile.d/ and saw there the new files, which are run I do not know when (their content is also suspicious [1], but it's another story) and then gave up. I want to have it disabled for sure and all processes, not for processes run in terminal being disabled, but those ran by D-Bus not being disabled. The ABRT daemon should also be covered (it calls gdb). [1] `if [ -n "https://debuginfod.fedoraproject.org/" ]; then` always evaluates to true, the same as `if ("https://debuginfod.fedoraproject.org/" != "") then`, thus I miss the idea behind these lines
I tried this (added --noautoremove): # dnf remove elfutils-debuginfod-client --noautoremove Dependencies resolved. ================================================================================ Package Arch Version Repo Size ================================================================================ Removing: elfutils-debuginfod-client x86_64 0.185-1.fc35 @rawhide 47 k Removing dependent packages: abrt-addon-ccpp x86_64 2.14.5-4.fc35 @rawhide 404 k abrt-cli x86_64 2.14.5-4.fc35 @rawhide 0 abrt-desktop x86_64 2.14.5-4.fc35 @rawhide 0 abrt-tui x86_64 2.14.5-4.fc35 @rawhide 69 k akonadi-devel x86_64 1.13.0-118.fc34 @rawhide 79 k anaconda-install-env-deps x86_64 35.16-1.fc35 @rawhide 0 annobin-plugin-gcc x86_64 9.73-2.fc35 @rawhide 52 k binutils x86_64 2.36.1-14.fc35 @rawhide 32 M binutils-gold x86_64 2.36.1-14.fc35 @rawhide 1.9 M boost-devel x86_64 1.75.0-7.fc35 @rawhide 134 M cargo x86_64 1.52.1-2.fc35 @rawhide 12 M clang x86_64 12.0.0-2.fc35 @rawhide 184 k debugedit x86_64 0.2-1.fc35 @rawhide 194 k elfutils-debuginfod-client-devel x86_64 0.185-1.fc35 @rawhide 8.9 k fedora-packager noarch 0.6.0.6-1.fc35 @rawhide 55 k fedpkg noarch 1.40-6.fc35 @rawhide 239 k gcc x86_64 11.1.1-3.fc35 @rawhide 84 M gcc-c++ x86_64 11.1.1-3.fc35 @rawhide 30 M gcc-gdb-plugin x86_64 11.1.1-3.fc35 @rawhide 322 k gdb x86_64 10.1-18.fc35 @rawhide 388 k gdb-headless x86_64 10.1-18.fc35 @rawhide 13 M gobject-introspection-devel x86_64 1.68.0-3.fc35 @rawhide 13 M kdelibs-devel x86_64 6:4.14.38-26.fc34 @rawhide 7.6 M kdepimlibs-devel x86_64 4.14.10-37.fc34 @rawhide 3.3 M libquadmath-devel x86_64 11.1.1-3.fc35 @rawhide 21 k libtool x86_64 2.4.6-41.fc35 @copr:copr.fedorainfracloud.org:odubaj:autoconf-2.70 2.6 M phonon-qt4-devel x86_64 4.10.3-15.fc34 @rawhide 404 k python3-rpkg noarch 1.62-4.fc35 @rawhide 775 k python3-rust2rpm x86_64 17-3.fc34 @rawhide 108 k python3-setuptools-rust noarch 0.12.1-1.fc35 @rawhide 125 k qt-devel x86_64 1:4.8.7-60.fc35 @rawhide 37 M rpm-build x86_64 4.16.90-0.git15395.8.fc35 @rawhide 148 k rpmdevtools noarch 9.3-5.fc35 @rawhide 217 k rust x86_64 1.52.1-2.fc35 @rawhide 76 M rust-packaging x86_64 17-3.fc34 @rawhide 6.1 k vala x86_64 0.52.3-1.fc35 @rawhide 9.3 M Transaction Summary ================================================================================ Remove 37 Packages Freed space: 458 M Is this ok [y/N]: Operation aborted.
The reason is that you seem to want to keep binutils, which has a hard requirement on libdebuginfod.so.1. If this really bothers you then you might want to request the binutils package try to turn that into a soft dependency (Recommends) by dynamically loading libdebuginfod.so.1 when available.
Aha, thanks. I tried to find out what brings the lengthy list, but I failed. Let's move this to binutils then.
This is not a binutils bug either. Many other packages link to libdebuginfod too. If what you're really asking for is an easier systemwide way to disable this function than per-user environment variables, then let's deal with that here in elfutils land.
(In reply to Frank Ch. Eigler from comment #7) > If what you're really asking for is an easier systemwide way to disable this > function than per-user environment variables Correct. An uninstall was a natural option, but it failed under the hood. I can probably remove the /etc/profile.d/ files, but those would get back on a version update. Having there a specific package for the default functionality on/off (installed => on, not installed => off), which the -client subpackage looked like a good candidate for, then even better.
What do you think about https://sourceware.org/bugzilla/show_bug.cgi?id=27783#c2 ?
> That way a local admin can remove or update or add more files. As I'm mostly interested to disable this and do not be surprised that some package added and reenabled the behavior any time later, I do not see how that can be achieved.
> I do not see how that can be achieved. Some combination of clever rpm %config or %ghost properties should handle the reasonably foreseeable cases.
I meant by the user, by me, effectively not knowing which all packages can install the files and how they are named. Simply to have a global (per user?) on/off, regardless what will be installed or uninstalled after the setting is done. From what I understood so far, to have the variable in /etc/environment will not help right now, because the /etc/profile.d/ file will set the variable anyway, right? I can add it into ~/.bashrc, but even that is not the right thing for the D-Bus system (not session) processes, or even for gdm.
I believe that the programs that would import the environment variable settings via /etc/profile.d/* are the same programs (login shells) that would immediately import overrides from a $HOME/.profile or eqv.
Hrm, I tried this on an up-to-date rawhide machine. My ~/.profile contains only a single line: export DEBUGINFOD_URLS=xxx When I log out and log in again and open a terminal I see this: set | grep URL DEBUGINFOD_URLS='xxx https://debuginfod.fedoraproject.org/ https://debuginfod.fedoraproject.org/' Which shows it doesn't work (and it has the URL really twice there, no idea why). My value did not override the one in the profile.d, it had been added to the list. I didn't find a man page for that .profile file, one close thing is [1], where is said the ~/.profile overrides things from /etc/profile. When I add the same export to the ~/.bashrc then it does override the value. [1] https://www.ibm.com/docs/en/zos/2.4.0?topic=shell-customizing-homeprofile
OK, noted the .bashrc file as an appropriate place for overriding the system profile defaults. https://fedoraproject.org/wiki/Debuginfod#Disabling I think there is still a need to have a systemwide file-drop-in gadget like the elfutils RFE describes.
Right, admins may want to override it for all users, at a single place. I'm unsure how that would work for random packages trying to add their own debuginfo sites. One might even sneak in and add their server just to check which machines are looking for what debuginfo packages, which is something privacy sensitive users might not like at all. But that had been discussed elsewhere in lengthy, no need to open that question here ;)
I just filled bug #1970741, which is partly related to this issue, but it's only about the environment variable, thus I rather split it to a separate report.
(In reply to Frank Ch. Eigler from comment #15) > OK, noted the .bashrc file as an appropriate place for overriding the system > profile defaults. > > https://fedoraproject.org/wiki/Debuginfod#Disabling > > I think there is still a need to have a systemwide file-drop-in gadget like > the elfutils RFE describes. I like that idea, but I think it is independent from documenting how to en/disable the DEBUGINFOD_URLS in the user enviroment. Is there anything more to do for this bug? It seems it is now properly documented.
I still believe the best option is to be able to uninstall the `-client` subpackage, thus it's obvious there will be no search, but if you think the doc update is enough, then feel free to close this bug.
The next upstream release of elfutils will use /etc/debuginfod/*.urls drop-in files to load the default $DEBUGINFOD_URLS path. To disable a systemwide default, just remove or rename any files the distro put there.
(In reply to Frank Ch. Eigler from comment #20) > The next upstream release of elfutils will use /etc/debuginfod/*.urls > drop-in files to load the default $DEBUGINFOD_URLS path. To disable a > systemwide default, just remove or rename any files the distro put there. That means you have root access on the machine. Similarly as when I tried to uninstall the "client" subpackage. Does the new method work with `unset DEBUGINFOD_URLS` in ~/.bashrc file, or I should develop a new way of not wanting to download gigabytes of debug info when trying to catch a backtrace of a running application? By the way, supposing the files will be provided by certain package, when I remove the files and that package will be updated, then the files will be "returned back" by that update, right?
(In reply to Milan Crha from comment #21) > (In reply to Frank Ch. Eigler from comment #20) > > The next upstream release of elfutils will use /etc/debuginfod/*.urls > > drop-in files to load the default $DEBUGINFOD_URLS path. To disable a > > systemwide default, just remove or rename any files the distro put there. > > That means you have root access on the machine. Similarly as when I tried to > uninstall the "client" subpackage. Yes, if you want to make systemwide changes, you need systemwide privileges. > Does the new method work with `unset DEBUGINFOD_URLS` in ~/.bashrc file, Yes. > or I should develop a new way of not wanting to download gigabytes of debug > info when trying to catch a backtrace of a running application? Look into setting $DEBUGINFOD_MAXTIME and $DEBUGINFOD_MAXSIZE also, coming soon in elfutils 0.186. > By the way, supposing the files will be provided by certain package, when I > remove the files and that package will be updated, then the files will be > "returned back" by that update, right? Possibly, depending on exact rpm flags. So you could edit the file (to clear out its contents); then RPM should preserve it like any other changed config file.
> then RPM should preserve it like any other changed config file. Ah, right, I forgot of that. It might be like the .rpmnew files or some such. Sounds good, thanks.