Description of problem: After dnf upgrade, polkit.service fails to start. The following errors can be seen in the logs: Jul 10 05:42:22 sakura.greysector.net systemd[1]: Starting Authorization Manager... Jul 10 05:42:22 sakura.greysector.net polkitd[2437]: /usr/lib/polkit-1/polkitd: symbol lookup error: /usr/lib/polkit-1/polkitd: undefined symbol: polkit_system_bus_name_get_user_sync Jul 10 05:42:22 sakura.greysector.net systemd[1]: polkit.service: main process exited, code=exited, status=127/n/a Jul 10 05:42:22 sakura.greysector.net systemd[1]: Failed to start Authorization Manager. Jul 10 05:42:22 sakura.greysector.net systemd[1]: Unit polkit.service entered failed state. Jul 10 05:42:22 sakura.greysector.net systemd[1]: polkit.service failed. Version-Release number of selected component (if applicable): polkit-0.113-1.fc22.x86_64 polkit-libs-0.113-1.fc22.x86_64 Steps to Reproduce: 1. Start with polkit and polkit-libs 0.112-9.fc22 installed. 2. dnf upgrade polkit 3. reboot Actual results: polkit.service fails to start and there are lengthy delays upon boot and login due to systemd trying to launch polkit. Expected results: Successful startup. Additional info: This is due to ABI break in polkit-libs (/usr/lib64/libpolkit-gobject-1.so.0.0.0). Newer polkitd uses this symbol (polkit_system_bus_name_get_user_sync) and there's no strict dependency on polkit-libs, so it's possible to end up with polkit-0.113-1.fc22.x86_64 and polkit-libs-0.112-9.fc22.x86_64 installed. Also, please check the output of rpmsodiff: $ rpmsodiff polkit-libs-0.112-9.fc22.x86_64.rpm polkit-libs-0.113-1.fc22.x86_64.rpm common sonames: libpolkit-agent-1.so.0 /usr/lib64/libpolkit-agent-1.so.0.0.0 /usr/lib64/libpolkit-agent-1.so.0.0.0 libpolkit-gobject-1.so.0 /usr/lib64/libpolkit-gobject-1.so.0.0.0 /usr/lib64/libpolkit-gobject-1.so.0.0.0 libpolkit-agent-1.so.0 definitions unchanged --- polkit-libs-0.112-9.fc22/libpolkit-gobject-1.so.0 2015-07-10 06:02:41.989361708 +0200 +++ polkit-libs-0.113-1.fc22/libpolkit-gobject-1.so.0 2015-07-10 06:03:18.314706878 +0200 @@ -101,2 +101,3 @@ polkit_system_bus_name_get_type T +polkit_system_bus_name_get_user_sync T polkit_system_bus_name_new T 1 symbols added T polkit_system_bus_name_get_user_sync # template for libpolkit-gobject-1.so.0 version script POLKIT_0.113 { global: polkit_system_bus_name_get_user_sync; }; vim:ft=diff
Thanks for your report. You are right that a strict dependency is missing, and I will add it. AFAICS this can only be reproduced by explicitly running (dnf update polkit); not the usual (dnf update). Is there any other way to trigger this, or indeed a reason to run (dnf update polkit) in particular?
"dnf update polkit" is the only way to reproduce. I was looking at security updates from updates-testing and hand-picked a few packages to update and that's how I ended up running "dnf update polkit".
OK, I shouldn’t be making it difficult to test polkit updates ☺ For upgrade path reasons it is also desirable to bump the F22 polkit, so I will prepare an update today.
polkit-0.113-2.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/polkit-0.113-2.fc22
Package polkit-0.113-2.fc22: * should fix your issue, * was pushed to the Fedora 22 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing polkit-0.113-2.fc22' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2015-11486/polkit-0.113-2.fc22 then log in and leave karma (feedback).
Still not able to upgrade using the suggested command (replaced yum with dnf): $ su -c 'dnf update --enablerepo=updates-testing polkit-0.113-2.fc22' Password: Last metadata expiration check performed 0:03:39 ago on Tue Jul 14 15:44:58 2015. Dependencies resolved. ================================================================================ Package Arch Version Repository Size ================================================================================ Upgrading: polkit x86_64 0.113-2.fc22 updates-testing 127 k polkit-devel x86_64 0.113-2.fc22 updates-testing 46 k polkit-docs noarch 0.113-2.fc22 updates-testing 259 k polkit-libs x86_64 0.113-2.fc22 updates-testing 70 k Transaction Summary ================================================================================ Upgrade 4 Packages Total download size: 501 k Is this ok [y/N]: y Downloading Packages: (1/4): polkit-devel-0.112-9.fc22_0.113-2.fc22.x 32 kB/s | 20 kB 00:00 (2/4): polkit-libs-0.113-2.fc22.x86_64.rpm 100 kB/s | 70 kB 00:00 (3/4): polkit-0.113-2.fc22.x86_64.rpm 103 kB/s | 127 kB 00:01 (4/4): polkit-docs-0.112-9.fc22_0.113-2.fc22.no 43 kB/s | 28 kB 00:00 [DRPM] polkit-devel-0.112-9.fc22_0.113-2.fc22.x86_64.drpm: done [DRPM] polkit-docs-0.112-9.fc22_0.113-2.fc22.noarch.drpm: done -------------------------------------------------------------------------------- Total 89 kB/s | 244 kB 00:02 Delta RPMs reduced 0.5 MB of updates to 0.2 MB (51.1% saved) Running transaction check Transaction check succeeded. Running transaction test Error: Transaction check error: file /usr/share/doc/polkit/NEWS from install of polkit-0.113-2.fc22.x86_64 conflicts with file from package polkit-0.112-7.fc21.1.i686 file /usr/share/doc/polkit/README from install of polkit-0.113-2.fc22.x86_64 conflicts with file from package polkit-0.112-7.fc21.1.i686 file /usr/share/man/man1/pkexec.1.gz from install of polkit-0.113-2.fc22.x86_64 conflicts with file from package polkit-0.112-7.fc21.1.i686 Error Summary -------------
Luca, that (with an .fc21 package still installed) is a separate issue, #1243004. I will push a new update for that one as well.
polkit-0.113-4.fc22 has been submitted as an update for Fedora 22. https://admin.fedoraproject.org/updates/polkit-0.113-4.fc22
polkit-0.113-4.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.