index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rwxr-xr-x | contrib/pacdiff.in | 92 |
diff --git a/contrib/pacdiff.in b/contrib/pacdiff.in deleted file mode 100755 index bfafda26..00000000 --- a/contrib/pacdiff.in +++ /dev/null @@ -1,92 +0,0 @@ -#!/bin/bash -# pacdiff : a simple pacnew/pacorig/pacsave updater -# -# Copyright (c) 2007 Aaron Griffin <aaronmgriffin@gmail.com> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# - -declare -r myname='pacdiff' -declare -r myver='@PACKAGE_VERSION@' - -diffprog=${DIFFPROG:-vimdiff} -diffsearchpath=${DIFFSEARCHPATH:-/etc} -locate=0 - -usage() { - echo "$myname : a simple pacnew/pacorig/pacsave updater" - echo "Usage : $myname [-l]" - echo " -l/--locate makes $myname use locate rather than find" - echo " DIFFPROG variable allows to override the default vimdiff" - echo " DIFFSEARCHPATH allows to override the default /etc path" - echo "Example : DIFFPROG=meld DIFFSEARCHPATH=\"/boot /etc /usr\" $myname" -} - -version() { - printf "%s %s\n" "$myname" "$myver" - echo 'Copyright (C) 2007 Aaron Griffin <aaronmgriffin@gmail.com>' -} - -cmd() { - if [ $locate -eq 1 ]; then - locate -0 -e -b \*.pacnew \*.pacorig \*.pacsave - else - find $diffsearchpath \( -name \*.pacnew -o -name \*.pacorig -o -name \*.pacsave \) -print0 - fi -} - -if [ $# -gt 0 ]; then - case $1 in - -l|--locate) - locate=1;; - -V|--version) - version; exit 0;; - -h|--help) - usage; exit 0;; - *) - usage; exit 1;; - esac -fi - -# see http://mywiki.wooledge.org/BashFAQ/020 -while IFS= read -u 3 -r -d '' pacfile; do - file="${pacfile%.pac*}" - echo "File: $file" - if [ ! -f "$file" ]; then - echo " $file does not exist" - rm -i "$pacfile" - continue - fi - check="$(cmp "$pacfile" "$file")" - if [ -z "${check}" ]; then - echo " Files are identical, removing..." - rm "$pacfile" - else - echo -n " File differences found. (V)iew, (S)kip, (R)emove: [v/s/r] " - while read c; do - case $c in - r|R) rm "$pacfile"; break ;; - v|V) - $diffprog "$pacfile" "$file" - rm -i "$pacfile"; break ;; - s|S) break ;; - *) echo -n " Invalid answer. Try again: [v/s/r] "; continue ;; - esac - done - fi -done 3< <(cmd) - -exit 0 - -# vim: set ts=2 sw=2 noet: |