[CentOS-devel] FYI: centos reproduceability

Fri Apr 24 21:55:17 UTC 2009
Farkas Levente <lfarkas at lfarkas.org>

David Hrbác wrote:
> Farkas Levente napsal(a):
>> hi,
>> as it was told that centos can be reproduced and all rpm build in mock i
>> just made a quick test and try to rebuild all centos-5.3 srpms. the
>> result not too bad but far from perfect. the setup was a fresh i386
>> centos-5.3 minimal install + yum update + install mock-0.6.13-1.el5_2.3
>> (the result was almost the same even worse with 2 srpms with
>> mock-0.9.14-1.el5).
>> from 1186 srpms
> 
> Hi Farkas,
> what is you method to obtain rmp build list with correct dependencies?
> Could you share how you automate it?

how cares? no one. the real question what centos and redhat use to make
a reproducible, working and reliable distro?
the answer this is not solved:-(
fyi: you're not even able to rebuild rhel/centos 5.3 on itself!
this comes from the simple fact how these distros put together. let's
start from 5.0 copy a few packages from fedora core 6 (!) both the srpms
and the binaries, build a few packages on rhel4 rebuild them on the new
system and if it's working together (ie. can run) then it's ok.
then in 5.1 copy packages from 5.0, plus rebuild new packages. and the
same for all new .x updates.
one of the answer for my bugzilla report was:
"to be able to rebuild the src.rpm is not our (redhat) goal":-) so
ticket was closed.
just ot mention a few problem with 5.3:
- openjava was added to the distro so all packages which requires
java-devel now try to build with openjava in stead of gcc's java and
most of them fail.
- new updates like dbus-glib, ifd-gate, pccs etc have incompatible devel
packages eg. headers, but not all of the packages requires these new
packages was rebuild/fixed so those packages no longer build.
- newer gcc, toolchain etc (which included in later updates) have
stronger check and standard compliance but with these tools old and
buggy code no longer compile.
- rpm and yum (and its' tools) far from perfect... suppose i don't use
mock. how can i install all required package to buld X.src.rpm?
apt-get build-dep is many years old, but with rpm?
- rpmlint is almost unusable (it's warning about space and tabs:-), but
no one really checks rhel's and fedora's spec file. eg. see mysql (a not
so important package:-) it's build check is not in the %check section
but in the %build. it's a serious bug? not we can put everything in the
%prep and it's still working, but currently you can't rebuild mysql even
on it's original rhel 5.2:-(

imho before all release it must be a massrebuild of the whole distro in
itself there is not any other solution.

i was a redhat mirror site admin since redhat 3.0 (not rhel:-) and use
redhat/centos/fedora since then but after 15 years i start to thing
about ubuntu:-(

-- 
  Levente                               "Si vis pacem para bellum!"