#!/bin/sh [ -d cdrom.image ] || (echo "No cdrom.image directory?"; exit 1) distname='SME Server' distvers=$(basename $(pwd)) distarch=$(uname -i) 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 \ $distarch > pkgorder PACKAGES="glibc glibc-common setup openssl python newt slang libselinux libsepol libtermcap zlib ash e2fsprogs util-linux raidtools popt mdadm procps rpm rpm-libs XFree86 Xconfigurator anaconda tzdata anaconda-runtime kudzu hwdata bzip2 beecrypt ncurses readline bzip2-libs dosfstools pciutils reiserfs-utils parted sed busybox-anaconda rpm-python booty hdparm lvm2 beecrypt device-mapper rhpl pyxf86config libxml2 libxml2-python glib2 audit-libs elfutils-libelf bogl-bterm bogl krb5-libs convertdb1 jfsutils xfsprogs xfsdump dmapi libacl libattr attr acl bogl-devel policy policycoreutils pyparted xorg-x11 selinux-policy-targeted kernel-pcmcia-cs kernel-utils" PACKAGESGR="anaconda XFree86-libs libpng XFree86-75dpi-fonts XFree86-ISO8859-2-75dpi-fonts gtk2 XFree86-ISO8859-9-75dpi-fonts esound audiofile libgnome XFree86-100dpi-fonts fonts-ISO8859-2 fonts-ISO8859-9 XFree86-xfs e2fsprogs coreutils glibc glibc-common readline popt specspo util-linux rpm rpm-libs tzdata procps ncurses bash cpio gpm XFree86 Xconfigurator gnome-python2 pygtk2 gdk-pixbuf XFree86-KOI8-R XFree86-KOI8-R-75dpi-fonts pam reiserfs-utils atk pango freetype gnome-python2-canvas libgnomecanvas libart_lgpl libgcc libacl libattr libstdc++ expat anaconda-images anaconda-help XFree86-base-fonts ttfonts-ko taipeifonts XFree86-ISO8859-15-75dpi-fonts rhpl system-config-keyboard Xft fontconfig redhat-artwork audit-libs ttfonts-ja ttfonts-zh_TW bitmap-fonts-cjk urw-fonts fonts-arabic comps-extras XFree86-libs-data convertdb1 fonts-bengali vnc-server libjpeg tcp_wrappers system-config-date xfsprogs xfsdump dmapi attr acl policy policycoreutils selinux-policy-targeted ttfonts-zh_CN xorg-x11-libs xorg-x11-ISO8859-2-75dpi-fonts xorg-x11-ISO8859-9-75dpi-fonts xorg-x11-100dpi-fonts xorg-x11-xfs xorg-x11 xorg-x11-KOI8-R xorg-x11-KOI8-R-75dpi-fonts xorg-x11-base-fonts xorg-x11-ISO8859-15-75dpi-fonts fonts-xorg-ISO8859-2-75dpi fonts-xorg-ISO8859-15-75dpi fonts-xorg-ISO8859-9-75dpi fonts-xorg-100dpi fonts-xorg-KOI8-R fonts-xorg-KOI8-R-75dpi fonts-xorg-base xorg-x11-base xorg-x11-ISO8859-15-75dpi xorg-x11-libs-data xorg-x11-xfs prelink redhat-logos fedora-logos ttfonts-ta ttfonts-bn ttfonts-gu ttfonts-hi ttfonts-pa syslinux memtest86+" PACKAGESRESCUE="bzip2 bzip2-libs dump findutils ftp gzip iputils joe krb5-libs less man modutils mtools mt-st mtr net-tools open openssh openssh-clients pciutils rsh traceroute tar" for PKG in $PACKAGES $PACKAGESGR $PACKAGESRESCUE do PACKAGEFILES=$(rpm --qf "%{NAME} %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm\n" --nodigest --nosignature -qp /mirrors/centos/4/updates/$distarch/RPMS/$PKG*.rpm | grep "^$PKG " | sed 's/.* //') if [ -n "$PACKAGEFILES" ]; then for PKGFILE in $PACKAGEFILES do if [ ! -f $(pwd)/cdrom.image/CentOS/RPMS/$PKGFILE ]; then ln -sf /mirrors/centos/4/updates/$distarch/RPMS/$PKGFILE $(pwd)/cdrom.image/CentOS/RPMS/$PKGFILE fi done else PACKAGEFILES=$(rpm --qf "%{NAME} %{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}.rpm\n" --nodigest --nosignature -qp /mirrors/centos/4/os/$distarch/CentOS/RPMS/$PKG*.rpm | grep "^$PKG " | sed 's/.* //') if [ -n "$PACKAGEFILES" ]; then for PKGFILE in $PACKAGEFILES do if [ ! -f $(pwd)/cdrom.image/CentOS/RPMS/$PKGFILE ]; then ln -sf /mirrors/centos/4/os/$distarch/CentOS/RPMS/$PKGFILE $(pwd)/cdrom.image/CentOS/RPMS/$PKGFILE fi done fi fi done PYTHONPATH=/usr/lib/anaconda/ sudo /usr/lib/anaconda-runtime/buildinstall \ --comp dist-4.3 \ --pkgorder pkgorder \ --release "$distname" \ --product "$distname" \ --version 7.0 \ $(pwd)/cdrom.image/ # Remove previous linked files find $(pwd)/cdrom.image/CentOS/RPMS/ -type l | xargs rm -f # Copy updated isolinux files sudo cp -f /builds/isolinux/* $(pwd)/cdrom.image/isolinux/ echo "You now need to run /builds/bin/build_ISO as non-root" # That's it.