diff options
author | rhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4> | 2006-07-31 20:45:44 +0000 |
---|---|---|
committer | rhatto <rhatto@370017ae-e619-0410-ac65-c121f96126d4> | 2006-07-31 20:45:44 +0000 |
commit | 3ae891bbbaa3f96365f4c9fbe49e5cee26183fbc (patch) | |
tree | 59f0163f13e99eefb959385243c564c5662bc5c2 /patches/bin | |
download | slackbuilds-3ae891bbbaa3f96365f4c9fbe49e5cee26183fbc.tar.gz slackbuilds-3ae891bbbaa3f96365f4c9fbe49e5cee26183fbc.tar.bz2 |
initial import
git-svn-id: svn+slack://slack.fluxo.info/var/svn/slackbuilds@1 370017ae-e619-0410-ac65-c121f96126d4
Diffstat (limited to 'patches/bin')
-rwxr-xr-x | patches/bin/bin.SlackBuild | 444 | ||||
-rw-r--r-- | patches/bin/debianutils_2.7.dsc | 21 | ||||
-rw-r--r-- | patches/bin/dosfstools-x86_64.diff.gz | bin | 0 -> 1438 bytes | |||
-rw-r--r-- | patches/bin/eject-x86_64.diff.gz | bin | 0 -> 317 bytes | |||
-rw-r--r-- | patches/bin/rescan-scsi-bus | 119 | ||||
-rw-r--r-- | patches/bin/rpm2targz | 123 | ||||
-rw-r--r-- | patches/bin/rpm2targz.README | 16 | ||||
-rw-r--r-- | patches/bin/rpmoffset.c | 24 | ||||
-rw-r--r-- | patches/bin/slack-desc | 19 | ||||
-rw-r--r-- | patches/bin/tree-x86_64.diff.gz | bin | 0 -> 263 bytes | |||
-rw-r--r-- | patches/bin/zoo-x86_64.diff.gz | bin | 0 -> 305 bytes |
11 files changed, 766 insertions, 0 deletions
diff --git a/patches/bin/bin.SlackBuild b/patches/bin/bin.SlackBuild new file mode 100755 index 00000000..12c7c8c2 --- /dev/null +++ b/patches/bin/bin.SlackBuild @@ -0,0 +1,444 @@ +#!/bin/bash +# +# got it from ftp://ftp.slackware.com/pub/slackware/slackware-10.2/patches/source/bin/bin.SlackBuild +# small changes by rhatto +# + +# Set initial variables: + +CWD="`pwd`" + +VERSION=10.2 +ARCH=${ARCH:=x86_64} +BUILD="1rha" +SRC_DIR=${SRC:=$CWD} + +DUTILS=2.7 +DOSFS=2.10 +WHICH=2.16 +EJECT=2.1.4 +FILE=4.15 + +TMP=${TMP:=/tmp} +PKG=$TMP/package-bin + +rm -rf $PKG +mkdir -p $SRC_DIR +# REPO="ftp://ftp.slackware.com/pub/slackware/slackware-10.2/patches/source/bin" +REPO="ftp://mirror.pacific.net.au/linux/slackware/slackware-10.2/patches/source/bin" +if [ "$GET" != "no" ]; then ( cd $SRC_DIR && ncftpget $REPO/*gz ) ; fi + +if [ ! -d $TMP ]; then + mkdir -p $TMP # location to build the source +fi +if [ ! -d $PKG ]; then + mkdir -p $PKG # place for the package to be built +fi + +if [ "$ARCH" == "x86_64" ]; then + LIB="lib64" +else + LIB="lib" +fi + +# Explode the package framework: +cd $PKG +explodepkg $SRC_DIR/_bin.tar.gz + +echo "+=============+" +echo "| debianutils |" +echo "+=============+" +cd $TMP +tar xzvf $SRC_DIR/debianutils_$DUTILS.tar.gz +cd debianutils-$DUTILS +chown -R root.root . +./configure --prefix=/usr +make +## We actually use our own very simple run-parts script instead... +#cat run-parts > $PKG/usr/bin/run-parts +#cat run-parts.8 | gzip -9c > $PKG/usr/man/man8/run-parts.8.gz +cat mktemp > $PKG/usr/bin/mktemp +cat mktemp.1 | gzip -9c > $PKG/usr/man/man1/mktemp.1.gz +cat savelog > $PKG/usr/bin/savelog +cat savelog.8 | gzip -9c > $PKG/usr/man/man8/savelog.8.gz +cat tempfile > $PKG/usr/bin/tempfile +cat tempfile.1 | gzip -9c > $PKG/usr/man/man1/tempfile.1.gz + +echo "+=======+" +echo "| eject |" +echo "+=======+" +cd $TMP +rm -rf eject +tar xzvf $SRC_DIR/eject-$EJECT.tar.gz +cd eject +chown -R root:root . +if [ "$ARCH" == "x86_64" ]; then + zcat $CWD/eject-x86_64.diff.gz | patch -p1 --verbose +fi +CFLAGS= ./configure --prefix=/usr +make +cat eject > $PKG/usr/bin/eject +cat eject.1 | gzip -9c > $PKG/usr/man/man1/eject.1.gz +cat volname > $PKG/usr/bin/volname +cat volname.1 | gzip -9c > $PKG/usr/man/man1/volname.1.gz +mkdir -p $PKG/usr/doc/eject-$EJECT +cp -a AUTHORS COPYING NEWS PORTING PROBLEMS README TODO eject-$EJECT.lsm \ + $PKG/usr/doc/eject-$EJECT +chmod 644 $PKG/usr/doc/eject-$EJECT/* + +echo "+===========+" +echo "| fbset-2.1 |" +echo "+===========+" +cd $TMP +tar xzvf $SRC_DIR/fbset-2.1.tar.gz +cd fbset-2.1 +chown -R root.root . +make +mkdir -p $PKG/usr/sbin +cat fbset > $PKG/usr/sbin/fbset +chmod 755 $PKG/usr/sbin/fbset +mkdir -p $PKG/etc +cat etc/fb.modes.ATI > $PKG/etc/fb.modes +mkdir -p $PKG/usr/man/man5 +cat fb.modes.5 | gzip -9c > $PKG/usr/man/man5/fb.modes.5.gz +mkdir -p $PKG/usr/man/man8 +cat fbset.8 | gzip -9c > $PKG/usr/man/man8/fbset.8.gz + +echo "+===========+" +echo "| lha-1.14i |" +echo "+===========+" +cd $TMP +tar xzvf $SRC_DIR/lha-114i.tar.gz +cd lha-114i +zcat $SRC_DIR/lha-114i-sec.patch.gz | patch -p1 --verbose +zcat $SRC_DIR/lha-114i-symlink.patch.gz | patch -p1 --verbose +chown -R root.root . +make +cat src/lha > $PKG/usr/bin/lha + +echo "+========+" +echo "| ed-0.2 |" +echo "+========+" +cd $TMP +tar xzvf $SRC_DIR/ed-0.2.tar.gz +cd ed-0.2 +chown -R root.root . +zcat $SRC_DIR/ed-0.2.mkstemp.diff.gz | patch -p1 -E --backup --verbose +CFLAGS=-O2 \ +./configure \ + --prefix=/usr \ + $ARCH-slackware-linux +make +cat ed > $PKG/bin/ed +cat ed.1 | gzip -9c > $PKG/usr/man/man1/ed.1.gz +cat ed.info | gzip -9c > $PKG/usr/info/ed.info.gz + +echo "+==========+" +echo "| compress |" +echo "+==========+" +cd $TMP +tar xzvf $SRC_DIR/compress.tar.gz +cd compress +chown -R root.root . +zcat $SRC_DIR/compress.diff.gz | patch -p0 -E --backup --verbose +if [ "$ARCH" == "x86_64" ]; then + echo 450000 > USERMEM # the default from the source file +fi +make +cat compress > $PKG/usr/bin/compress +cat compress.1 | gzip -9c > $PKG/usr/man/man1/compress.1.gz +echo '.so man1/compress.1' | gzip -9c > $PKG/usr/man/man1/uncompress.1.gz + +echo "+=========+" +echo "| banners |" +echo "+=========+" +cd $TMP +tar xzvf $SRC_DIR/banners.tar.gz +cd banners +chown -R root.root . +make +cat bban > $PKG/usr/bin/bban +cat sysvbanner > $PKG/usr/bin/sysvbanner + +echo "+===========+" +echo "| file-$FILE |" +echo "+===========+" +cd $TMP +tar xzvf $SRC_DIR/file-$FILE.tar.gz +cd file-$FILE +chown -R root.root . +zcat $SRC_DIR/file.quiet.diff.gz | patch -p1 -E --verbose +zcat $SRC_DIR/file.short.diff.gz | patch -p1 -E --verbose +zcat $SRC_DIR/file.rzip.magic.gz >> magic/Magdir/compress +zcat $SRC_DIR/file.zisofs.magic.gz >> magic/Magdir/compress +./configure \ + --prefix=/usr \ + --libdir=/usr/$LIB \ + --sysconfdir=/etc \ + --datadir=/etc \ + --enable-fsect-man5 \ + --enable-shared=no \ + $ARCH-slackware-linux +make +make install DESTDIR=$PKG +# Is file really this much of a processing bottleneck? Doubtful. +rm -f $PKG/etc/file/magic.mgc $PKG/etc/file/magic.mime.mgc +strip -g $PKG/usr/$LIB/libmagic.a +mkdir -p $PKG/usr/doc/file-$FILE +cp -a \ + LEGAL.NOTICE README \ + $PKG/usr/doc/file-$FILE +chmod 644 $PKG/usr/doc/file-$FILE/* +gzip -9 $PKG/usr/man/man1/file.1 \ + $PKG/usr/man/man3/libmagic.3 \ + $PKG/usr/man/man5/magic.5 +# /etc/magic has been traditional for so long that it seems like a +# real good idea to provide a link: +( cd $PKG/etc + ln -sf file/magic magic +) + +echo "+============+" +echo "| dosfstools |" +echo "+============+" +cd $TMP +tar xzvf $SRC_DIR/dosfstools-$DOSFS.tar.gz +cd dosfstools-$DOSFS +if [ "$ARCH" == "x86_64" ]; then zcat $CWD/dosfstools-x86_64.diff.gz | patch -p1 --verbose; fi +chown -R root.root . +mkdir -p $PKG/usr/doc/dosfstools-$DOSFS +cp -a CHANGES README.Atari TODO $PKG/usr/doc/dosfstools-$DOSFS +mkdir -p $PKG/usr/doc/dosfstools-$DOSFS/mkdosfs +( cd mkdosfs ; cp -a ANNOUNCE COPYING ChangeLog README mkdosfs-ygg-0.3b.lsm $PKG/usr/doc/dosfstools-$DOSFS/mkdosfs ) +mkdir -p $PKG/usr/doc/dosfstools-$DOSFS/dosfsck +( cd dosfsck ; cp -a CHANGES COPYING README $PKG/usr/doc/dosfstools-$DOSFS/dosfsck ) +make +cd mkdosfs +cat mkdosfs > $PKG/sbin/mkdosfs +cat mkdosfs.8 | gzip -9c > $PKG/usr/man/man8/mkdosfs.8.gz +cd ../dosfsck +cat dosfsck > $PKG/sbin/dosfsck +cat dosfsck.8 | gzip -9c > $PKG/usr/man/man8/dosfsck.8.gz + +echo "+=============+" +echo "| patch-2.5.4 |" +echo "+=============+" +cd $TMP +tar xzvf $SRC_DIR/patch-2.5.4.tar.gz +cd patch-2.5.4 +chown -R root.root . +mkdir -p $PKG/usr/doc/patch-2.5.4 +cp -a AUTHORS COPYING INSTALL NEWS README $PKG/usr/doc/patch-2.5.4 +chmod 644 $PKG/usr/doc/patch-2.5.4/* +./configure \ + --prefix=/usr \ + $ARCH-slackware-linux +make CFLAGS=-O2 +cat patch > $PKG/usr/bin/patch +cat patch.man | gzip -9c > $PKG/usr/man/man1/patch.1.gz + +echo "+===========+" +echo "| rpm2targz |" +echo "+===========+" +cd $TMP +cc -o rpmoffset $CWD/rpmoffset.c +cat rpmoffset > $PKG/usr/bin/rpmoffset +rm rpmoffset +cat $CWD/rpm2targz > $PKG/usr/bin/rpm2targz +mkdir -p $PKG/usr/doc/rpm2targz +cp -a $CWD/rpm2targz.README $PKG/usr/doc/rpm2targz/rpm2targz.README +chmod 644 $PKG/usr/doc/rpm2targz/rpm2targz.README + +echo "+===========+" +echo "| run-parts |" +echo "+===========+" +zcat $SRC_DIR/run-parts.gz > $PKG/usr/bin/run-parts +chmod 755 $PKG/usr/bin/run-parts +cat $SRC_DIR/run-parts.8.gz > $PKG/usr/man/man8/run-parts.8.gz + +echo "+=================+" +echo "| sharutils-4.2.1 |" +echo "+=================+" +cd $TMP +tar xzvf $SRC_DIR/sharutils-4.2.1.tar.gz +cd sharutils-4.2.1 +chown -R root.root . +mkdir -p $PKG/usr/doc/sharutils-4.2.1 +cp -a ABOUT-NLS AUTHORS BACKLOG COPYING INSTALL NEWS README \ + README.OLD THANKS TODO $PKG/usr/doc/sharutils-4.2.1 +chmod 644 $PKG/usr/doc/sharutils-4.2.1/* +# For now, NLS seems to cause build errors on this one... +CFLAGS=-O2 \ +./configure \ + --disable-nls \ + --prefix=/usr \ + $ARCH-slackware-linux +make +cd src +cat shar > $PKG/usr/bin/shar +cat unshar > $PKG/usr/bin/unshar +cat uuencode > $PKG/usr/bin/uuencode +cat uudecode > $PKG/usr/bin/uudecode +cd ../doc +cat sharutils.info | gzip -9c > $PKG/usr/info/sharutils.info.gz +# Include old manpages, since the source package doesn't have them anymore: +for page in shar.1.gz unshar.1.gz uuencode.1.gz ; do + cat $SRC_DIR/$page > $PKG/usr/man/man1/$page +done +echo '.so man1/uuencode.1' | gzip -9c > $PKG/usr/man/man1/uudecode.1.gz +cat $SRC_DIR/uuencode.5.gz > $PKG/usr/man/man5/uuencode.5.gz + +echo "+===============+" +echo "| splitvt-1.6.5 |" +echo "+===============+" +cd $TMP +rm -rf splitvt-1.6.5 +tar xzvf $SRC_DIR/splitvt-1.6.5.tar.gz +cd splitvt-1.6.5 +zcat $SRC_DIR/splitvt.devpts.diff.gz | patch -p1 --verbose +chown -R root.root . +./configure +make +cat splitvt > $PKG/usr/bin/splitvt +cat splitvt.1 | gzip -9c > $PKG/usr/man/man1/splitvt.1.gz +mkdir -p $PKG/usr/doc/splitvt-1.6.5 +cp -a examples ANNOUNCE CHANGES NOTES README TODO \ + $PKG/usr/doc/splitvt-1.6.5 +( cd $PKG/usr/doc/splitvt-1.6.5 + find . -type d | xargs chmod 755 + find . -type f | xargs chmod 644 ) + +echo "+==========+" +echo "| time-1.7 |" +echo "+==========+" +cd $TMP +tar xvzf $SRC_DIR/time-1.7.tar.gz +cd time-1.7 +chown -R root.root . +./configure \ + --prefix=/usr \ + $ARCH-slackware-linux +make CFLAGS=-O2 +cat time > $PKG/usr/bin/time +cat time.info | gzip -9c > $PKG/usr/info/time.info.gz + +echo "+===============+" +echo "| todos/fromdos |" +echo "+===============+" +cd $TMP +tar xzvf $SRC_DIR/todos.tar.gz +cd todos +chown -R root.root . +make +cat todos > $PKG/usr/bin/todos +cat fromdos > $PKG/usr/bin/fromdos +cat todos.1.gz > $PKG/usr/man/man1/todos.1.gz +cat fromdos.1.gz > $PKG/usr/man/man1/fromdos.1.gz + +echo "+============+" +echo "| tree-1.4b3 |" +echo "+============+" +cd $TMP +tar xzvf $SRC_DIR/tree-1.4b3.tar.gz +cd tree-1.4 +if [ "$ARCH" == "x86_64" ]; then zcat $CWD/tree-x86_64.diff.gz | patch -p1 --verbose; fi +chown -R root.root . +make clean +make +cat tree > $PKG/usr/bin/tree +chmod 755 $PKG/usr/bin/tree +cat tree.1 | gzip -9c > $PKG/usr/man/man1/tree.1.gz +mkdir -p $PKG/usr/doc/tree-1.4b3 +cp -a CHANGES LICENSE README README.sacl $PKG/usr/doc/tree-1.4b3 +chmod 644 $PKG/usr/doc/tree-1.4b3/* + +echo "+==========+" +echo "| unarj230 |" +echo "+==========+" +cd $TMP +tar xzvf $SRC_DIR/unarj230.tar.gz +cd unarj230 +chown -R root.root . +zcat $SRC_DIR/unarj230.diff.gz | patch -p0 -E --verbose --backup +make +cat unarj > $PKG/usr/bin/unarj + +echo "+============+" +echo "| which-$WHICH |" +echo "+============+" +cd $TMP +tar xzvf $SRC_DIR/which-$WHICH.tar.gz +cd which-$WHICH +chown -R root.root . +./configure --prefix=/usr +make CFLAGS=-O2 +cat which > $PKG/bin/which +cat which.1 | gzip -9c > $PKG/usr/man/man1/which.1.gz +cat which.info | gzip -9c > $PKG/usr/info/which.info.gz +mkdir -p $PKG/usr/doc/which-$WHICH +cp -a AUTHORS COPYING EXAMPLES INSTALL NEWS README README.alias $PKG/usr/doc/which-$WHICH + +echo "+==========+" +echo "| zoo-2.10 |" +echo "+==========+" +cd $TMP +rm -rf zoo-2.10 +tar xzvf $SRC_DIR/zoo-2.10.tar.gz +cd zoo-2.10 +chown -R root:root . +zcat $SRC_DIR/zoo_2.10-17.diff.gz | patch -p1 -E --verbose --backup || exit 1 +for diff in debian/patches/*.dpatch ; do + cat $diff | patch -p1 --verbose || exit 1 +done +if [ "$ARCH" == "x86_64" ]; then zcat $CWD/zoo-x86_64.diff.gz | patch -p1 --verbose; fi +make linux +cat fiz > $PKG/usr/bin/fiz +cat zoo > $PKG/usr/bin/zoo +for page in fiz.1 zoo.1 ; do + cat $page | gzip -9c > $PKG/usr/man/man1/$page.gz +done + +# Add a very handy tool for scanning new SCSI devices. Most useful for +# finding new USB and Firewire storage devices which show up as SCSI. +cp -a $CWD/rescan-scsi-bus $PKG/sbin/rescan-scsi-bus +chmod 755 $PKG/sbin/rescan-scsi-bus + +# Strip everything for good measure: +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null +) + +chown -R root.bin $PKG/bin $PKG/usr/bin $PKG/sbin $PKG/usr/sbin + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +# Build the package: +cd $PKG +makepkg -l y -c n $TMP/bin-$VERSION-$ARCH-$BUILD.tgz + +# Clean up the extra stuff: +if [ "$1" = "--cleanup" ]; then + rm -rf $TMP/pwd + rm -rf $TMP/ed-0.2 + rm -rf $TMP/banners + rm -rf $TMP/debianutils-$DUTILS + rm -rf $TMP/eject-$EJECT + rm -rf $TMP/fbset-2.1 + rm -rf $TMP/file-$FILE + rm -rf $TMP/gencat + rm -rf $TMP/lha-1.00 + rm -rf $TMP/dosfstools-$DOSFS + rm -rf $TMP/patch-2.5.4 + rm -rf $TMP/sharutils-4.2.1 + rm -rf $TMP/time-1.7 + rm -rf $TMP/todos + rm -rf $TMP/unarj230 + rm -rf $TMP/which-$WHICH + rm -rf $TMP/zoo-2.10 + rm -rf $TMP/compress + rm -rf $TMP/splitvt-1.6.5 + rm -rf $TMP/tree-1.4 + rm -rf $PKG +fi diff --git a/patches/bin/debianutils_2.7.dsc b/patches/bin/debianutils_2.7.dsc new file mode 100644 index 00000000..25a643a7 --- /dev/null +++ b/patches/bin/debianutils_2.7.dsc @@ -0,0 +1,21 @@ +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +Format: 1.0 +Source: debianutils +Version: 2.7 +Binary: debianutils +Maintainer: Clint Adams <schizo@debian.org> +Architecture: any +Standards-Version: 3.6.1 +Files: + e966d93a3ee20068197104049ebd7d70 165590 debianutils_2.7.tar.gz + +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.2.4 (GNU/Linux) +Comment: Debian! + +iD8DBQFAO4b85m0u66uWM3ARAotWAKCE/B4HoDVZ5rHi4AISWwHO59cEgwCgqQ6d +Rt+5nuJdAgkcQgKDQu52RwI= +=2QDD +-----END PGP SIGNATURE----- diff --git a/patches/bin/dosfstools-x86_64.diff.gz b/patches/bin/dosfstools-x86_64.diff.gz Binary files differnew file mode 100644 index 00000000..1b4c48fe --- /dev/null +++ b/patches/bin/dosfstools-x86_64.diff.gz diff --git a/patches/bin/eject-x86_64.diff.gz b/patches/bin/eject-x86_64.diff.gz Binary files differnew file mode 100644 index 00000000..fbee7500 --- /dev/null +++ b/patches/bin/eject-x86_64.diff.gz diff --git a/patches/bin/rescan-scsi-bus b/patches/bin/rescan-scsi-bus new file mode 100644 index 00000000..f1745bd9 --- /dev/null +++ b/patches/bin/rescan-scsi-bus @@ -0,0 +1,119 @@ +#!/bin/sh +# Skript to rescan SCSI bus, using the +# scsi add-single-device mechanism +# (w) 98/03/19 Kurt Garloff <kurt@garloff.de> (c) GNU GPL + +# This script is useful for automatically scanning for new +# USB and IEEE1394 devices which will not show up automatically +# if they use a LUN (logical unit number) other than 0. +# To search all LUNS for new devices to enable, run like this: +# +# rescan-scsi-bus -l + +found=0 +rmvd=0 + +# Return hosts. /proc/scsi/HOSTADAPTER/? must exist +findhosts() { + hosts= + for name in /proc/scsi/*/?; do + name=${name#/proc/scsi/} + if test ! $name = scsi ; then + hosts="$hosts ${name#*/}" + echo "Host adapter ${name#*/} (${name%/*}) found." + fi + done +} + +# Test if SCSI device $host $channen $id $lun exists +# Outputs description from /proc/scsi/scsi, returns new +testexist() { + grepstr="scsi$host Channel: 0$channel Id: 0*$id Lun: 0$lun" + new=`cat /proc/scsi/scsi | grep -e "$grepstr"` + if test ! -z "$new" ; then + cat /proc/scsi/scsi | grep -e "$grepstr" + cat /proc/scsi/scsi | grep -A2 -e "$grepstr" | tail -n 2 + fi +} + +# Perform search (scan $host) +dosearch() { + for channel in $channelsearch; do + for id in $idsearch; do + for lun in $lunsearch; do + new= + devnr="$host $channel $id $lun" + echo "Scanning for device $devnr ..." + printf "OLD: " + testexist + if test ! -z "$remove" -a ! -z "$new" ; then + echo "scsi remove-single-device $devnr" > /proc/scsi/scsi + echo "scsi add-single-device $devnr" > /proc/scsi/scsi + printf "\r\x1b[A\x1b[A\x1b[AOLD: " + testexist + if test -z "$new"; then + printf "\rDEL: \r\n\n\n\n" + rmvd=$(($rmvd+1)) + fi + fi + if test -z "$new" ; then + printf "\rNEW: " + echo "scsi add-single-device $devnr" > /proc/scsi/scsi + testexist + if test -z "$new"; then + printf "\r\x1b[A" + else + found=$(($found+1)) + fi + fi + done + done + done +} + + +# main +if test @$1 = @--help -o @$1 = @-h ; then + echo "Usage: rescan-scsi-bus.sh [-l] [-w] [-c] [host [host ...]]" + echo " -l activates scanning for LUNs 0 .. 7 [default: 0]" + echo " -w enables scanning for device IDs 0 .. 15 [def.: 0 .. 7]" + echo " -r enables removing of devices [default: disabled]" + echo " -c enables scanning of channels 0 1 [default: 0]" + echo " If hosts are given, only these are scanned [default: all]" + exit 0 +fi + +# defaults +lunsearch="0" +idsearch="0 1 2 3 4 5 6 7" +channelsearch="0" +remove="" + +# Scan options +opt="$1" +while test ! -z "$opt" -a -z "${opt##-*}"; do + opt=${opt#-} + case "$opt" in + l) lunsearch="0 1 2 3 4 5 6 7" ;; + w) idsearch="0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15" ;; + c) channelsearch="0 1" ;; + r) remove=1 ;; + *) echo "Unknown option -$opt !" ;; + esac + shift + opt="$1" +done + +# Hosts given ? +if test @$1 = @; then + findhosts +else + hosts=$* +fi + +for host in $hosts; do + dosearch +done +echo "$found new device(s) found. " +echo "$rmvd device(s) removed. " + diff --git a/patches/bin/rpm2targz b/patches/bin/rpm2targz new file mode 100644 index 00000000..4df00d7c --- /dev/null +++ b/patches/bin/rpm2targz @@ -0,0 +1,123 @@ +#!/bin/sh +# Copyright 1997, 1998 Patrick Volkerding, Moorhead, MN USA +# Copyright 2002, 2004 Slackware Linux, Inc., Concord, CA USA +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# + +if [ "$1" = "" ]; then + echo "$0: Converts RPM format to standard GNU tar + GNU zip format." + echo " (view converted packages with \"less\", install and remove" + echo " with \"installpkg\", \"removepkg\", \"pkgtool\", or manually" + echo " with \"tar\")" + echo + echo "Usage: $0 <file.rpm>" + if [ "`basename $0`" = "rpm2tgz" ]; then + echo " (Outputs \"file.tgz\")" + else + echo " (Outputs \"file.tar.gz\")" + fi + exit 1; +fi + +# Create a new temporary directory with a secure filename: +make_temp_dir() { + if [ -x "$(which mcookie)" ]; then + tempd=/tmp/tmp.$(mcookie) + mkdir -p -m 0755 $tempd + elif [ -x "$(which openssl)" ]; then + tempd=/tmp/tmp.$(dd if=/dev/urandom bs=1k count=1 2> /dev/null | openssl dgst -md5) + mkdir -p -m 0755 $tempd + elif [ -x "$(which md5)" ]; then + tempd=/tmp/tmp.$(dd if=/dev/urandom bs=1k count=1 2> /dev/null | md5) + mkdir -p -m 0755 $tempd + elif [ -x "$(which mktemp)" ]; then + tempd=$(mktemp -d) + chmod 755 $tempd + ## Uncomment for insecure use, but don't blame me: + #else + # tempd=/tmp/tmp.$$ + # mkdir -p -m 0755 $tempd + fi + if [ -d $tempd ]; then # success, return the name of the directory: + echo $tempd + else + echo "ERROR: Could not find mcookie, openssl, or md5." + echo " Exiting since a secure temporary directory could not be made." + exit 1 + fi +} + +for i in $* ; do + + # Determine if this is a source or binary RPM. + # If we have getrpmtype, use that. Otherwise, try "file". + if which getrpmtype 1> /dev/null 2> /dev/null; then + if getrpmtype -n $i | grep source 1> /dev/null 2> /dev/null ; then + isSource=1 + else + isSource=0 + fi + else # use file. This works fine on Slackware, and is the default. + if file $i | grep RPM | grep " src " 1> /dev/null 2> /dev/null ; then + isSource=1 + else + isSource=0 + fi + fi + + # Create a temporary directory: + TMPDIR=$(make_temp_dir) + + # Extract the RPM: + ofn=$TMPDIR/$(basename $i .rpm).cpio + if which rpm2cpio 1> /dev/null 2> /dev/null ; then + rpm2cpio $i > $ofn 2> /dev/null + if [ ! $? = 0 ]; then + echo "ERROR: rpm2cpio failed. (maybe $i is not an RPM?)" + rm -rf $TMPDIR + continue + fi + else # less reliable than rpm2cpio... + ( dd ibs=`rpmoffset < $i` skip=1 if=$i 2> /dev/null | gzip -dc > $ofn 2>/dev/null ) || \ + ( dd ibs=`rpmoffset < $i` skip=1 if=$i 2> /dev/null | bzip2 -dc > $ofn 2>/dev/null ) + fi + DEST=$TMPDIR + if [ "$isSource" = "1" ]; then + DEST=$DEST/$(basename $(basename $i .rpm) .src) + fi + mkdir -p $DEST + ( cd $DEST + cpio -i -m -d < $ofn 1> /dev/null 2> /dev/null + rm -f $ofn + find . -type d -perm 700 -exec chmod 755 {} \; + ) + + # Repack the files in a tar+gz archive: + ( cd $TMPDIR ; tar cf - . ) > `basename $i .rpm`.tar + gzip -9 `basename $i .rpm`.tar + if [ "`basename $0`" = "rpm2tgz" ]; then + mv `basename $i .rpm`.tar.gz `basename $i .rpm`.tgz + fi + + # Remove temporary directory: + rm -rf $TMPDIR + +done + diff --git a/patches/bin/rpm2targz.README b/patches/bin/rpm2targz.README new file mode 100644 index 00000000..9936f052 --- /dev/null +++ b/patches/bin/rpm2targz.README @@ -0,0 +1,16 @@ + +This package contains 'rpm2targz', a simple utility to convert Red Hat-style +RPM packages into standard tar.gz archives. Converted binary packages can then +be installed/removed using the 'installpkg/removepkg' commands, or 'pkgtool'. + +It's advisable to at least examine the converted package with 'less' to make +sure it won't do anything too crazy to your system. + +By default, rpm2targz will attempt to use "file" to detect source RPMS, and will +put the contents into a subdirectory in the resulting package. This may not be +portable to other operating systems -- if you're trying to run rpm2targz on an +OS that doesn't have a file that knows RPM types, and you care about this source +RPM feature, you can compile and install David Cantrell's standalone getrpmtype +utility. The getrpmtype.tar.gz source archive can be found in Slackware's +source tree in source/a/bin/. + diff --git a/patches/bin/rpmoffset.c b/patches/bin/rpmoffset.c new file mode 100644 index 00000000..57af397c --- /dev/null +++ b/patches/bin/rpmoffset.c @@ -0,0 +1,24 @@ + +/* Find how deeply inside an .RPM the real data is */ +/* kept, and report the offset in bytes */ + +/* Wouldn't it be a lot more sane if we could just untar these things? */ + +#include <stdlib.h> + +/* These offsets keep getting bigger, so we're going to just bite a 2MB */ +/* chunk of RAM right away so that we have enough. Yeah, horrible */ +/* quick and dirty implementation, but hey -- it gets the job done. */ + +#define RPMBUFSIZ 2097152 + +main() +{ + char *buff = malloc(RPMBUFSIZ),*eb,*p; + for (p = buff, eb = buff + read(0,buff,RPMBUFSIZ); p < eb; p++) + if ((*p == '\037' && p[1] == '\213' && p[2] == '\010') || + (*p == 'B' && p[1] == 'Z' && p[2] == 'h' && '1' <= p[3] && p[3] <= '9' )) + printf("%d\n",p - buff), + exit(0); + exit(1); +} diff --git a/patches/bin/slack-desc b/patches/bin/slack-desc new file mode 100644 index 00000000..4fc4151d --- /dev/null +++ b/patches/bin/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +bin: bin (some common system utilities) +bin: +bin: The "bin" package is a collection of utilities for handling various +bin: kinds of archives, identifying file types, and processing data. +bin: Several of these tools are used by system scripts, so this is a +bin: required package. The bin package contains these programs: +bin: +bin: bban compress diskcopy dosfsck ed eject fbset file fiz fromdos lha +bin: mkdosfs mktemp patch rescan-scsi-bus rpm2targz rpmoffset run-parts +bin: savelog shar splitvt sysvbanner tempfile time todos tree unarj unshar +bin: uudecode uuencode volname which xx zoo diff --git a/patches/bin/tree-x86_64.diff.gz b/patches/bin/tree-x86_64.diff.gz Binary files differnew file mode 100644 index 00000000..9d2f6170 --- /dev/null +++ b/patches/bin/tree-x86_64.diff.gz diff --git a/patches/bin/zoo-x86_64.diff.gz b/patches/bin/zoo-x86_64.diff.gz Binary files differnew file mode 100644 index 00000000..efd5b095 --- /dev/null +++ b/patches/bin/zoo-x86_64.diff.gz |