Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   CentOS Development (http://www.linux-archive.org/centos-development/)
-   -   How Centos compiles SRPMs from Red Hat (http://www.linux-archive.org/centos-development/653405-how-centos-compiles-srpms-red-hat.html)

Peter Penzov 04-06-2012 05:12 PM

How Centos compiles SRPMs from Red Hat
 
Hi,
* I'm interested how Centos Team changes and compiles SRPMs from Red Hat? Do you have a public manual which describes the process of compilation and building Centos? I suppose that this information is not private. Can you give me a more information about that?


Best wishes
Peter

_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Leon Fauster 04-06-2012 07:13 PM

How Centos compiles SRPMs from Red Hat
 
Am 06.04.2012 um 19:12 schrieb Peter Penzov:
> Hi,
> I'm interested how Centos Team changes and compiles SRPMs from Red Hat? Do you have a public manual which describes the process of compilation and building Centos? I suppose that this information is not private. Can you give me a more information about that?


Look through the list archive. There are a lot of discussions about the process in the last months.

LF



_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Peter Penzov 04-06-2012 07:38 PM

How Centos compiles SRPMs from Red Hat
 
Do you have internal manual or a guide that you can share?

On Fri, Apr 6, 2012 at 10:13 PM, Leon Fauster <leonfauster@googlemail.com> wrote:

Am 06.04.2012 um 19:12 schrieb Peter Penzov:

> Hi,

> I'm interested how Centos Team changes and compiles SRPMs from Red Hat? Do you have a public manual which describes the process of compilation and building Centos? I suppose that this information is not private. Can you give me a more information about that?






Look through the list archive. There are a lot of discussions about the process in the last months.



LF







_______________________________________________

CentOS-devel mailing list

CentOS-devel@centos.org

http://lists.centos.org/mailman/listinfo/centos-devel



_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Crunch 04-06-2012 10:27 PM

How Centos compiles SRPMs from Red Hat
 
On 04/06/2012 04:38 PM, Peter Penzov wrote:
> Do you have internal manual or a guide that you can share?
>
> On Fri, Apr 6, 2012 at 10:13 PM, Leon Fauster
> <leonfauster@googlemail.com <mailto:leonfauster@googlemail.com>> wrote:
>
> Am 06.04.2012 <tel:06.04.2012> um 19:12 schrieb Peter Penzov:
> > Hi,
> > I'm interested how Centos Team changes and compiles SRPMs from
> Red Hat? Do you have a public manual which describes the process
> of compilation and building Centos? I suppose that this
> information is not private. Can you give me a more information
> about that?
>
>
> Look through the list archive. There are a lot of discussions
> about the process in the last months.
>
> LF
>
>
>
> _______________________________________________
> CentOS-devel mailing list
> CentOS-devel@centos.org <mailto:CentOS-devel@centos.org>
> http://lists.centos.org/mailman/listinfo/centos-devel
>
>
>
>
> _______________________________________________
> CentOS-devel mailing list
> CentOS-devel@centos.org
> http://lists.centos.org/mailman/listinfo/centos-devel
You might start here:
http://wiki.centos.org/FAQ/General/RebuildReleaseProcess
just found it myself. Happy reading.
_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Crunch 04-06-2012 10:29 PM

How Centos compiles SRPMs from Red Hat
 
On 04/06/2012 04:38 PM, Peter Penzov wrote:
> Do you have internal manual or a guide that you can share?
>
> On Fri, Apr 6, 2012 at 10:13 PM, Leon Fauster
> <leonfauster@googlemail.com <mailto:leonfauster@googlemail.com>> wrote:
>
> Am 06.04.2012 <tel:06.04.2012> um 19:12 schrieb Peter Penzov:
> > Hi,
> > I'm interested how Centos Team changes and compiles SRPMs from
> Red Hat? Do you have a public manual which describes the process
> of compilation and building Centos? I suppose that this
> information is not private. Can you give me a more information
> about that?
>
>
> Look through the list archive. There are a lot of discussions
> about the process in the last months.
>
> LF
>
>
>
> _______________________________________________
> CentOS-devel mailing list
> CentOS-devel@centos.org <mailto:CentOS-devel@centos.org>
> http://lists.centos.org/mailman/listinfo/centos-devel
>
>
>
>
> _______________________________________________
> CentOS-devel mailing list
> CentOS-devel@centos.org
> http://lists.centos.org/mailman/listinfo/centos-devel
Sorry, scratch my last email. Just read this from the top of the page:
http://lists.centos.org/pipermail/centos-devel/2010-May/005545.html

_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Karanbir Singh 04-06-2012 11:03 PM

How Centos compiles SRPMs from Red Hat
 
On 04/06/2012 08:38 PM, Peter Penzov wrote:
> Do you have internal manual or a guide that you can share?
>

well, converting srpms to rpms is covered by 'man rpmbuild', everything
on top of that is to suit taste or process. Or: if just a case of
grabbing the srpm and then :

rpmbuild -ba <srpm>



--
Karanbir Singh
+44-207-0999389 | http://www.karan.org/ | twitter.com/kbsingh
ICQ: 2522219 | Yahoo IM: z00dax | Gtalk: z00dax
GnuPG Key : http://www.karan.org/publickey.asc
_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Peter Penzov 04-06-2012 11:33 PM

How Centos compiles SRPMs from Red Hat
 
I have some questions to ask:
1. What build server do you use and how is configured? Can you paste the mock configuration? (If you use mock)
2. How much time is necessary to build the complete OS?(all packages)
3. When you download the SRPMs from Red Hat ftp server how do you remove the old packages from the latest?

4. Are there any hidden stones?

Please share

On Sat, Apr 7, 2012 at 2:03 AM, Karanbir Singh <mail-lists@karan.org> wrote:

On 04/06/2012 08:38 PM, Peter Penzov wrote:

> Do you have internal manual or a guide that you can share?

>



well, converting srpms to rpms is covered by 'man rpmbuild', everything

on top of that is to suit taste or process. Or: if just a case of

grabbing the srpm and then :



rpmbuild -ba <srpm>







--

Karanbir Singh

+44-207-0999389*| http://www.karan.org/ | twitter.com/kbsingh


ICQ: 2522219 * *| Yahoo IM: z00dax * * *| Gtalk: z00dax

GnuPG Key : http://www.karan.org/publickey.asc

_______________________________________________

CentOS-devel mailing list

CentOS-devel@centos.org

http://lists.centos.org/mailman/listinfo/centos-devel



_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Karanbir Singh 04-06-2012 11:41 PM

How Centos compiles SRPMs from Red Hat
 
On 04/07/2012 12:33 AM, Peter Penzov wrote:
> I have some questions to ask:
> 1. What build server do you use and how is configured? Can you paste the
> mock configuration? (If you use mock)

we use mock on x86_64 hosts, power7 is starting off. I've attached a
mock config here.

> 2. How much time is necessary to build the complete OS?(all packages)

how long is that piece of string ?

> 3. When you download the SRPMs from Red Hat ftp server how do you remove
> the old packages from the latest?

we dont remove anything

> 4. Are there any hidden stones?

Information about the infrastructure used, where its hosted and how its
configured is considered privileged information and isnt released to the
public; its also site specific and has no bearing on what we deliver to
the users. In a nutshell: its a bunch of servers, Where they are, and
who / how they are managed isnt public. Everything else is just a case
of rpmbuild -ba <srpm>; rinse + repeat.



--
Karanbir Singh
+44-207-0999389 | http://www.karan.org/ | twitter.com/kbsingh
ICQ: 2522219 | Yahoo IM: z00dax | Gtalk: z00dax
GnuPG Key : http://www.karan.org/publickey.asc
config_opts['root'] = 'centos-6-extras-x86_64'
config_opts['target_arch'] = 'x86_64'
config_opts['chroot_setup_cmd'] = 'groupinstall build'
config_opts['centos_ver'] = '6'
config_opts['macros']['centos_ver'] = '6'
config_opts['macros']['rhel'] = '6'
config_opts['macros']['el6'] = '1'
config_opts['macros']['redhat'] = '6'

config_opts['yum.conf'] = """
[main]
debuglevel=2
reposdir=/dev/null
logfile=/var/log/yum.log
obsoletes=1
assumeyes=1
syslog_ident=mock
includepkgs=*.x86_64 *.noarch glibc.i686 glibc-devel.i686 nss-softokn-freebl*.i686

# repos
[bsys]
name=bsys
baseurl=http://repohost/t/bsys/

[6.0-os]
name=6.0
baseurl=http://repohost/m/6.0/os/x86_64/

[6.0-u]
name=6.0-u
baseurl=http://repohost/m/6.0/updates/x86_64/
"""
_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Johnny Hughes 04-07-2012 10:39 AM

How Centos compiles SRPMs from Red Hat
 
On 04/06/2012 12:12 PM, Peter Penzov wrote:
> Hi,
> I'm interested how Centos Team changes and compiles SRPMs from Red
> Hat? Do you have a public manual which describes the process of
> compilation and building Centos? I suppose that this information is not
> private. Can you give me a more information about that?
>
> Best wishes
> Peter

I am not sure what you really want ... but ...

1. Our goal is to rebuild every SRPM with this command (which means no
changes, if possible):

rpmbuild --rebuild <SRPM_NAME>

(or rpmbuild -ba <SPEC_NAME> ... which is the same thing with an
extracted SRPM)

2. We only change things that are required to comply with Red Hat's
trademark policy here:

http://www.redhat.com/f/pdf/corp/RH-3573_284204_TM_Gd.pdf

3. There is no Manual (public or otherwise) that describes the process
... we rebuild the SRPMS per (1) above, we make modifications as
required by (2) above.

4. If you want to know what which files we change, the release notes of
every version contain that info ... but as a general rule:

a. We change the kernel so that the key that signs the modules says
CentOS and not Red Hat to comply with their policy on trademarks. We DO
NOT put a .centos. in the name of the kernel because that will break 3rd
party drivers that are built to run in the install media. This is the
only SRPM that is changed but does not have a .centos. in the filename.

b. Any other files we modify have .centos. in the filename. If you
want a list of SRPMS that we have modified, get them all from
vault.centos.org and put them in a directory and do this:

ls *centos*

That list and kernel-2.6.*.src.rpm are files we have modified in some
way ... every other SRPM is just rebuilt per (1) above.

5. If you want to know the exact modifications we made to an SRPM, you
can download and extract the SRPM from our vault and download the
original SRPM from upstream and extract that and run a diff between the
two SPEC directories and the two SOURCE directories.


_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel

Johnny Hughes 04-07-2012 11:10 AM

How Centos compiles SRPMs from Red Hat
 
On 04/06/2012 06:33 PM, Peter Penzov wrote:
> I have some questions to ask:
> 1. What build server do you use and how is configured? Can you paste the
> mock configuration? (If you use mock)
> 2. How much time is necessary to build the complete OS?(all packages)
> 3. When you download the SRPMs from Red Hat ftp server how do you remove
> the old packages from the latest?
> 4. Are there any hidden stones?
>
> Please share

Don't top post ... it is annoying and is not per our guidelines.

http://en.wikipedia.org/wiki/Posting_style

Our guidelines are here:

http://www.centos.org/modules/tinycontent/index.php?id=16

================================================== ======

Karanbir answered the rest of the questions ... but here is an answer to
the one about how long (your #2):

We have no idea how long it would to take to rebuild everything. We
don't do that except for the first time we build a release. We don't
even have any idea if the current SRPMS would build right now if you
tried it (although the SHOULD).

This is because we don't rebuild everything on every run. We only
rebuild NEW things as they are released.

So, upstream releases 3 SRPMs today and we rebuild them today. They
release 3 more SRPMS tomorrow and we rebuild them tomorrow, etc.

So our rebuild is Staged ... if you take all the SRPMS and rebuild them
all at the same time then that may or may not work and may or may not
produce identical results.

For example, things that remain from the original CentOS-6.0 build were
built against the repositories as they existed at that point in time.
If you rebuild them now against CentOS-6.2 (as it exists now), that
could introduce some inconsistencies as you would be using a different
gcc and glibc (the new ones not the 6.0 ones).

================================================== ======

Also, please note that the "CentOS Linux" distribution is open source
and we (the "CentOS Project") provide all source code as we build it.
(That would be the items from the SOURCE directories when you extract
the SRPMS).

We also provide all the scripts and methods required to rebuild it (that
would be the SPEC file and rpmbuild and our distro, if you install it).

Our goal is to provide you will a distribution that is free to use and
to provides sources as required by the licenses of the software that are
contained in CentOS. You provide your own support, although you can use
our mailing lists, forums, and wiki to get help from others in the
"CentOS Community".

However, it has never been the intent of the "CentOS Project" to tell
you how to reproduce CentOS ... we just to provide the things we need to
provide because we are Open Source.

_______________________________________________
CentOS-devel mailing list
CentOS-devel@centos.org
http://lists.centos.org/mailman/listinfo/centos-devel


All times are GMT. The time now is 09:04 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.