Bug 27716

Summary: packagekitd: Failed to load the backend: opening module dnf failed : /lib64/libappstream-glib.so.8: undefined symbol: sb_stemmer_length
Product: Mageia Reporter: Aurelien Oudelet <ouaurelien>
Component: RPM PackagesAssignee: Thierry Vignaud <thierry.vignaud>
Status: RESOLVED FIXED QA Contact:
Severity: major    
Priority: Normal CC: geiger.david68210, guillaume.bedot, luigiwalser
Version: Cauldron   
Target Milestone: Mageia 8   
Hardware: All   
OS: Linux   
Whiteboard:
Source RPM: packagekit-1.2.2-1.mga8.src.rpm CVE:
Status comment:

Description Aurelien Oudelet 2020-12-03 10:45:04 CET
Latest packagekit upgrade for Cauldron breaks launching Plasma Discover:

Discover GUI is not displayed.
Seems there are many errors in this journal trace:

 - two for fwupd: 
fwupd[3456]: ERROR:esys:src/tss2-esys/esys_context.c:69:Esys_Initialize() Initialize default tcti. ErrorCode (0x000a000a)
fwupd[3456]: 09:25:42:0219 FuPluginLinuxLockdown could not open /sys/kernel/security/lockdown: Erreur lors de l'ouverture du fichier /sys/kernel/security/lockdown : Aucun fichier ou dossier de ce type

 - two for kns backend: 
invalid kns backend! "/usr/share/knsrcfiles/servicemenu.knsrc" because: "Config group not found! Check your KNS3 installation."
invalid kns backend! "/usr/share/knsrcfiles/ksysguard.knsrc" because: "Config group not found! Check your KNS3 installation."

 - one for packagekit:
dbus-daemon[2154]: [system] Activating via systemd: service name='org.freedesktop.PackageKit' unit='packagekit.service' requested by ':1.86' (uid=1000 pid=3440 comm="/usr/bin/plasma-discover --mode update")
plasma-discover[3440]: adding empty sources model QStandardItemModel(0x2533f70)
systemd[1]: Starting PackageKit Daemon...
plasma-discover[3440]: QObject::connect(AbstractReviewsBackend, ResourcesModel): invalid nullptr parameter
PackageKit[3486]: daemon start
PackageKit[3486]: daemon quit
packagekitd[3486]: Failed to load the backend: opening module dnf failed : /lib64/libappstream-glib.so.8: undefined symbol: sb_stemmer_length
systemd[1]: packagekit.service: Succeeded.
systemd[1]: Started PackageKit Daemon.
dbus-daemon[2154]: [system] Failed to activate service 'org.freedesktop.PackageKit': timed out (service_start_timeout=25000ms)


So, packagekit really prevents Discover from launching as four first errors were already present in my system journal log past weeks and days.
The last one appears only after upgrading today.

Assigning this to packagekit maintainer and adding recent commiter.

Also, adding discover maintainer group for kns backends.
Comment 1 Aurelien Oudelet 2020-12-03 13:30:53 CET
More on this:

$ pkcon ref
Failed to contact PackageKit: Error calling StartServiceByName for org.freedesktop.PackageKit: Failed to activate service 'org.freedesktop.PackageKit': timed out (service_start_timeout=25000ms)

In "journalctl -f":
déc. 03 13:27:45 dbus-daemon[2169]: [system] Activating via systemd: service name='org.freedesktop.PackageKit' unit='packagekit.service' requested by ':1.88' (uid=1000 pid=3517 comm="pkcon ref")
déc. 03 13:27:45 systemd[1]: Starting PackageKit Daemon...
déc. 03 13:27:45 PackageKit[3522]: daemon start
déc. 03 13:27:45 PackageKit[3522]: daemon quit
déc. 03 13:27:45 packagekitd[3522]: Failed to load the backend: opening module dnf failed : /lib64/libappstream-glib.so.8: undefined symbol: sb_stemmer_length
déc. 03 13:27:45 systemd[1]: packagekit.service: Succeeded.
déc. 03 13:27:45 systemd[1]: Started PackageKit Daemon.
déc. 03 13:28:10 dbus-daemon[2169]: [system] Failed to activate service 'org.freedesktop.PackageKit': timed out (service_start_timeout=25000ms)

Same as above.
Comment 2 David Walser 2020-12-03 16:10:09 CET
The fwupd and kns errors are likely not new, they don't have any apparent connection to any recent update.  The packagekit error is obviously due to appstream-glib being broken, as the error message indicates.  Apparently the libstemmer update broke binary compatibility, even though the library major didn't change.  Currently rebuilding packages dependent on libstemmer, which should hopefully fix the main problem here.
Comment 3 David Walser 2020-12-03 16:27:01 CET
Well this is odd.  appstream and appstream-glib are having linking errors to libstemmer symbols, even though they have -lstemmer in the command line.
Comment 4 David Walser 2020-12-03 16:45:53 CET
Seems nothing can find any symbols in -lstemmer now, so something's wrong with the updated library.
Comment 5 Guillaume Bedot 2020-12-03 18:32:43 CET
new lib64stemmer0-2.0.0-2.git.c70ed64.20191001.mga8 fixes nautilus for me.

CC: (none) => guillaume.bedot

Comment 6 David Walser 2020-12-03 18:33:27 CET
libstemmer-2.0.0-2.git.c70ed64.20191001.mga8 should fix the appstream-glib issues (thanks to Jani's help).
Comment 7 Aurelien Oudelet 2020-12-03 20:11:48 CET
(In reply to David Walser from comment #6)
> libstemmer-2.0.0-2.git.c70ed64.20191001.mga8 should fix the appstream-glib
> issues (thanks to Jani's help).

Yes. Thanks all!
Comment 8 Aurelien Oudelet 2020-12-03 20:11:59 CET
Fixed

Resolution: (none) => FIXED
Status: NEW => RESOLVED