[rock-user] Re: Distributions vs kernel development

Rene Rebe <[email protected]>
Newsgroups gmane.linux.distributions.rock.user
Message-ID <[email protected]>
Hi,

On: Sun, 09 May 2004 13:40:44 -0500,
    "J. Ryan Earl" <[email protected]> wrote:

> >Gentoo has no support for custom modifications not even thinking about
> >a way to group such custom modifications / build configuration into a
> >well defined way to form a distribution. 
> >
> Wow, have you ever used Gentoo actually?

Yes, and from time to time I look into an ebuild - what I see usually
hurts my eyes.

>  Gentoo is a Meta-Distribution: 
> a distribution that describes itself.  Purely by -definition- you can 
> modify it in any way you want.  There is no limit to how you can modify 
> it, I'm not sure what gives you this idea.

I can modify _any_ source in the way I want. There is nothing META
needed. And by maintaining my own copy I have a fork. There does not
seem to be much Meta in Gentoo - I just see a source distribution.

You still did not got it? Sure I can also maintain a copy of SuSE
SRPMs and mess in it like I want, but the next time you have to merge
carefully. In ROCK Linux (a distribution build kit) you can cleanly
interfact with the build system and all the packages build in a clean
- well defined fashion and store those modification in a target -
where multiple of this targets can nicely coexist.

> Custom groups?  Group is such a vague term, but I'll give an example of 
> a "custom group."  Say you have an identical set of 50 mcahines each 
> with their own harddrives.  You can maintain your own snapshop of Gentoo 
> (ie portage) on your own rsync server in which you have your own sandbox 
> in which you test and validate updates before pushing them to the 
> "group" of 50 machines in a prebuilt binary package format.

Which is a seperated tree like a fork of Gentoo.

> Just read this snippet from the sample make.conf:

Humans long ago learned spoken and written words to abstract thing? I
shoudl really try to guess what those random variables are good for
(which ahs nothing to do with generically customizing a distribution)?

> # FEATURES are settings that affect the functionality of portage. Most of
> #     these settings are for developer use, but some are available to non-
> #     developers as well.
> #
> #  'autoaddcvs'  causes portage to automatically try to add files to cvs
> #                that will have to be added later. Done at generation times
> #                and only has an effect when 'cvs' is also set.

?

> #  'buildpkg'    causes binary packages to be created of all packages that
> #                are merged.

Wow.

> #  'ccache'      enables ccache support via CC.

/me too - no problem

> #  'cvs'         feature for developers that causes portage to enable all
> #                cvs features (commits, adds) and all USE flags in SRC_URI
> #                will be applied for digests.

?

> #  'digest'      autogenerate a digest for packages.

??

> #  'distcc'      enables distcc support via CC.

Wow.

> #  'fixpackages' allows portage to fix binary packages that are stored in
> #                PKGDIR. This can consume a lot of time. 'fixpackages' is
> #                also a script that can be run at any given time to force
> #                the same actions.

What the hell is this for?

> #  'keeptemp'    prevents the clean phase from deleting the temp files ($T)
> #                from a merge.

? If this is not to remove an extracted and tried to build tarball we
have this "feature" too ...

> #  'keepwork'    prevents the clean phase from deleting the WORKDIR.

?

> #  'noauto'      causes ebuild to perform only the action requested and
> #                not any other required actions like clean or

?

> #  'noclean'     prevents portage from removing the source and temporary 
> files
> #                after a merge -- for debugging purposes only.

?

> #  'nostrip'     prevents stripping of binaries.

Wow - we have this, too (have I mentioned in a cool "make menuconfig"
style GUI?). This nothing to do with customizing a distribution.

> #  'notitles'    disables xterm titlebar updates (which contain status 
> info).

Aha ...

> #  'sandbox'     enable sandbox-ing when running emerge and ebuild

Uhm.

> #  'strict'      causes portage to react strongly to conditions that
> #                have the potential to be dangerous -- like missing or
> #                incorrect Manifest files.

Well ... what is it for?

> #  'userpriv'    allows portage to drop root privleges while it is compiling
> #                as a security measure, and as a side effect this can remove
> #                sandbox access violations for users.

Interesting.

> #  'usersandbox' enables sandboxing while portage is running under userpriv.
> #                unpack -- for debugging purposes only.

Aha.


I have not seen a single thing that has s.th. to do with creating a
custom distribution. This involves:

- possibility to interact with the build process of every package to
spread files to different places, modify file content, config files,
etc.

- possibility to add patches to every package - in a well defines
manner outside of the main package repository (after all this is under
source control and not intended by 3rd parties to be messed with)

- possiblity to change the whole build process to do s.th. totally
different

- possiblity to change the output format like custom FLASH creation,
custom boot image creation (such as live-cd) and so on.

This is all possible within ROCK Linux.

> That's not right either, you can have your own sandbox (see above) in 
> Gentoo in additional to custom CFLAGS and USE flags that customize which 
> packages play with other packages.

Yeah - with this non-existing sandbox or so I also would like to have
an own implementation. In fact ROCK already ships a useful and
full-featured one ...

> >And when you read some ebuild scripts you find
> >the ROCK Linux automatics and tag based ASCI package description
> >format very pleasant, e.g.:
> >
> You can pimp ROCK without trying to knock Gentoo; Gentoo is quite 
> powerful, well supported, and easy to extend customize.

Sure Gentoo is s.th. - and why does all those Gentoo freaks always has
to bash everything else? After all I just (just!) wanted to mention
that there s.th. else then Fedora Core, Suse, Debian or Gentoo. But
somehow those Gentoo frekas always freaks up ofr this.

Sincerely yours,
  René Rebe
    - ROCK Linux stable release maintainer

--  
René Rebe - Europe/Germany/Berlin
  [email protected] [email protected]
http://www.rocklinux.org http://www.rocklinux-consulting.de
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.