Bug 2229948

Summary: Problem with file requirements
Product: [Fedora] Fedora Reporter: Jaroslav Mracek <jmracek>
Component: mpibashAssignee: Christoph Junghans <junghans>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 38CC: junghans, zbyszek
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-02-02 01:06:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2180842    

Description Jaroslav Mracek 2023-08-08 09:15:29 UTC
mpibash-mpich-examples requires: /usr/lib64/mpich/bin/mpibash_mpich
mpibash-openmpi-examples requires: /usr/lib64/openmpi/bin/mpibash_openmpi

Why this is a problem:
1. DNF5 stops to download filelists as a default therefore `mpibash-mpich-examples` and `mpibash-openmpi-examples` will be not installable
2. It is against Fedora packaging guidelines to require files outside of `/etc`, `/usr/(s)bin`.


Possible solution:
1. use only file provides from  `/etc`, `/usr/(s)bin` (follow packaging guidelines please) or other provides from package providing required functionality
2. Request explicit provide of `/usr/lib64/mpich/bin/mpibash_mpich` in package providers of the file like `Provides: /usr/lib64/mpich/bin/mpibash_mpich`. This is a workaround that resolves the issue, but it is not according to the guidelines.

This issue will appear after DNF5 adoption, because DNF5 does not download filelists by default. The problem will not be in DNF5 because it is caused by not following packaging guidelines. DNF downloaded always filelists to prevent the issue. There are only few remaining packages that has the issue therefore it is time to improve an efficiency of Fedora distribution.

Reproducible: Always

Comment 1 Christoph Junghans 2023-08-08 14:19:11 UTC
@jmracek I don't fully understand, where is the file permission coming from? The package says:

%package openmpi-examples
Summary:        Example Scripts for Open MPI %{name}
Requires:       %{name}-openmpi = %{version}

So the openmpi example package depends on the openmpi plugin.

Comment 2 Zbigniew Jędrzejewski-Szmek 2024-01-30 09:35:39 UTC
It it generated automatically because "#! /usr/lib64/mpich/bin/mpibash_mpich"
is used in /usr/lib64/mpich/bin/mbxz_mpich.
This dependency is redundant, because both files are contained in the same package.

→ https://src.fedoraproject.org/rpms/mpibash/pull-request/1