#!/bin/sh # Charlie Brady wrote on smeserver-developer: # [I'm sure I've said this before, but ...] there's no new anaconda SRPM. # The cdrom image I've been using comes directly from a CentOS one. # # What I've done is: # # - add CentOS/base/updates.img, made using mkcramfs from the updates directory # - delete unwanted RPMs # - add wanted RPMs # - replace comps.xml # - add install.cfg and update.cfg # - edit isolinux/isolinux.cfg # # Run this in the a 7.0alphaXX directory, containing cdrom.image # which contains the directory tree: echo "Checking packages not installed in CentOS workstation group" for package in anaconda anaconda-runtime bogl booty createrepo mkisofs zsync do rpm -q $package || exit "$package must be installed" done [ -d cdrom.image ] || (echo "No cdrom.image directory?"; exit 1) distname='SME Server' distvers=$(basename $(pwd)) [ -f cdrom.image/updates/anaconda ] && chmod a+rx cdrom.image/updates/anaconda chmod -R a+rX cdrom.image for img in product updates do /usr/bin/mkcramfs \ $(pwd)/cdrom.image/$img \ $(pwd)/cdrom.image/CentOS/base/$img.img done PYTHONPATH=/usr/lib/anaconda/ /usr/lib/anaconda-runtime/genhdlist \ --withnumbers \ $(pwd)/cdrom.image/ PYTHONPATH=/usr/lib/anaconda/ /usr/lib/anaconda-runtime/pkgorder \ $(pwd)/cdrom.image \ i386 > pkgorder PYTHONPATH=/usr/lib/anaconda/ /usr/lib/anaconda-runtime/genhdlist \ --withnumbers \ --fileorder pkgorder \ $(pwd)/cdrom.image/ rm -f smeserver-$distvers.iso smeserver.iso cd cdrom.image yum-arch . createrepo . bootimg='isolinux/isolinux.bin' bootcat='isolinux/boot.cat' #mkisopts='-r -N -L -d -D -J' mkisopts='-r -J' today="$(date '+%d %b %Y')" mkisofs $mkisopts \ -V "$distname $distvers" \ -A "$distname created on $today" \ -b "$bootimg" \ -c "$bootcat" \ -no-emul-boot -boot-load-size 4 -boot-info-table \ -x lost+found \ -x CVS \ -o "../smeserver-$distvers".iso \ . cd .. /usr/lib/anaconda-runtime/implantisomd5 smeserver-$distvers.iso dd if=/dev/zero bs=2048 count=150 >> smeserver-$distvers.iso md5sum smeserver-$distvers.iso > smeserver-$distvers.iso.md5sum ls -lRt > smeserver-$distvers.iso.ls-lRt zsyncmake smeserver-$distvers.iso mv smeserver-$distvers.iso smeserver.iso ln -sf smeserver.iso smeserver-$distvers.iso # That's it.