--- builds_bin/build_installer 2007/11/07 17:19:07 1.10 +++ builds_bin/build_installer 2011/12/16 16:48:38 1.23 @@ -1,16 +1,21 @@ #!/bin/sh distname='SME Server' -distvers=$(basename $(pwd)) +distvers=$(basename $(readlink -f $(pwd))) distrel=${distvers:0:1} distarch=$(uname -i) +exec < /dev/null +exec &> build_installer.$distarch + if ! [ -d $distarch ] then echo "No $distarch directory?" exit 1 fi +rm -rf $(pwd)/$distarch/{images,isolinux} $(pwd)/$distarch/SME/base/{hdlist*,*.img} + if [ "$distrel" == "7" ] then PYTHONPATH=/usr/lib/anaconda/ /usr/lib/anaconda-runtime/genhdlist \ @@ -21,7 +26,7 @@ then PYTHONPATH=/usr/lib/anaconda/ /usr/lib/anaconda-runtime/pkgorder \ --product SME \ $(pwd)/$distarch \ - $distarch > pkgorder + $distarch > pkgorder.$distarch for PKG in /releases/$distrel/smeextras/$distarch/RPMS/*.rpm do @@ -34,10 +39,10 @@ then PYTHONPATH=/usr/lib/anaconda/ sudo /usr/lib/anaconda-runtime/buildinstall \ --product "$distname" \ - --version "$distrel.0" \ + --version "${distvers/[^0-9.]*/}" \ --release "$distname" \ --prodpath SME \ - --pkgorder pkgorder \ + --pkgorder pkgorder.$distarch \ $(pwd)/$distarch/ sed -i 's@1,2,3@1@' $(pwd)/$distarch/.discinfo @@ -51,13 +56,24 @@ else fi done + cp /usr/lib/anaconda-runtime/mk-images* . + sed -i -e 's/count=12/count=15/' mk-images.* + sed -e "/installforallkernels/ised -i 's|\\\\(enabled\\\\) = 1|\\\\1 = 0|' \$DEST/etc/yum/pluginconf.d/kmod.conf" \ + -e 's|^usr/\(.*/libz.*\)|&\n\1|' /usr/lib/anaconda-runtime/upd-instroot > upd-instroot + chmod 644 mk-images.* + chmod 755 mk-images upd-instroot + sudo chown root:root mk-images* upd-instroot + PYTHONPATH=/usr/lib/anaconda/ sudo /usr/lib/anaconda-runtime/buildinstall \ --product "$distname" \ - --version "$distrel.0" \ + --version "${distvers/[^0-9.]*/}" \ --release "$distname" \ --prodpath SME \ --bugurl http://bugs.contribs.org/ \ $(pwd)/$distarch/ + sed -i 's/ALL/1/' $distarch/.discinfo + + sudo rm -rf $distarch/buildinstall.tree.*/ mk-images* upd-instroot fi # Remove previous linked files @@ -66,8 +82,8 @@ find $(pwd)/$distarch/SME/ -type l | xar # Copy updated isolinux files sudo cp -f /stage/extra/isolinux/$distrel/* $(pwd)/$distarch/isolinux/ -sudo chown -R 9000:9001 $(pwd)/$distarch/ -sudo chmod -R u+rwX,g+rwX,o+rX,o-w $(pwd)/$distarch/ +find $(pwd)/$distarch -\( -not -user 9000 -o -not -group 9000 -\) -print0 | sudo xargs -r0 chown 9000:9000 +find $(pwd)/$distarch -\( -type f -not -perm -0664 -o -type d -not -perm -0775 -\) -print0 | sudo xargs -r0 chmod u+rwX,g+rwX,o+rX,o-w echo "You now need to run /stage/bin/build_ISO as non-root"