Is there a guide for rebuilding the entire OS from source (ex. how to create a RHEL derivative from source)

38 views
Skip to first unread message

Jeremy Hendricks

unread,
Jun 4, 2019, 10:23:06 AM6/4/19
to springdale-devel
For my own education, is there a guide that shows exactly how to create a RHEL derivative from the source provided from Redhat? I have always wondered how to do this and wanted to pursue this for my own betterment.

Thank  you.

JP

unread,
Jun 6, 2019, 12:23:44 PM6/6/19
to springdale-devel
Hullo,

sorry about the delay in answering - somewhat busy.  

Guide? Don't think so.  Much of the process is pretty straightforward even though it keeps getting muddled by new OS features - e.g. Appstream complicates things a lot - and there is always a lack of a complete picture of what's over the wall at Red Hat.  I.e. how exactly each package is built and in which environment - for example, a bunch of packages in 8.0 failed to build or test because they were originally built against an older version of openssl.  There are others that fail to build because they have embedded test certs that expired between when they did it and when final 8.0 was released.  I could go on and on about such trouble...

So for most, probably 90-95% it is a simple mock build with some added constraints - e.g. if their source has el8_0 then you better override dist to be .el8_0.  Now with appstream you also have to worry about having relevant appstream packages available for use during the build as appstream process itself is difficult to reproduce fully (no access to their internal git repos for those packages which is quite necessary to get the same commits and versions).

Otherwise you do need to have enough of core packages to start a build - if you have the complete os that you are rebuilding then it should be fairly easy.  Otherwise, like in this case, it gets very messy very quickly.  I don't have RHEL8 and all of the rebuilds were based off of publicly available beta (which is very much incomplete) and by picking pieces from fedora until it was solid enough to stand on its own feet and rebuild again from itself.  E.g., rhel8 beta did not have a lot of 32 bit, even basic stuff like glibc-static.i686 and glibc-static.x86_64 which is needed for a bunch of things (glibc/gcc themselves). Some of this can be worked around by building without tests and then rebuilding again with tests, some is more painful (as there is no gcc.i686 at all in beta).  There was a lot of "pick a binary from fedora 28 or 29 or one of its updates that makes this build, remove it once it built, rebuild again to make sure it's ok".

Then once all is built there are comps/groups files, composing it into something that looks installable and building install images.... 

If you give it a try let us know and I can give you pointers as you go along.

JP

On Tue, Jun 4, 2019 at 10:23 AM Jeremy Hendricks <jwh...@gmail.com> wrote:
For my own education, is there a guide that shows exactly how to create a RHEL derivative from the source provided from Redhat? I have always wondered how to do this and wanted to pursue this for my own betterment.

Thank  you.

--
You received this message because you are subscribed to the Google Groups "springdale-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to springdale-dev...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/springdale-devel/3292eba2-54c6-494d-acb1-03b937c5487a%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Oleg Sadov

unread,
Jun 7, 2019, 11:06:18 AM6/7/19
to springda...@googlegroups.com
Generally for package rebuilding you need a repository with binary
distro packages and mock/mockchain utilities. In some cases possibly
you may need to create some additional repositories for building of
some specific packages.

Another task -- creation of ISOs. You may find some info about
building customized installation ISOs on SL web-site:
https://www.scientificlinux.org/documentation/customize-sl-for-your-site/
and about Live images:
http://www.livecd.ethz.ch/
We often use these tools to create specialized NauLinux distributions
for educational purposes:
https://www.scientificlinux.org/community/based-on-sl/

чт, 6 июн. 2019 г. в 19:23, JP <plaz...@gmail.com>:
> To view this discussion on the web visit https://groups.google.com/d/msgid/springdale-devel/CA%2Bm%3DbgtpzeShwbUXZFwvaKq2ovbOyG0e-mHU_VqyrJ4BXLhLag%40mail.gmail.com.
Reply all
Reply to author
Forward
0 new messages