[CentOS-devel] Missing build dependencies in CentOS 8 repositories

Tue Apr 13 14:59:46 UTC 2021
Johnny Hughes <johnny at centos.org>

On 4/13/21 8:45 AM, Troy Dawson wrote:
> 
> 
> On Tue, Apr 13, 2021 at 4:07 AM František Šumšal <frantisek at sumsal.cz
> <mailto:frantisek at sumsal.cz>> wrote:
> 
>     Hello!
> 
>     I'm not sure if this has been already answered somewhere on this
>     list, but
>     I'm curious why the CentOS 8 repositories are missing certain build
>     dependencies
>     (although they're present in RHEL's internal repositories). This
>     makes rebuilding
>     some of the CentOS 8 packages a bit painful.
> 
>     For example, let's try to rebuild util-linux:
> 
>     ```
>     $ podman run -it --rm centos:8
>     # rm -f /etc/yum.repos.d/CentOS-Linux-Media.repo
>     # dnf -y install dnf-plugins-core
>     ...
>     # dnf --refresh --enablerepo \* -y builddep util-linux
>     Failed to set locale, defaulting to C.UTF-8
>     CentOS Linux 8 - AppStream                                    10
>     kB/s | 4.3 kB     00:00   
>     CentOS Linux 8 - BaseOS                                       23
>     kB/s | 3.9 kB     00:00   
>     CentOS Linux 8 - ContinuousRelease                           5.3
>     kB/s | 3.0 kB     00:00   
>     CentOS Linux 8 - Debuginfo                                   1.6
>     MB/s |  27 MB     00:16   
>     CentOS Linux 8 - Devel WARNING! FOR BUILDROOT USE ONLY!       18
>     kB/s |  13 kB     00:00   
>     CentOS Linux 8 - Extras                                      8.2
>     kB/s | 1.5 kB     00:00   
>     CentOS Linux 8 - FastTrack                                   933 
>     B/s | 257  B     00:00   
>     CentOS Linux 8 - HighAvailability                            741
>     kB/s | 504 kB     00:00   
>     CentOS Linux 8 - Plus                                        807
>     kB/s | 596 kB     00:00   
>     CentOS Linux 8 - PowerTools                                  2.1
>     MB/s | 2.0 MB     00:00   
>     CentOS Linux 8 - BaseOS - Source                             120
>     kB/s | 384 kB     00:03   
>     CentOS Linux 8 - AppStream - Source                          271
>     kB/s | 991 kB     00:03   
>     CentOS Linux 8 - Extras - Source                             2.2
>     kB/s | 7.8 kB     00:03   
>     CentOS Linux 8 - Plus - Source                               1.7
>     kB/s | 5.0 kB     00:03   
>     Package systemd-239-41.el8_3.x86_64 is already installed.
>     No matching package to install: 'libuser-devel'
>     Not all dependencies satisfied
>     Error: Some packages could not be found.
>     ```
> 
>     Oh well, looks like we have to rebuild libuser as well:
> 
>     ```
>     # dnf --enablerepo \* -y builddep libuser
>     Failed to set locale, defaulting to C.UTF-8
>     Last metadata expiration check: 0:02:14 ago on Tue Apr 13 10:36:39 2021.
>     No matching package to install: 'openldap-servers'
>     Not all dependencies satisfied
>     Error: Some packages could not be found.
>     ```
> 
>     And apparently openldap, too.
> 
>     I noticed that Davide from FB already come across this issue and
>     filed it in RHBZ[0], where it was
>     confirmed that the dependency is indeed present only in the internal
>     RHEL buildroot repository -
>     and after a quick test they still are:
> 
>     # dnf --enablerepo rhel-buildroot search libuser-devel
>     ...
>     libuser-devel.i686 : Files needed for developing applications which
>     use libuser
>     libuser-devel.x86_64 : Files needed for developing applications
>     which use libuser
> 
>     Is there any reason why they aren't shipped in some CentOS
>     repository or was there any progress
>     to make them available?
> 
>     Thank you!
> 
>     Frantisek
> 
> 
>     [0] https://bugzilla.redhat.com/show_bug.cgi?id=1868430
>     <https://bugzilla.redhat.com/show_bug.cgi?id=1868430>
> 
>     -- 
>     Frantisek Sumsal
>     GPG key ID: 0xFB738CE27B634E4B
> 
>     _______________________________________________
>     CentOS-devel mailing list
>     CentOS-devel at centos.org <mailto:CentOS-devel at centos.org>
>     https://lists.centos.org/mailman/listinfo/centos-devel
>     <https://lists.centos.org/mailman/listinfo/centos-devel>
> 
> 
> Yes, this has been discussed before on the list.  And it's a rather sore
> point.
> 
> There are several -devel packages that are available on INTERNAL RHEL
> repositories, but they are never released externally.
> Thus any RHEL customers are not able to use them to build things that
> depend on those libraries, such as your example, libuser.
> 
> CentOS is a clone (warts and all) of RHEL, and thus doesn't have those
> -devel packages available either.
> 
> It's been this way since the release of RHEL8.
> 
> Has there been any progress?
> Yes, a bit.
> First, check to make sure there is a bugzilla open for whichever missing
> -devel package you need.
> Next, wait several months/years to see the debate go back and forth on
> the bug.  It's possible it might make it in.
> 
> Sorry for the sad tone, it's just a battle I've been waging since before
> RHEL8 was released.  I've given up hope for them being released on
> RHEL8, though occasionally I am happily surprised.  One of the packages
> I've been fighting for will be released in RHEL 8.4 ... but that's just
> 1 out of 4.
>

We have made some progress as well .. we have gotten permission to
release some packages here:

http://mirror.centos.org/centos/8.3.2011/Devel/

We can't yet release everything .. but it is better than nothing.

Same for Stream:

http://mirror.centos.org/centos/8-stream/Devel/

There is also the Powertools repo that has the Code Ready Base (CRB)
items, so many things outside straight RHEL are published .. everything
we are allowed to publish now, in fact.