summaryrefslogtreecommitdiff
path: root/pkgthing/pget.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgthing/pget.sh')
-rw-r--r--pkgthing/pget.sh53
1 files changed, 45 insertions, 8 deletions
diff --git a/pkgthing/pget.sh b/pkgthing/pget.sh
index c0c12fe..d68cad0 100644
--- a/pkgthing/pget.sh
+++ b/pkgthing/pget.sh
@@ -1,10 +1,47 @@
-#!/bin/sh
-name='pget'
-ver='1.9.1'
+#!/bin/bash
-src=/var/srcdir
-cd $src; if [ $? -ne 0 ]; then exit 1; fi
-out="`echo "$1" | sed 's@^.*://@@'`"
-curl $@ -L -C - --create-dirs -o "$out"
-ptranslate "$out"
+useVar() {
+ var=$1
+ val=$2
+ case "$var" in
+ \$name) _name="$val";;
+ \$union) echo 'union feature not yet implemented';;
+ esac
+}
+setsrc() {
+ mount_point=$1
+ dev=$2
+ case "$dev" in
+ file://) ln -s "${dev#file://}" "$mount_point";;
+ ftp://) ln -s "/$dev" "$mount_point";;
+ *)
+ echo "I don't know which protocol to use fo \`$dev'.";
+ exit 1;;
+ esac
+}
+
+# parse files
+for lst in *.lst; do
+ echo 'loading `'$lst\''...'
+ _name='oops'
+ while read line; do
+ if [ -n "$line" ]; then
+ case "$line" in
+ \#*) :;; #comment, do nothing
+ \$*) #setting a variable
+ var=${line%%=*}
+ val=${line#$var}
+ useVar "$var" "$val"
+ :;;
+ *) #setting a source
+ grp=`echo "$line" | cut -f 1`
+ src=`echo "$line" | cut -f 2`
+ mkdir -p "$_name/$grp"
+ setsrc "$_name/$grp" "$src"
+ :;;
+ esac
+ echo $var == $val
+ fi
+ done < "$lst"
+done