X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=zpm-note;h=e06336f315fa1181fe1d2b736a3fecf515c6fb84;hb=6080805504f64986a323cde720f7ac4ab92af5d5;hp=72f5f401a9d8c2c514a7868c98af78dabcf74580;hpb=df8dc5e9fa5e5af70eda9011faef8d721cf177e2;p=zpackage diff --git a/zpm-note b/zpm-note index 72f5f40..e06336f 100755 --- a/zpm-note +++ b/zpm-note @@ -18,8 +18,9 @@ # lock the temp files # clean up unlocked temp files -SPOOL=/var/lib/admin/notes -OPEN=$SPOOL/open +: ${ZPMSPOOL:=/var/lib/admin/notes} + +OPEN=$ZPMSPOOL/open set -e @@ -35,7 +36,7 @@ cmd=$1 shift findnote() { - file=$(find $SPOOL -type f -name "$1") + file=$(find $ZPMSPOOL -type f -name "$1") if [ -z "$file" ] ; then [ -z "$quiet" ] || printf "no such note $1\n" 1>&2 exit 1 @@ -44,7 +45,7 @@ findnote() { } findopen() { - file=$(find $SPOOL/open -type f -name "$1") + file=$(find $ZPMSPOOL/open -type f -name "$1") if [ -z "$file" ] ; then [ -z "$quiet" ] || printf "no such open note $1\n" 1>&2 exit 1 @@ -59,27 +60,27 @@ case $cmd in ;; list) case $1 in - -a) find $SPOOL/ack -type f -printf '%P\n' | sort -n + -a) find $ZPMSPOOL/ack -type f -printf '%P\n' | sort -n ;; - *) find $SPOOL/open -type f -printf '%P\n' | sort -n + *) find $ZPMSPOOL/open -type f -printf '%P\n' | sort -n ;; esac ;; detail) - len=$(find $SPOOL/open -type f -printf "%P\n" | awk ' { if ( length > x ) { x = length } }END{ print x }') - find $SPOOL/open -type f -printf "%P\n" | sort -n | while read note ; do - subject=$(head -1 $SPOOL/open/$note) - date=$(stat -c '%y' $SPOOL/open/$note | cut -f1 -d' ') - owner=$(stat -c '%U' $SPOOL/open/$note) + len=$(find $ZPMSPOOL/open -type f -printf "%P\n" | awk ' { if ( length > x ) { x = length } }END{ print x }') + find $ZPMSPOOL/open -type f -printf "%P\n" | sort -n | while read note ; do + subject=$(head -1 $ZPMSPOOL/open/$note) + date=$(stat -c '%y' $ZPMSPOOL/open/$note | cut -f1 -d' ') + owner=$(stat -c '%U' $ZPMSPOOL/open/$note) printf '%*s %8s %s %s\n' $len $note $owner "$date" "$subject" done ;; ack) file=$(findopen $1) - subfile=$(echo $file | sed -e "s|$SPOOL/open/||") + subfile=$(echo $file | sed -e "s|$ZPMSPOOL/open/||") filedir=$(dirname $subfile) - mkdir -p $SPOOL/ack/$filedir - mv $file $SPOOL/ack/$filedir + mkdir -p $ZPMSPOOL/ack/$filedir + mv $file $ZPMSPOOL/ack/$filedir ;; new) # new -- edit a new file for package general (or ZPMNOTEPACKAGE) @@ -89,34 +90,34 @@ case $cmd in # edit a new file for the note if [ $# -eq 1 ]; then - tmp=$(mktemp -p $SPOOL/open) + tmp=$(mktemp -p $ZPMSPOOL/open) pkg=$1 - [ -f $SPOOL/.template ] && cp $SPOOL/.template $tmp + [ -f $ZPMSPOOL/.template ] && cp $ZPMSPOOL/.template $tmp ${EDITOR:-vi} $tmp file=$(zpm sequence notes) - mv $tmp $SPOOL/open/$pkg/$file || { rm -f $tmp; exit 1; } + mv $tmp $ZPMSPOOL/open/$pkg/$file || { rm -f $tmp; exit 1; } echo "$pkg/$file" exit 0 fi # take note from file or stdin pkg=$1 ; shift - mkdir -p $SPOOL/open/$pkg + mkdir -p $ZPMSPOOL/open/$pkg case $1 in '-') - tmp=$(mktemp -p $SPOOL/open) + tmp=$(mktemp -p $ZPMSPOOL/open) cat - > $tmp file=$(zpm sequence notes) - mv $tmp $SPOOL/open/$pkg/$file || { rm -f $tmp ; exit 1; } + mv $tmp $ZPMSPOOL/open/$pkg/$file || { rm -f $tmp ; exit 1; } echo $file ;; *) - tmp=$(mktemp -p $SPOOL/open) + tmp=$(mktemp -p $ZPMSPOOL/open) cp $1 $tmp #flock -n -E3 $tmp vim $tmp #if [ $? -eq 3 ]; then echo already editing $1; exit 1; fi file=$(zpm sequence notes) - mv $tmp $SPOOL/open/$pkg/$file || { rm -f $tmp; exit 1; } + mv $tmp $ZPMSPOOL/open/$pkg/$file || { rm -f $tmp; exit 1; } echo $file ;; esac