From 7b82b4d26c6f154ec7492fcd59f660f60f85025c Mon Sep 17 00:00:00 2001 From: elijah Date: Wed, 6 Jul 2005 08:03:31 +0000 Subject: [PATCH] fixed handling of * in easydialog. added .disabled git-svn-id: http://code.autistici.org/svn/backupninja/trunk@134 758a04ac-41e6-0310-8a23-8373a73cc35d --- backupninja | 2 +- changelog | 3 ++- handlers/easydialog.sh | 25 +++++++++++++------------ handlers/rdiff.helper | 17 ++++++++++------- ninjahelper | 10 +++------- 5 files changed, 29 insertions(+), 28 deletions(-) diff --git a/backupninja b/backupninja index 7f09999..08aeafd 100755 --- a/backupninja +++ b/backupninja @@ -476,7 +476,7 @@ for file in $files; do check_perms $file suffix="${file##*.}" base=`basename $file` - if [ "${base:0:1}" == "0" ]; then + if [ "${base:0:1}" == "0" -o "$suffix" == "disabled" ]; then info "Skipping $file" continue fi diff --git a/changelog b/changelog index 06ae2d9..e916ef0 100644 --- a/changelog +++ b/changelog @@ -1,7 +1,8 @@ version 0.7 -- July 3 2005 added ninjahelper: a dialog based wizard for creating backupninja configs. considerably improved and changed the log file output. - + you can now disable actions with .disabled (this is new preferred method). + version 0.6 -- June 16 2005 ldap handler has new options: backup method to use (ldapsearch or slapcat), restart, passwordfile and binddn. Default backup method diff --git a/handlers/easydialog.sh b/handlers/easydialog.sh index ce7d31e..1ae3c83 100644 --- a/handlers/easydialog.sh +++ b/handlers/easydialog.sh @@ -164,19 +164,20 @@ displayForm() { local form= local xpos=1 - for ((i=0; i < $_form_items ; i++)); do - label=${_form_labels[$i]} - text=${_form_text[$i]} - if [ "$text" == "" ]; then - text='_empty_' - fi - form=`echo -e "$form $label $xpos 1" $text "$xpos $max_length 30 30"` - let "xpos += _form_gap" - done - - $DIALOG --form "$_form_title" 0 0 20 $form 2> $temp + ( + echo -n -e "--form '$_form_title' 0 0 20" + for ((i=0; i < $_form_items ; i++)); do + label=${_form_labels[$i]} + text=${_form_text[$i]} + if [ "$text" == "" ]; then + text='_empty_' + fi + echo -n -e "$form $label $xpos 1 '$text' $xpos $max_length 30 30" + let "xpos += _form_gap" + done + ) | xargs $DIALOG 2> $temp local status=$? - [ $status = 0 ] && REPLY=$(cat $temp) + [ $status = 0 ] && REPLY=`cat $temp` rm -f $temp return $status } diff --git a/handlers/rdiff.helper b/handlers/rdiff.helper index 1364367..83549ec 100644 --- a/handlers/rdiff.helper +++ b/handlers/rdiff.helper @@ -22,22 +22,23 @@ rdiff_wizard() { formItem include /etc formItem include /root formItem include /home - formItem include /usr/local/__star__bin - formItem include /var/lib/dpkg/status__star__ + formItem include '/usr/local/*bin' + formItem include '/var/lib/dpkg/status*' formItem include formItem include formItem include displayForm [ $? = 1 ] && return; - includes= + set -o noglob for i in $REPLY; do [ "$i" != "_empty_" ] && includes="$includes\ninclude = $i" done + set +o noglob startForm "rdiff action wizard: excludes" - formItem exclude /home/__star__/.gnupg + formItem exclude '/home/*/.gnupg' formItem exclude formItem exclude displayForm @@ -45,18 +46,20 @@ rdiff_wizard() { [ $? = 1 ] && return; excludes= + set -o noglob for i in $REPLY; do [ "$i" != "_empty_" ] && excludes="$excludes\nexclude = $i" done - + set +o noglob + get_next_filename $configdirectory/90.rdiff cat > $next_filename <> $next_filename - echo -e $excludes >> $next_filename + echo -e "$includes" >> $next_filename + echo -e "$excludes" >> $next_filename cat >> $next_filename <