#!/bin/sh # KERNEL=$(uname -r) REPOURI='http://tinycorelinux.net/'$PATH REPOPATH='8.x/'$(uname -m)'/tcz/' TEMPDIR='/tmp/tmpextdir/' TCEDIR='/etc/sysconfig/tcedir/optional/' DEPFLAG=0 EXTNAME=${1/KERNEL/$KERNEL} if [ "`expr match "$EXTNAME" '.*\(.tcz$\)'`" != '.tcz' ]; then EXTNAME=$EXTNAME'.tcz'; fi if [ ! -d $TEMPDIR ]; then mkdir -p $TEMPDIR; fi TEMPDIR=$TEMPDIR$EXTNAME'/' mkdir -p $TEMPDIR MIRRORS='/opt/mirrors' while read MIRROR; do REPOURI=$MIRROR echo "checking $REPOURI" wget -q -T 3 -P $TEMPDIR $REPOURI$REPOPATH$EXTNAME'.info' if [ -s $TEMPDIR$EXTNAME'.info' ]; then echo "using $MIRROR" REPOURI=$MIRROR$REPOPATH break fi done < $MIRRORS if [ -z $REPOURI ]; then echo 'Repository is unavialable. Check internet connection' exit fi function loadTCZ() { FILENAME=${1/KERNEL/$KERNEL} DEPFLAG=0 if [ -s $TEMPDIR$FILENAME ] then echo "$FILENAME already in $TEMPDIR" DEPFLAG=1 elif [ -s "$TCEDIR$FILENAME" ] then echo "$FILENAME found on disk, making symlink..." ln -s $TCEDIR$FILENAME $TEMPDIR$FILENAME ln -s $TCEDIR$FILENAME'.md5.txt' $TEMPDIR$FILENAME'.md5.txt' ln -s $TCEDIR$FILENAME'.dep' $TEMPDIR$FILENAME'.dep' >/dev/null 2>/dev/null else echo "trying load $FILENAME from repository..." wget -q -T 3 -P $TEMPDIR $REPOURI$FILENAME wget -q -T 3 -P $TEMPDIR $REPOURI$FILENAME'.md5.txt' wget -q -T 3 -P $TEMPDIR $REPOURI$FILENAME'.dep' >/dev/null 2>/dev/null fi if [ ! -s $TEMPDIR$FILENAME ]; then echo "can not load $FILENAME. Installation aborted" exit 1 else echo "$FILENAME OK!" fi if [ -s $TEMPDIR$FILENAME'.dep' ] && [ $DEPFLAG -eq 0 ]; then FILE=$TEMPDIR$FILENAME'.dep' while read line; do if [ -z $line ]; then continue fi loadTCZ $line done < $FILE fi } loadTCZ $EXTNAME echo "Installing extension..." su tc -c "tce-load -i $TEMPDIR$EXTNAME" #rm -r $TEMPDIR