aboutsummaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/pkgdiffs3
-rwxr-xr-xbin/savepatch24
-rwxr-xr-xbin/whereispatch20
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"