Bug 2325398 - Not built with rpmmd backend
Summary: Not built with rpmmd backend
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: appstream-generator
Version: 41
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Neal Gompa
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2024-11-12 08:31 UTC by Milan Crha
Modified: 2026-02-04 13:44 UTC (History)
3 users (show)

Fixed In Version: appstream-generator-0.10.1-1.fc43 appstream-generator-0.10.1-1.fc42
Clone Of:
Environment:
Last Closed: 2025-11-04 04:13:50 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Milan Crha 2024-11-12 08:31:13 UTC
I suppose to be able to generate proper appstream data from a Fedora repository one needs the rpmmd backend in the appstream-generator, but when I try to use it I just get:

   $ appstream-generator process test --verbose
   2024-11-12 08:45:40 - DEBUG: Using `optipng`: /usr/bin/optipng
   2024-11-12 08:45:40 - DEBUG: Using `ffprobe`: /usr/bin/ffprobe
   object.Exception@../src/asgen/engine.d(98): This appstream-generator was built without support for RPM-MD!
   ----------------
   ??:? asgen.engine.Engine asgen.engine.Engine.__ctor() [0x4659a9]
   ??:? _Dmain [0x405724]

Could you enable build of the rpmmd backend in Fedora, please?

This is with appstream-generator-0.9.1-5.fc41.x86_64

Note I tried to enable it and it results in a build failure:

../src/asgen/backends/rpmmd/rpmpkgindex.d(28): Error: unable to read module `xml`
../src/asgen/backends/rpmmd/rpmpkgindex.d(28):        Expected 'std/xml.d' or 'std/xml/package.d' in one of the following import paths:
import path[0] = src/asgen/appstream-generator.p
import path[1] = src/asgen
import path[2] = ../src/asgen
import path[3] = src
import path[4] = ../src
import path[5] = girepo
import path[6] = ../girepo
import path[7] = /usr/include/d/glibd-2
import path[8] = /usr/include/libmount
import path[9] = /usr/include/blkid
import path[10] = /usr/include/glib-2.0
import path[11] = /usr/lib64/glib-2.0/include
import path[12] = /usr/include/sysprof-6
import path[13] = /usr/include/appstream
import path[14] = /usr/include/appstream-compose
import path[15] = /usr/include/gdk-pixbuf-2.0
import path[16] = /usr/include/libpng16
import path[17] = /usr/include/webp
import path[18] = /usr/lib/ldc/x86_64-redhat-linux-gnu/include/d
import path[19] = /usr/include/d


The upstream version switched to a `dxml` here:
https://github.com/ximion/appstream-generator/commit/6a187884f39fa4caf9ef60b91feeba2f7dca184a
but it's not packaged either (maybe you can bundle that dependency?).

Reproducible: Always

Comment 1 Neal Gompa 2025-02-12 19:55:29 UTC
Oh, it looks like this needs a new D language library to enable it (dxml). I'll look into this.

Comment 2 Fedora Update System 2025-11-03 22:38:32 UTC
FEDORA-2025-c71fcbe1f9 (appstream-generator-0.10.1-1.fc43 and inja-3.5.0-1.fc43) has been submitted as an update to Fedora 43.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-c71fcbe1f9

Comment 3 Fedora Update System 2025-11-03 22:38:38 UTC
FEDORA-2025-99042fe395 (appstream-generator-0.10.1-1.fc42 and inja-3.5.0-1.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-99042fe395

Comment 4 Fedora Update System 2025-11-04 04:13:50 UTC
FEDORA-2025-c71fcbe1f9 (appstream-generator-0.10.1-1.fc43 and inja-3.5.0-1.fc43) has been pushed to the Fedora 43 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 5 Fedora Update System 2025-11-04 04:55:37 UTC
FEDORA-2025-99042fe395 (appstream-generator-0.10.1-1.fc42 and inja-3.5.0-1.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 6 Milan Crha 2026-02-04 13:44:53 UTC
The appstream-generator requires libfyaml 0.9 in runtime [1], while Fedora has only 0.8. There is a bug for it, https://bugzilla.redhat.com/show_bug.cgi?id=2397263 , from September, but nobody took any action on it yet. Neal, you seem to have commit rights on the package, could you handle it, please?

[1] 
   $ appstream-generator process test
   2026-02-04 14:14:42 - INFO: AppStream Generator 0.10.2, AS: 1.1.0 [RpmMd]
   Error executing command: libfyaml version 0.8 is too old, at least version 0.9 is required! Please upgrade
   libfyaml, as versions <= 0.8 have known bugs in unicode handling and may generate corrupted UTF-8 data.


Note You need to log in before you can comment on or make changes to this bug.