diff options
Diffstat (limited to 'savepatch')
-rwxr-xr-x | savepatch | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/savepatch b/savepatch new file mode 100755 index 0000000..ae0984f --- /dev/null +++ b/savepatch @@ -0,0 +1,35 @@ +#!/bin/sh + +# savepatch -- save patch on standard in to ~/patches + +root=/home/john/patches + +if [ -z "$1" ]; then + echo "usage: ${0##*/} patch-name" 1>&2 + exit 1 +fi + +case "$PWD" in +/usr/pkgsrc/*) dir=$(pwd | cut -d/ -f4,5) || dir= ;; +/usr/*src/*) dir=${PWD#/usr/} ;; +*) dir= +esac + +if [ -z "$dir" ]; then + echo "${0##*/}: could not determine package" 1>&2 + printf "package: " 1>&2 + read dir </dev/tty +fi + +mkdir -p "$root/$dir" + +if [ -e "$root/$dir/$1" ]; then + printf "%s: %s already exists; overwrite? " "${0##*/}" "$dir/$1" 1>&2 + read ans </dev/tty + case $ans in + y*) ;; + *) exit 1 ;; + esac +fi + +cat > "$root/$dir/$1" |