diff options
-rwxr-xr-x | bin/pkgdiffs | 3 | ||||
-rwxr-xr-x | bin/savepatch | 24 | ||||
-rwxr-xr-x | bin/whereispatch | 20 |
3 files changed, 29 insertions, 18 deletions
diff --git a/bin/pkgdiffs b/bin/pkgdiffs index e39d5a0..3c01f93 100755 --- a/bin/pkgdiffs +++ b/bin/pkgdiffs @@ -2,6 +2,9 @@ # pkgdiffs -- concatenate pkgdiffs +# +# To amend an existing patch, specify -a. +# [ x"$1" = "-a" ] || pkgdiff "${1%.orig}" shift diff --git a/bin/savepatch b/bin/savepatch index f4c2bd6..2a6cec9 100755 --- a/bin/savepatch +++ b/bin/savepatch @@ -1,29 +1,17 @@ #!/bin/sh -# savepatch -- save patch on standard in to ~/patches - -root=/home/john/patches +# savepatch -- save patch on standard in 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 +dir=$(whereispatch -i) -mkdir -p "$root/$dir" +mkdir -p "$dir" -if [ -e "$root/$dir/$1" ]; then +if [ -e "$dir/$1" ]; then printf "%s: %s already exists; overwrite? " "${0##*/}" "$dir/$1" 1>&2 read ans </dev/tty case $ans in @@ -32,5 +20,5 @@ if [ -e "$root/$dir/$1" ]; then esac fi -cat > "$root/$dir/$1" -echo "$root/$dir/$1" +cat > "$dir/$1" +echo "$dir/$1" diff --git a/bin/whereispatch b/bin/whereispatch new file mode 100755 index 0000000..1eea64a --- /dev/null +++ b/bin/whereispatch @@ -0,0 +1,20 @@ +#!/bin/sh + +# whereispatch -- print corresponding patch directory + +root=/home/john/patches + +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 + [ x"$1" = x"-i" ] || exit 1 + printf "package: " 1>&2 + read dir </dev/tty +fi + +echo "$root/$dir" |