View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0007822 | Rocky-Linux-9 | rpm | public | 2024-09-10 18:35 | 2024-11-25 07:41 |
Reporter | William Laeder | Assigned To | Louis Abel | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | closed | Resolution | won't fix | ||
Platform | x86_64/AMD64 | OS | rocky-9.4 | OS Version | 9.4 (Plow) |
Summary | 0007822: Inconsistent behavior between RHEL-9.4 and Rocky-9.4 when installing packages | ||||
Description | The difference in behavior is found between Rocky Linux 9.4 (Blue Onyx) and Redhat Enterprise Linux 9.4 (Plow). Relevant package information | info | RHEL-9.4 | Rocky-9.4 | | :-: | :-: | :-: | | `rpm --version` | `RPM version 4.16.1.3` | `RPM version 4.16.1.3` | `dnf list installed rpm` | `4.16.1.3-29.el9 ` | `4.16.1.3-29.el9` | `dnf --version` | `4.14.0` | `4.14.0` | `sha1 /usr/lib64/librpm.so.9` | `eAeJqH8EEPijHlDC3lDquYLxTcg=` | `xyvGdRN2IEt3eVmxB/uWaQLuXBU=` | | `rpm -qf /usr/lib64/librpm.so.9` | `rpm-libs-4.16.1.3-29.el9.x86_64` | `rpm-libs-4.16.1.3-29.el9.x86_64` | | `rpm -qf /bin/sudo` | `sudo-1.9.5p2-7.el9.x86_64` | `sudo-1.9.5p2-10.el9_3.x86_64` | SHA1 sum's are base64 encoded to save space. This problem occurs in 3 parts, it involves an internal version of openldap (which is tagged older than 2.6. We're providing this RPM). # Problem 1 The follow command succeeds on RHEL-9.4, it fails on Rocky-9.4 with the following error ``` $ sudo rpm -i openldap-2.4.rpm package openldap-2.6.6-3.el9.x86_64 (which is newer than openldap-2.4.0.el9.x86_64) is already installed file /usr/share/doc/openldap/ANNOUNCEMENT from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 file /usr/share/doc/openldap/CHANGES from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 file /usr/share/doc/openldap/README from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 file /usr/share/licenses/openldap/COPYRIGHT from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 file /usr/share/man/man5/ldap.conf.5.gz from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 file /usr/share/man/man5/ldif.5.gz from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 ``` We can clear up these conflicts and rebuild. To be clear. RHEL-9.4 does not "_care_" about these conflicts # Problem 2 If we fix the conflicts (by re-naming files & repacking, or removing in the case of `man5` entries). We now see ``` $ sudo rpm -i openldap-2.4.rpm package openldap-2.6.6-3.el9.x86_64 (which is newer than openldap-2.4.0.el9.x86_64) is already installed ``` Which doesn't occur on RHEL-9.4 Installing with ``` $ sudo rpm -i --oldpackage openldap-2.4.rpm ``` Succeeds. As there are no conflicts/overlap with openldap-2.6 it isn't impacted and sudo isn't impacted. I would also highlight that when doing this via `dnf` (instead of `rpm`), Rocky-9.4 only states "_installation would remove protected package sudo_". It gives no details on what the underlying conflict. | ||||
Steps To Reproduce | rpm -i openldap-2.4.rpm | ||||
Additional Information | I'm not sure what modifications the rocky project is making to dnf/rpm but they're behaving different from red hat. | ||||
Tags | No tags attached. | ||||
I will follow up with legal if we can share our internal openldap builds. | |
Thank you for the report. Please note that Rocky Linux 9.5 has been released. 9.4 is no longer supported. >This problem occurs in 3 parts, it involves an internal version of openldap (which is tagged older than 2.6. We're providing this RPM). You appear to be reporting an issue with your own openldap package and it is failing to install on a Rocky Linux system due to very clear file conflicts. The error indicates that the package that's installed already is newer and there are conflicting files (as expected). Your openldap package appears to be built using the standard build and installation directories, hence the conflicts. As we only support packages that we ship in our distribution, which includes openldap, we cannot provide support for your custom package. In my opinion, if you want to install this older version, you may want to consider rebuilding your package with a different name and to install in other directories that do not conflict with the base packages so that they can peacefully coexist. Replacing the base packages is unsupported with the project. See the openldap LTB spec file below for an example, where they use /usr/local and have a different package name. https://github.com/ltb-project/openldap-rpm/blob/master/SPECS/openldap-ltb.spec >The follow command succeeds on RHEL-9.4, it fails on Rocky-9.4 with the following error >package openldap-2.6.6-3.el9.x86_64 (which is newer than openldap-2.4.0.el9.x86_64) is already installed This message states that our provided openldap package (as required by specific base packages, such as sudo) is newer and is already installed. It is not possible via normal means (nor recommended to ever force) in having multiple versions of the same package installed. >file /usr/share/doc/openldap/ANNOUNCEMENT from install of openldap-2.4.0.el9.x86_64 conflicts with file from package openldap-2.6.6-3.el9.x86_64 This states a file conflict between what our package provides and what yours provides. In fact, when I look at the RHEL 9 and CentOS Stream openldap package, those files are provided. So by their very nature, they should conflict also. $ rpm -qlp openldap-2.6.6-3.el9.x86_64.rpm | grep ANNOUNCE warning: openldap-2.6.6-3.el9.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID fd431d51: NOKEY /usr/share/doc/openldap/ANNOUNCEMENT As an aside, rpm -i isn't going to downgrade the package, where rpm -Uvh --oldpackage or dnf downgrade would. However, because this would effectively replace the system package with your own, it is not supported nor can I recommend the usage of those commands. >I'm not sure what modifications the rocky project is making to dnf/rpm but they're behaving different from red hat. We do not make any direct changes to rpm. The only dnf change that we make is to change the bug tracker link. You can find our patches in git.rockylinux.org/staging/patch. >RHEL-9.4 does not "_care_" about these conflicts RHEL will absolutely care about conflicts. Unfortunately in this instance, not enough information is being provided. Steps such as `rpm -i` alongside rpm/sudo versions, and a simple log denying the installation is not enough to go off of. As this is about a custom built package that would effectively be replacing the base package, we cannot support it nor consider this a bug. You are welcome to also visit either our forums, mattermost, or IRC channels for further discussion on this topic or assistance in anything else related to the distribution. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2024-09-10 18:35 | William Laeder | New Issue | |
2024-09-10 18:37 | William Laeder | Note Added: 0008317 | |
2024-11-25 07:41 | Louis Abel | Assigned To | => Louis Abel |
2024-11-25 07:41 | Louis Abel | Status | new => closed |
2024-11-25 07:41 | Louis Abel | Resolution | open => won't fix |
2024-11-25 07:41 | Louis Abel | Note Added: 0008878 |