#12129 Missing i686 package
Closed: Fixed by jnsamyak. Opened by jexposit.

  • Describe the issue

A user reported that the updates repo is missing the i686 version of vulkan-validation-layers while the x86_64 version is available:
https://bugzilla.redhat.com/show_bug.cgi?id=2282242

  • When do you need this? (YYYY/MM/DD)

I pushed a new update for the package today. Hopefully, it'll get in the repo. Otherwise, it'd be nice to have it there eventually.


Hi,

I'm guessing once the update lands into stable in the next compose, it should be there. Not sure, if there is something manually to be done about it from the releng end, or am i missing something?

@jnsamyak hopefully, it'll, but the latest releases missed the i686 package.

I reported it here because Google shown me this bug report. It seems like a similar issue:
https://pagure.io/releng/issue/7071

Metadata Update from @phsmoura:
- Issue tagged with: low-gain, low-trouble, ops

All i686 packages are not added to the x86_64 repo by default

From pungi docs:

     * ``runtime`` -- packages that install some shared object file
       (``*.so.*``) will match.
     * ``devel`` -- packages whose name ends with ``-devel`` or ``--static``
       suffix will be matched. When ``dnf`` is used, this method automatically
       enables ``runtime`` method as well. With ``yum`` backend this method
       also uses a hardcoded blacklist and whitelist.

So, if this doesn't have a so file or a -devel file it will not be included. It looks like in f39 it had a -devel subpackage and now it doesn't?

We can add a exception here, but we don't like to do that.

Metadata Update from @kevin:
- Issue untagged with: low-gain, low-trouble, ops

Metadata Update from @kevin:
- Issue tagged with: low-gain, low-trouble, ops

Hey Kevin,

Thanks for the snippet from the docs.

The package installs a .so file:
https://src.fedoraproject.org/rpms/vulkan-validation-layers/blob/rawhide/f/vulkan-validation-layers.spec#_63

$ dnf provides "*/libVkLayer_*.so"
[...]
vulkan-validation-layers-1.3.275.0-1.fc40.x86_64 : Vulkan validation layers
Repo        : fedora
Matched from:
Filename    : /usr/lib64/libVkLayer_khronos_validation.so
vulkan-validation-layers-1.3.280.0-1.fc40.x86_64 : Vulkan validation layers
Repo        : @System
Matched from:
Filename    : /usr/lib64/libVkLayer_khronos_validation.so
vulkan-validation-layers-1.3.280.0-1.fc40.x86_64 : Vulkan validation layers
Repo        : updates
Matched from:
Filename    : /usr/lib64/libVkLayer_khronos_validation.so

It looks like in f39 it had a -devel subpackage and now it doesn't?

Yes, it was replaced by vulkan-utility-libraries:
https://src.fedoraproject.org/rpms/vulkan-utility-libraries/blob/rawhide/f/vulkan-utility-libraries.spec#_24

It's looking for a .so. file, ie, a devel library to link against, which this does not have.

I guess I am confused how this package is used. It provides only a dynamic library?
What i686 things would use it on a x86_64 platform?

Ops, missed the final ".".

This makes sense, when the "-devel" package was removed, the i686 stopped being included, which according to the docs, it is the right behavior.

I guess I am confused how this package is used. It provides only a dynamic library?
What i686 things would use it on a x86_64 platform?

Let me forward that question to the orginal reporter:
https://bugzilla.redhat.com/show_bug.cgi?id=2282242

What i686 things would use it on a x86_64 platform?

The dynamic library provides a vulkan layer, which can be requested to be loaded into other processes by adding flags to the vulkan loader. For example, by setting the environment variable VK_INSTANCE_LAYERS=VK_LAYER_KHRONOS_validation, the loader will set up the layer to intercept the Vulkan calls between a process and the vulkan driver and print error messages if that process violates any Vulkan rules. If you want to use the layer with a 32-bit process (e.g. wine running a 32-bit windows application), you need a 32-bit vulkan layer to do that.

ok, fair enough. I guess we need to add this to the allowlist then...

Any updates on this issue?

The same problem affects CentOS. vulkan-loader and vulkan-validation-layers i686 packages are not generated anymore.

Okay, I just went through the commit, and looking at the action item it seems we needed to add the pkg to multilib allow list, the PR for that is here: https://pagure.io/pungi-fedora/pull-request/1295, if someone can review this it will be awesome!

Metadata Update from @jnsamyak:
- Issue assigned to jnsamyak

This is fixed in:

  • https://pagure.io/pungi-fedora/pull-request/1295
  • https://pagure.io/fedora-infra/ansible/pull-request/2107

Please let us know win case of questions, thanks!

Metadata Update from @jnsamyak:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

Metadata