[CentOS-devel] Centos Stream - src.rpms?

Thu Dec 17 15:05:22 UTC 2020
Johnny Hughes <johnny at centos.org>

On 12/16/20 6:03 PM, Antal Nemeš wrote:
> 
> 
>> -----Original Message-----
>> From: CentOS-devel <centos-devel-bounces at centos.org> On Behalf Of
>> Johnny Hughes
>> Sent: Tuesday, 15 December 2020 22:16
>> To: centos-devel at centos.org
>> Subject: Re: [CentOS-devel] Centos Stream - src.rpms?
>>
>> On 12/12/20 9:33 AM, Leon Fauster via CentOS-devel wrote:
>>> Am 12.12.20 um 10:39 schrieb Nico Kadel-Garcia:
>>>> On Fri, Dec 11, 2020 at 11:39 AM Leon Fauster via CentOS-devel
>>>> <centos-devel at centos.org> wrote:
>>>>>
>>>>> Am 11.12.20 um 15:07 schrieb Antal Nemeš:
>>>>>> Hi,
>>>>>>
>>>>>> Will src.rpm packages be made available for Stream repositories?
>>>>>>
>>>>>> Currently, I see only empty subdirs for 8-stream at
>>>>>> https://vault.centos.org/centos/8-stream/
>>>>>>
>>>>>
>>>>> I haven't checked but take a look at git.centos.org (c8s tag) ...
>>>>
>>>> There is *always* a potential mismatch between a git repo and the
>>>> source actually used for building an RPM. SRPM's also have a gpg
>>>> signature, git repos do not, and establishing provenance can be
>>>> adventuresome. So can setting up the variety of git epos, along with
>>>> the source tarballs, to assemble in a local compilation environment
>>>> for local rpmbuild or mock.
>>>>
>>>> So can stunning foolishness like the Fedora SRPM for chromium, which
>>>> includes specific source files in the SRPM only if compiled on a
>>>> specific operating system. I just noticed trying to backport Chromium
>>>> 87 to CentOS 7.
>>>>
>>>
>>> Sure, I would also like to see such SRPMs but as you see it for C8,
>>> there are no SRPMs anymore on RedHat's ftp/http servers, the sources
>>> are consolidated in git now. Maybe someone from RH could highlight
>>> this aspect (C8S) here a bit more ...
>>>
>>
>> Not sure what the question is .. but:
>>
>> All packages, except the kernel because of secureboot, are built directly from
>> git.centos.org from the c8s branch.
>>
>> For example .. (just picking a build at random):
>>
>> https://koji.mbox.centos.org/koji/buildinfo?buildID=15034
>>
>> If you look at the Source Line .. you will see:
>>
>> hhttps://git.centos.org/rpms/thermald#14acf460654c5788d9c7792f36fed45c
>> 7e00a387
>>
>> That is the exact source used to build this package set
>>
>> If you want to create the SRPM .. you would:
>> =======
>> git clone https://git.centos.org/rpms/thermald
>>
>> cd thermald
>>
>> git checkout 14acf460654c5788d9c7792f36fed45c7e00a387
>>
>> into_srpm.sh
>>
>> =======
>>
>> You will then have the SRPM in the SRPMs dir of your git repo .. it will also be
>> exploded and ready for you to use in SPECS and SOURCES to make changes.
>>
>> If you do not have the git tools downloaded .. where into_srpm.sh comes
>> from, you can get it from here:
>>
>> git clone https://git.centos.org/centos-git-common
>>
>> So, to clarify, we build Centos Linux 8 and CentOS Stream directly from
>> git.centos.org and you can look at the bild and get the exact git commit id
>> that was used on the build.
> 
> 1. For Centos Stream, will this be a formal method for obtaining src.rpms, or will src.rpms be made available on vault.centos.org?
> 2. Does this procedure work for modular packages as well?
> 3. Does koji store all builds or is there an age cutoff? Will I be able to follow the src.rpm build process for a package built a year ago?
> 
> 

I'm sure src rpms will also be available in the future, once all the
hardware and mirrors are in place (we can not support downloading
directl off our main koji machine that controls all the builds.

But in our build system, the SRPMS are built literally on the fly, from
the commitid out of git.  We do not use srpms directly, we build from
the git repo.