Bug 1989062
Summary: | package xorgxrdp-0.2.16-2.el8.x86_64 requires xorg-x11-server-Xorg(x86-64) = 1.20.10, but none of the providers can be installed | ||
---|---|---|---|
Product: | [Fedora] Fedora EPEL | Reporter: | Enrico Tagliavini <enrico.tagliavini> |
Component: | xorgxrdp | Assignee: | Pavel Roskin <plroskin> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | unspecified | Docs Contact: | |
Priority: | unspecified | ||
Version: | epel8 | CC: | bojan, carl, plroskin, tdawson |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | xorgxrdp-0.2.16-3.el8 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2021-08-31 22:19:05 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Enrico Tagliavini
2021-08-02 10:16:41 UTC
There is unfortunately no xorg-x11-server-Xorg-1.20.11-2.el8 in Fedora's koji yet. I just tried a scratch build and that picked up the .10. It is also not possible to do build overrides with EPEL builds if packages belong to core of RHEL/CentOS. We'll have to wait until this hits koji and they rebuild. Sounds like a major problem with EPEL and CentOS 8 stream then. This is quite a significant source of problems for packages compatibility Sounds like a problem that's already been solved. :) https://fedoraproject.org/wiki/EPEL_Next xorgxrdp needs to be branched and rebuilt on epel8-next. bojan if you need help with that please let me know. But the instructions are basically fedpkg request-branch epel8-next # wait for the branch to be created fedpkg switch-branch epel8-next git merge epel8 fedpkg push # (optional) bump your release, make edits or whatever you want fedpkg build fedpkg update # follow the usual update steps Yeah, I can try that. Hello Bojan, I asked on the EPEL mailing list and Troy was kind enough to answer. I didn't know about epel-next. Would you consider building xorgxrdp for epel-next please? Thank you. Kind regards. Enrico (In reply to Bojan Smojver from comment #4) > Yeah, I can try that. Thank you so much! I'll give it a try when ready. Yes, tomorrow, my time. I'm concerned about why xorgxrdp has this strict version requirement. [root@rhel8-container:~]# repoquery --quiet --requires xorgxrdp | grep server xorg-x11-server-Xorg(x86-64) = 1.20.10 This was implemented here [0], without an explanation as to why it's needed. This means that any time xorg-x11-server-Xorg gets a new version, xorgxrdp has to be rebuilt. That is the case here, where rhel8 has 1.20.10, but c8s has updated to 1.20.11. A rebuild in epel8-next will solve this, but wouldn't it make more sense to relax the requirement instead? xorg-x11-server-Xorg provides several abi virtual provides, defined in the pkgconfig file, that seem like a better fit for this. [root@c8s-container:~]# grep abi /usr/lib64/pkgconfig/xorg-server.pc abi_ansic=0.4 abi_videodrv=24.1 abi_xinput=24.1 abi_extension=10.0 [root@c8s-container:~]# for abi in ansic extension videodrv xinput; do pkgconf --variable abi_$abi xorg-server; done 0.4 10.0 24.1 24.1 Those abis match across 1.20.10 and 1.20.11. [root@rhel8-container:~]# repoquery --quiet --provides xorg-x11-server-Xorg-1.20.10-1.el8 | grep abi xserver-abi(ansic-0) = 4 xserver-abi(extension-10) = 0 xserver-abi(videodrv-24) = 1 xserver-abi(xinput-24) = 1 [root@c8s-container:~]# repoquery --quiet --provides xorg-x11-server-Xorg-1.20.11-2.el8 | grep abi xserver-abi(ansic-0) = 4 xserver-abi(extension-10) = 0 xserver-abi(videodrv-24) = 1 xserver-abi(xinput-24) = 1 If xorgxrdp can be adjusted to require these virtual provides instead of the exact xorg-x11-server-Xorg version, the epel8 package would be compatible with both rhel8 and c8s without needing to rebuild it in epel8-next. epel8-next would still be an option if c8s ever rebased to a newer version that changes the abi. [0] https://src.fedoraproject.org/rpms/xorgxrdp/c/972cc469c86c7669c770eb2919665e96eaa7b1f3 (In reply to Carl George 🤠from comment #8) > I'm concerned about why xorgxrdp has this strict version requirement. Xorg binary enforces this at runtime, so we just follow that in packaging to avoid disappointment. FEDORA-EPEL-NEXT-2021-2f995dcce7 has been submitted as an update to Fedora EPEL 8 Next. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-NEXT-2021-2f995dcce7 FEDORA-EPEL-NEXT-2021-2f995dcce7 has been pushed to the Fedora EPEL 8 Next testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-NEXT-2021-2f995dcce7 See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. After some investigation, I can see that other xorg modules don't do this. xorg-x11-server-devel has a script named xserver-sdk-abi-requires that most other xorg module packages use generate the abi requires. Here is an example from xorg-x11-drv-fbdev [0]. Requires: Xorg %(xserver-sdk-abi-requires ansic) Of the abis listed in the pc file, only ABI_CLASS_VIDEODRV and ABI_CLASS_XINPUT are listed in the xorgxrdp code base, so I think you'll just need lines for those. I've sent a pull request to implement this on rawhide, which can be cherry-picked back to the epel8 branch. [0] https://src.fedoraproject.org/rpms/xorg-x11-drv-fbdev/blob/6acaeae11f8ae74c02520417a9bf19f485f69ae6/f/xorg-x11-drv-fbdev.spec#_24 [1] https://src.fedoraproject.org/rpms/xorgxrdp/pull-request/1 OK, we can try that. Ideally, this package should be rebuilt when underlying dependencies change, automatically. There is an old bug along those lines. I gave a quick try to the package in epel-next-testing and the deps are now resolved! The package / system can be installed and upgraded without problems now. Thank you very much to everybody. FEDORA-EPEL-2021-b9a644683c has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-b9a644683c FEDORA-EPEL-2021-b9a644683c has been pushed to the Fedora EPEL 8 testing repository. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2021-b9a644683c See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-EPEL-2021-b9a644683c has been pushed to the Fedora EPEL 8 stable repository. If problem still persists, please make note of it in this bug report. |