#!/bin/bash # Slackware build script for drbl # Diskless Remote Boot in Linux (script/data infrastructure used by Clonezilla) cd $(dirname $0) ; CWD=$(pwd) PRGNAM=drbl VERSION=${VERSION:-5.9.11} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} # Shell and Perl scripts plus data files only; nothing to compile. ARCH=noarch TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION tar xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ -o -perm 511 \) -exec chmod 755 {} \+ -o \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ # "make" creates the drbl-fuh/drbl-fuu/dcs symlink farm in sbin/, the # locale symlinks in lang/, and generates pkg/misc/fail-mbr.bin from # fail-mbr.txt (requires xxd, shipped in Slackware's vim package). make make install DESTDIR=$PKG # Ship editable config files as .new; doinst.sh handles them. mv $PKG/etc/drbl/drbl.conf $PKG/etc/drbl/drbl.conf.new mv $PKG/etc/drbl/boot-local-efi.cfg $PKG/etc/drbl/boot-local-efi.cfg.new mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -a LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE