add Chris Nolan to Authors for the maildir directory fix, and add
[matthijs/upstream/backupninja.git] / ChangeLog
index db788de8f908cb1a05c68991cb2477b7fecc4c89..c665f9dc9fb06bf9fcca2eada607e3ee029fcd68 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+version 0.9.7 -- UNRELEASED
+    backupninja changes
+        . fix bug in reportspace, thanks Dan Garthwaite
+        . do not assume English locale when using date (Closes: #465837)
+        . add 'when = manual' option, that can be used in the global config
+          file or in a given backup action file. Thanks Tuomas Jormola for the
+          preliminary patch (Closes: #511299)
+        . new reportinfo option: when set, messages sent by handlers with
+          "info" are included in the report e-mail (closes #563734)
+        . reportspace: skip non-directories and places that don't exist on the
+          local filesystem (Closes: #536049)
+        . set BACKUPNINJA_DEBUG when invoked with -d (Closes: #537266)
+    lib changes
+       easydialog:
+        . Allow form fields input to grow up to 100 chars (Closes: #562249)
+    handler changes
+       ldap:
+        . Use gzip's --rsyncable option.
+        . Use bash pipefail option when needed so that failed dumps are
+          reported as such.
+       maildir:
+        . fix location of deleted_on file
+        . add missing destid_file options to ssh connections
+        . added sshoptions variable for arbitrary ssh options
+        . updated example file to include destid_file, destport and sshoptions
+        . use any subdirectories not just "a" to "z". Thanks Chris Nolan! (Redmine#606)
+       mysql:
+        . Options passed to mysqldump are now customizable with the new
+          sqldumpoptions configuration variable. Thanks to Chris Lamb for his
+          preliminary patch (Closes: #502966)
+        . Hide 'mysqladmin ping' output, to prevent confusing the user in
+          case mysqld is running but the authentication fails, which apparently
+          does not prevent mysqldump to work.
+        . Fix the error message displayed when mysqld is not running:
+          mysqladmin ping indeed returns 0 when authentication fails.
+        . Use gzip's --rsyncable option.
+        . Quote output filenames to support shell meta-characters in
+          database names.
+        . Use bash pipefail option when needed so that failed dumps are
+          reported as such.
+       pgsql:
+        . Use gzip's --rsyncable option.
+        . Quote output filenames to support shell meta-characters in
+          database names.
+        . Use bash pipefail option when needed so that failed dumps are
+          reported as such.
+       rdiff:
+        . Fix include/exclude paths with spaces (Closes: #398435)
+        . Fix confusing error if rdiff-backup cannot be found on remote server.
+       sys:
+        . New luksheaders option (default=disabled) to backup the Luks header
+          of every Luks device.
+        . New lvm option (default=disabled) to backup LVM metadata for every
+          detected volume group.
+        . Backup dmsetup info as well, for easier restoring of Luks headers.
+       dup:
+        . Fixed bandwidthlimit syntax error. Thanks to Ian Beckwith for
+          the patch.
+        . Send duplicity output to debug line by line instead of as a whole at
+          one time (Closes: #536360)
+        . Report duplicity output as "info" so that it can be included in
+          report e-mail when reportinfo is on (Closes: #563734)
+        . Fix include/exclude paths with spaces
+        . Support backups to Amazon S3 buckets, thanks to stefan for the patch.
+    helper changes
+       dup:
+        . Do not propose to exclude /home/*/.gnupg twice anymore
+          (Closes: #563044)
+    autotools
+        . Added the stat command to the automagically replaced ones, hoping it
+          will help supporting *BSD some day.
+
+version 0.9.6 -- July 21, 2008
+    backupninja changes
+        . fix bug in cstream definition, thanks Jamie McClelland
+        . Allow the entire backup run to be halted by an action, thanks to
+          Matthew Palmer (Closes: #455836)
+        . Fixed tr construct reporting a warning (Closes: #452669)
+    lib changes
+       vserver:
+        . added vservers_running function
+       tools
+        . mktemp is now required to run backupninja, removed less secure
+          fall-back if mktemp did not exist on the system
+    handler changes
+       dup:
+        . General cleanup
+        . Better support for new duplicity (>= 0.4.4) command line syntax:
+          run remove-older-than when $keep is not set to yes (Closes: #458816),
+          and run "duplicity cleanup" before any other duplicity command; both
+          only trigger a warning on failure, since they should not stop backups
+          from being done. Also migrated full/incremental backup switch to the
+          new syntax.
+        . Support every duplicity-supported transport with new configuration
+          option desturl (Closes: #483712, #346040, Trac#2).
+        . Actually allow to backup only VServers, by relaxing $include test.
+        . Set secure permissions on tmpdir when creating it.
+       ldap:
+        . support HDB backend just as the BDB one, and make message clearer
+          when no supported backend is found (Closes: #476910)
+       rdiff:
+        . Fixed ignore_version default value missing
+        . Add patch from Matthew Palmer to rdiff handler to incorporate sshoptions
+          into options via remote-schema not already specified (Closes: #424639)
+       wget:
+        . New handler from rhatto designed to incrementally pull content from
+          a website to a local folder, based on the rsync handler
+       maildir:
+        . fixed bug where maildirs that start with a number were skipped
+        . make maildir helper look in every subdirectory of the source directory for
+          maildirs, rather than just looking in the directories [a-zA-Z0-9], thanks
+          for the patch from chris@cenolan.com (Trac#43).
+        . make deleted maildirs record the date they were deleted
+        . add destid_file configuration option to enable you to specify an alternate
+          ssh public key authentication file (defaulting to /root/.ssh/id_rsa)
+       pgsql, mysql, svn, sys:
+        . use new vservers_running function from lib/vserver (factorization++)
+       sys:
+        . update for 2.6 kernels: use /proc/kallsyms instead of /proc/ksyms
+          (Closes: Trac#39)
+        . support selection of VServers to run on, in the same way as in the
+          dup handler, with the new vsnames configuration option ; (Closes: Trac#45)
+        . add support for capturing the package debconf selection states using
+          debconf-get-selections
+        . fixed catifexec function to actually work, also now passes the arguments
+          given to catifexec() to the called command (Thanks John Hallam!)
+        . Added more robust software RAID information capture by running mdadm
+          -Q --detail /dev/md?* because some people may have empty mdadm.conf files
+          (Thanks to John Hallam).
+       trac:
+        . stop failing on all the trac backups if just one fails, this means
+          removing the temporary trac backup directories if they fail
+       makecd
+        . updated handler for new toolset (genisoimage and wodim)
+
+version 0.9.5 -- December 2, 2007
+    backupninja changes
+        . Fixed checks on configuration files permissions, since the patch
+          applied to fix #370396 broke this, especially for configuration files
+          created with permissions 000 by an older ninjahelper version.
+        . Enhanced portability for other platforms
+        . Added quoting because it was needed to prevent shell expansion, broking the
+           toint function sometimes (Closes: Trac#11)
+        . Fixed reportspace option (Closes: Trac#10)
+        . Fixed ldap handler not recognizing database suffix (Closes: Trac#28)
+    handler changes
+       dup:
+        . Support duplicity >= 0.4.3 invocation syntax (--ssh-command option
+          is not supported anymore) (Closes: #447425)
+        . New tmpdir configuration option, very useful in case duplicity tends
+          to fill up /tmp.
+        ldap:
+        . Fixed shell command quoting issues, missing 'then' clauses, cleaned up
+          compress=yes to be less redundant and not create empty uncompressed
+          file (Closes: #394935)
+        . Fixed ninjahelper to properly set compress option, standardized on yes/no
+          instead of on/off
+        . Fixed problem that caused combination of slapcat and compress to not work
+          together (Closes: Trac#29)
+        . Applied patch from romain.tartiere@healthgrid.org to fix the SSL/TLS options
+          to be correct, also set TLS to be the default over SSL (Closes: Trac#13)
+       maildir:
+        . Added an examples file (Closes: Trac#23)
+        . Applied patch from Anarcat that fixes the cp/mkdir calls to not use GNU
+          coreutils options, as well as some bashisms (Closes: Trac#24)
+        . Fix test mode (Closes: Trac#25)
+        mysql:
+        . Fixed case where odd combination of configuration options caused sqldump
+          backups to get overwritten with an empty file (Closes: #402679)
+        . Added 'nodata' option to enable you to specify tables that you want to omit
+          the data from a backup, but still backup the table structure. This is very
+          useful in cases where tables contain large amounts of cache data. See the
+          example.mysql for options, thanks Daniel Bonniot (Closes: #408829)
+        . Enhance code for selecting databases by asking MySQL not to give us the
+          header (-N), to not draw pretty boxes around the output (-B), send the query
+          via -e instead of a pipe and ensure MySQL listens to -B. Thanks to
+          Matthew Palmer (Closes: #452039).
+       pgsql:
+        . Support configuring PGSQLUSER for real, and document it a bit; this
+          broken support actually prevented pgsql handler to work for VServers
+          (Closes: #396578)
+       rdiff-backup:
+        . Added cstream support to allow for bandwidth limiting
+        . Handle "keep = yes" to disable old backups removal (Closes: #424633)
+        . Add configuration option to allow you to disable the version check
+          as in some instances this may be an ok scenario (Closes: #424632)
+        . Added local destination support to helper (Closes: Trac#4)
+        . Allow exclude-only configurations (Closes: Trac#21)
+       rub/rsync
+        . Fixed typo in rub handler that caused it to not work
+        . Changed to use lib/vserver code
+        . Fixed fsck error
+        . Fixed integer comparison (Closes: Trac#3)
+        . Renamed handler to 'rsync', replaces outdated rub handler
+        . updated examples/Makefile.am and handlers/Makefile.am to include
+          rsnap/rsync (Closes: #440554)
+        . Added example.rsync configuration file
+       sys:
+        . Fixed typo breaking things for VServers.
+        . Fix bug when vrootdir is on its own partition (Closes: #395928)
+        . Better sfdisk error and output handling: should now properly warn
+          when it does not manage to backup a partition table, and shut up when
+          it succeeds (Closes: #396632)
+        . Added option to not use sfdisk at all, useful for vserver/xen instances
+          that produce warnings about no harddisks found (Closes: #404071)
+        . Fixed example in example.sys to detail the __star__ in partitionsfile and
+          note why its necessary (Closes: #409192)
+        . Force C locale for sfdisk to ensure english words are found in grep
+        . Make directory where output is placed configurable, and create the parent dir
+          if it doesn't exist (Closes: Trac#1)
+    ninjareport
+        . Added first draft of method to aggregate reports from many servers into
+          one email. Requires logtail, rsync, configuration of reporthost,
+          reportdirectory and reportuser in backupninja.conf. Configure cron to
+          run once a day, and individual backupninjas not to report by email their
+          status, then enjoy one email report from all hosts, rather than multiple
+    fixed 'make install' bug that failed if /etc/backup.d already existed
+    changed spaces to tabs in Makefile.am
+    updated redhat spec file (thanks Adam Monsen)
+
+version 0.9.4 -- October 6th, 2006
+    backupninja changes
+        . Fixed bug in toint(), and thus isnow(), which caused it
+          to not work when run from cron.
+        . Recursively ignore subdirs in /etc/backup.d (Closes: #361102)
+        . Add admingroup option to configuration to allow a group that can
+          read/write configurations (instead of only allowing root). Checks
+          and complains about group-readable files only when the group differs
+          from the one in the configuration file (default is root as before).
+          Thanks to Martin Krafft for the patch (Closes: #370396).
+        . When determining which backup actions to make, find now follows
+          symlinks for $configdirectory
+        . Changed order of -s to mail for compatibility
+        . fixed permission stat call so it uses the --format supported by
+          coreutils (Closes: #382747)
+        . Added disk space report option (thanks Adam Kosmin)
+    handler changes
+       Added tar handler:
+        . create tarballs
+       Added rsnap handler:
+        . rotated rsync snapshops
+        . code from paulv@bikkel.org
+       Added rub handler:
+        . alternative to rsnap
+        . code from rhatto@riseup.net
+       mysql:
+        . Fixed improper use of $vuserhome (Closes: #351083)
+        . Fixed erroneous removal of tmpfile when it didn't exit
+        . Fixed inversed vsname emptiness check
+        . Fixed su quote usage to be more posixy
+        . Compress for sqldumps now happens in-line to save some disk space (Closes: #370778)
+        . Fixed --defaults-file now as --defaults-extra-file (thanks rhatto)
+       pgsql:
+        . Fixed inversed vsname emptiness check
+        . Fixed su quote usage to be more posixy
+        . Fixed shell expansion, thanks Thomas Kotzian (Closes: #363297)
+        . postgres user UID is now the one from inside the vserver if necessary
+        . Compress now happens in-line to save some disk space (Closes: #370778)
+        . $PGSQLUSER is used instead of hardcoding user 'postgres' (although this is the default)
+       svn:
+        . Fixed inversed vsname emptiness check
+       rdiff:
+        . Symlink and globbing support in include/exclude/vsinclude
+          clarification: globbing is fully supported again, whereas no attempt
+          is done to dereference symlinks anymore, due to incompatibilities
+          between various readlink versions in this field.
+        . Removed overzealous vsnames check
+        . Now works if testconnect=no and if $test is not defined.
+        . add $sshoptions config parameter in [dest] section of config so
+          connections to ports other than 22 can be made by adding the
+          following to the top of the handler config:
+          options = --remote-schema 'ssh -p REMOTE-PORT -C %s rdiff-backup
+          --server'
+       dup:
+        . Symlink and globbing support in include/exclude/vsinclude
+          clarification: globbing is fully supported again, whereas no attempt
+          is done to dereference symlinks anymore, due to incompatibilities
+          between various readlink versions in this field.
+        . Removed over zealous vsnames check
+        . Does not pretend anymore that duplicity can work without
+          any passphrase
+        . Support duplicity 0.4.2 (with Debian patches applied; upstream's
+          0.4.3 will integrate them); documented how to write sftp-compatible
+           sshoptions (Closes: #388543)
+        . Now forbid to (try to) include /.
+       sys:
+        . Many more system checks were added, (thanks to Petr Klíma)
+        . Added warning if no devices were found (thanks Ranier Zocholl)
+        . Enhanced debian package selections to include purged packages (thanks
+          Tom Hoover)
+        . Removed warning about vserver not running (thanks anarcat)
+       ldap:
+        . Compress now happens in-line to save some disk space (Closes: #370778)
+       makecd:
+        . Added nicelevel option (thanks rhatto)
+       trac:
+        . fixed problem when src was set to the trac repo directly (Closes: #382737)
+    lib changes
+       vserver:
+        . init_vservers: fixed Debian bug #351083 (improper readlink syntax)
+        . found_vservers: escaped special grep repetition character +
+        . forced mktemp to use a template with a name to be more compatible with
+          different versions of mktemp, thanks anarcat
+    ninjahelper changes
+        . Recursively ignore subdirs in /etc/backup.d (Closes: #361102)
+        . Fix configdirectory error that forced you to use /etc/backup.d, thanks anarcat
+        . When determining which backup actions to list, find now follows
+           symlinks for $configdirectory
+        . Stop checking helpers perms: both "make install" and distros packages
+          install them with appropriate permissions, it's overzealous to check
+          this at runtime, and is more complicated to do with current
+          admingroup option.
+       dup.helper:
+        . Fix: signing was enabled with symmetric encryption.
+    changed cron permissions to 644
+    changed /etc/backup.d permissions to 0770 (for admingroup)
+    minor documentation fixes
+    improved RPM build process allowing 'make rpm-package' and 'make
+    srpm-package' targets, also fixes permissions on man directories,
+    cleans up RPM-related files during distclean, and adds default
+    EDITOR for "autogen.sh -f" if none is set. (thanks Robert Napier)
+
+version 0.9.3 -- February 1st, 2006
+    autotools fixes
+    backupninja changes
+        backupninja.conf
+         . added (commented out) the various default paths to
+           programs such as PGSQLDUMP, so that users can figure
+           out more easily they can customize them
+        code refactor:
+        . now uses vservers lib to initialize vservers support
+    handler changes
+        duplicity, mysql, pgsql, rdiff, svn, sys: start to use (at different
+          degrees) new lib/vserver functionality
+        mysql:
+         . fixed no user defaults file processing
+       duplicity:
+        . fixed (again...) globbing in include and exclude options (Debian bug
+          #348022, follow-up to #338796)
+        . warn if vsnames or vsinclude is enabled while vservers support is
+          disabled in backupninja.conf
+        . now works when multiple vservers names are given (separated by space)
+          in vsnames config variable
+        rdiff
+        . fixed globbing bug in include, exclude and vsinclude options
+        . it's now possible to choose exactly which vservers should be
+          backed-up, as it already was with duplicity handler, with the
+          "vsnames" configuration setting
+    ninjahelper changes
+        rdiff.helper:
+         . fixed errors in create remote dir
+         . code formatting cleanup (three spaces indent)
+         . fixed bug which caused only first include/exclude dir to
+           have "include = "
+         . fixed globbing bug with exclude
+        ninjahelper:
+         . now reports error if the helper script has a syntax error or bombs out.
+         . code formatting cleanup (three spaces indent)
+    lib changes
+       vserver:
+        . init_vservers: improved VROOTDIR detection
+        . init_vservers: test in a stricter way the real vservers availability
+        . init_vservers: canonicalize VROOTDIR (since duplicity et al.
+          don't follow symlinks)
+        . init_vservers: warn if vservers are enabled but no vserver is found
+        . new function: vservers_exist
+    known bugs:
+        easydialog:
+         . formDisplay does not return exit status.
+
 version 0.9.2 -- December 29, 2005
-       backupninja changes
-               fixed broken toint() which caused when "everyday" problems
-               backupninja.conf.5 updated to include "when" and "vservers"
-               code refactor:
-                       . moved to lib/ some code that has to be shared between
-                         backupninja and ninjahelper
-       handler changes
-               trac:
-                       . mkdir subdirectory problem fixed
-               duplicity:
-                       . globbing support fixed in include and exclude options 
-                       . different signing and encrypting key support added
-                       . fixed erroneous comments in example.dup about the way
-                         GnuPG-related options are used
-               mysql:
-                       . handler vserver bugs fixed and debug output enhanced
-       ninjahelper(s) changes
-               vserver-related functions added to lib/vservers.in
-               added man/ninjahelper.1 man page
-               makecd:
-                       . was missing in Makefile.am/.in
-               rdiff-backup:
-                       . used to expand '*' in default source directories
-                       . the "Cancel" buttons used to have a weird behaviour
-                       . updated to include Vserver selection 
-               pgsql:
-                       . forbid the user to choose an empty database set 
-                       . "Cancel" button now does what it is meant to do
-               mysql:
-                       . enhanced for vserver support 
-                       . now able to select databases and dump directory
-               duplicity:
-                       . new handler added (with Vserver support)
+    backupninja changes
+        fixed broken toint() which caused when "everyday" problems
+        backupninja.conf.5 updated to include "when" and "vservers"
+        code refactor:
+            . moved to lib/ some code that has to be shared between
+              backupninja and ninjahelper
+    handler changes
+        trac:
+            . mkdir subdirectory problem fixed
+        duplicity:
+            . globbing support fixed in include and exclude options
+            . different signing and encrypting key support added
+            . fixed erroneous comments in example.dup about the way
+              GnuPG-related options are used
+        mysql:
+            . handler vserver bugs fixed and debug output enhanced
+    ninjahelper(s) changes
+        vserver-related functions added to lib/vservers.in
+        added man/ninjahelper.1 man page
+        makecd:
+            . was missing in Makefile.am/.in
+        rdiff-backup:
+            . used to expand '*' in default source directories
+            . the "Cancel" buttons used to have a weird behaviour
+            . updated to include Vserver selection
+        pgsql:
+            . forbid the user to choose an empty database set
+            . "Cancel" button now does what it is meant to do
+        mysql:
+            . enhanced for vserver support
+            . now able to select databases and dump directory
+        duplicity:
+            . new handler added (with Vserver support)
 
 version 0.9.1 -- November 05 2005
-       rearranged source so that it is relocatable with autotools
-               (thanks to Petr Klíma petr.klima@madeta-group.cz)
-       fixed many bugs in rdiff helper
-       rdiff handler does not require 'label' (for real this time?)
-       added makecd ninjahelper
-               (thanks to Stefani stefani@riseup.net)
-       made ninjahelper create files with mode 600 rather than 000
-       changed subversion handler to use svnadmin hotcopy instead of
-               the unsupported hot-copy.py script, which was moved in Debian
-       update rdiff ninjahelper
-               now detects and auto-install rdiff-backup on the remote 
-               machine if possible, also tests the remote backup directory
-               and offers to create it if it doesn't exist
+    rearranged source so that it is relocatable with autotools
+        (thanks to Petr Klíma petr.klima@madeta-group.cz)
+    fixed many bugs in rdiff helper
+    rdiff handler does not require 'label' (for real this time?)
+    added makecd ninjahelper
+        (thanks to Stefani stefani@riseup.net)
+    made ninjahelper create files with mode 600 rather than 000
+    changed subversion handler to use svnadmin hotcopy instead of
+            the unsupported hot-copy.py script, which was moved in Debian
+    update rdiff ninjahelper
+            now detects and auto-install rdiff-backup on the remote
+            machine if possible, also tests the remote backup directory
+            and offers to create it if it doesn't exist
 
 version 0.9 -- October 19 2005
-       *** IMPORTANT CHANGE, UPGRADE AT ONCE ***
-        fixed insecure temporary file creation 
-       *****************************************
-       removed erroneous magic file marker in pgsql handler
-       fixed incorrect find positional
-       changed direct grep of /etc/passwd to getent passwd.
-       rdiff helper has much better information on failed ssh attempt
-               (patch from cmccallum@thecsl.org).
-       rdiff handler now supports remote source and local dest. 
-               (patch from cmccallum@thecsl.org).
-       man pages are greatly improved.
+    *** IMPORTANT CHANGE, UPGRADE AT ONCE ***
+     fixed insecure temporary file creation
+    *****************************************
+    removed erroneous magic file marker in pgsql handler
+    fixed incorrect find positional
+    changed direct grep of /etc/passwd to getent passwd.
+    rdiff helper has much better information on failed ssh attempt
+        (patch from cmccallum@thecsl.org).
+    rdiff handler now supports remote source and local dest.
+        (patch from cmccallum@thecsl.org).
+    man pages are greatly improved.
 
 version 0.8 -- September 15 2005
-       added pgsql (PostgreSQL) handler, with vservers support.
-       added vservers support to duplicity handler
-               Note: the configuration is a bit different than the rdiff
-               handler's one, but the default behavior is the same:
-               have a look at example.dup.
-       improved README
-       documented .disabled method.
-       corrected VROOTDIR default value.
-       added ninjahelper to the install instructions.
-       improved rdiff, dup and sys handlers' vservers support
-               prevent vserver-debiantools' $VROOTDIR/ARCHIVES directory
-               to be seen as a vserver
-       changes to sys handler
-               make use of configurable $VSERVERINFO instead of hard-coded vserver-info.
-               fixed dpkg existence test inside vserver.
-               fixed $nodpkg use.
-       changes to pgsql handler
-               now checks if the specified vserver is running.
-               now checks if $PGSQLDUMP/$PGSQLDUMPALL are available where needed.
-               now checks if "postgres" user exists on the host/vserver.
-       changes to ninjahelper
-               check_perms() does not die anymore on group/world readable
-               helper scripts (now consistent with the "helper scripts
-               must not be group or world writable!" error msg).
-       xedit action now tries $EDITOR, then /etc/alternatives/editor,
-               then nano, vim and vi, and aborts if none of these exists.
-       added helper for pgsql handler.
-       rdiff handler now does not require 'label'
-       changes to mysql and svn handlers' vservers support
-               these handlers now check if the source vserver is running
-       added 'ignores' for mysql handler. (thanks Daniel.Bonniot@inria.fr)
+    added pgsql (PostgreSQL) handler, with vservers support.
+    added vservers support to duplicity handler
+        Note: the configuration is a bit different than the rdiff
+        handler's one, but the default behavior is the same:
+        have a look at example.dup.
+    improved README
+    documented .disabled method.
+    corrected VROOTDIR default value.
+    added ninjahelper to the install instructions.
+    improved rdiff, dup and sys handlers' vservers support
+        prevent vserver-debiantools' $VROOTDIR/ARCHIVES directory
+        to be seen as a vserver
+    changes to sys handler
+        make use of configurable $VSERVERINFO instead of hard-coded vserver-info.
+        fixed dpkg existence test inside vserver.
+        fixed $nodpkg use.
+    changes to pgsql handler
+        now checks if the specified vserver is running.
+        now checks if $PGSQLDUMP/$PGSQLDUMPALL are available where needed.
+        now checks if "postgres" user exists on the host/vserver.
+    changes to ninjahelper
+        check_perms() does not die anymore on group/world readable
+        helper scripts (now consistent with the "helper scripts
+        must not be group or world writable!" error msg).
+    xedit action now tries $EDITOR, then /etc/alternatives/editor,
+        then nano, vim and vi, and aborts if none of these exists.
+    added helper for pgsql handler.
+    rdiff handler now does not require 'label'
+    changes to mysql and svn handlers' vservers support
+        these handlers now check if the source vserver is running
+    added 'ignores' for mysql handler. (thanks Daniel.Bonniot@inria.fr)
 
 version 0.7 -- July 26 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).
-       added makecd handler and example.makecd for backing up to cd/dvd (thanks stef).
-       fixed bug when specifying multiple 'when' options.
+    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).
+    added makecd handler and example.makecd for backing up to cd/dvd (thanks stef).
+    fixed bug when specifying multiple 'when' options.
 
 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
-               is set to ldapsearch as this is safer
-       ******************************************************************
-       NOTE: to get the previous default behavior with the ldap handler, 
-       you must set "method = slapcat". The new default is ldapsearch.
-       ******************************************************************
-       implemented fix so that the main script will echo fatal errors rather
-               than being silent about them, this means an error message every hour
-               if there is a major configuration problem (not a handler problem)
-       added vserver support to main script and to the handlers: mysql, svn, sys, rdiff
-       changes to duplicity handler (thanks intrigeri!):
-               "keep = yes" now disables file cleaning on desthost
-               added "sign" option for backups signing
-               added "encryptkey" option to specify the gpg key to use
-               split config into [source], [gpg] and [dest] sections
-               added "nicelevel" option
-               added "testconnect" option
-               added "sshoptions" option (will be passed to ssh/scp)
-               added "bandwidthlimit" option
-       example.dup example config file for duplicity handler 
-       added trac (http://trac.edgewall.com/) environment handler (thanks Charles Lepple!)
-       added configfile option to mysql handler
-               the default is /etc/mysql/debian.cnf. with this, 
-               sqldump doesn't need dbusername. (hotcopy still does).
-       fixed bug in mysql handler which caused some passwords to not work.
-               (.my.cnf files now have double quotes around password)
-       can now pass options to hwinfo and sfdisk in sys handler.
+    ldap handler has new options: backup method to use (ldapsearch or
+        slapcat), restart, passwordfile and binddn. Default backup method
+        is set to ldapsearch as this is safer
+    ******************************************************************
+    NOTE: to get the previous default behavior with the ldap handler,
+    you must set "method = slapcat". The new default is ldapsearch.
+    ******************************************************************
+    implemented fix so that the main script will echo fatal errors rather
+        than being silent about them, this means an error message every hour
+        if there is a major configuration problem (not a handler problem)
+    added vserver support to main script and to the handlers: mysql, svn, sys, rdiff
+    changes to duplicity handler (thanks intrigeri!):
+        "keep = yes" now disables file cleaning on desthost
+        added "sign" option for backups signing
+        added "encryptkey" option to specify the gpg key to use
+        split config into [source], [gpg] and [dest] sections
+        added "nicelevel" option
+        added "testconnect" option
+        added "sshoptions" option (will be passed to ssh/scp)
+        added "bandwidthlimit" option
+    example.dup example config file for duplicity handler
+    added trac (http://trac.edgewall.com/) environment handler (thanks Charles Lepple!)
+    added configfile option to mysql handler
+        the default is /etc/mysql/debian.cnf. with this,
+        sqldump doesn't need dbusername. (hotcopy still does).
+    fixed bug in mysql handler which caused some passwords to not work.
+        (.my.cnf files now have double quotes around password)
+    can now pass options to hwinfo and sfdisk in sys handler.
 
 version 0.5 -- April 12 2005
-       rdiff handler works when remote sshd has a banner
-       rdiff handler supports local dest 
-       logfile is created if it doesn't exist
-       added "when = hourly" 
-       added optional 'nicelevel' to rdiff handler
-       fixed bug where actions were not run in numeric order.
-       improved 'when' parsing.
+    rdiff handler works when remote sshd has a banner
+    rdiff handler supports local dest
+    logfile is created if it doesn't exist
+    added "when = hourly"
+    added optional 'nicelevel' to rdiff handler
+    fixed bug where actions were not run in numeric order.
+    improved 'when' parsing.
 
 version 0.4.4 -- March 18 2005
-       results of handlers are now read line by line. 
-       changes to rdiff handler: added "options", and "keep" is
-               not necessarily days now (ie, it will pass straight through to
-               rdiff-backup if the keep has a unit on it, otherwise it adds the 'D').
-       added dup handler (still pretty beta)
-       added maildir handler (very specialized handler)
-       added --run option (runs the specified action file)
-       improved sys handler, now uses hwinfo
-       added subversion hotbackup handler, svn. 
-       added PATH to cron.d file, which fixes file not found errors.
+    results of handlers are now read line by line.
+    changes to rdiff handler: added "options", and "keep" is
+        not necessarily days now (ie, it will pass straight through to
+        rdiff-backup if the keep has a unit on it, otherwise it adds the 'D').
+    added dup handler (still pretty beta)
+    added maildir handler (very specialized handler)
+    added --run option (runs the specified action file)
+    improved sys handler, now uses hwinfo
+    added subversion hotbackup handler, svn.
+    added PATH to cron.d file, which fixes file not found errors.
 
 version 0.4.2 -- Jan 6 2005
-       fixed bug which caused a report email to be sent even if no actions were run.
-       fixed bug where multiple handler status messages were ignored
-       added status in the subject line of report emails
+    fixed bug which caused a report email to be sent even if no actions were run.
+    fixed bug where multiple handler status messages were ignored
+    added status in the subject line of report emails
 
 version 0.4.1 -- Jan 3 2005
-       added $usecolors and now more conservative about when colors are echoed.
-       fixed major bug, 'when' actually works now.
-       replaced debug function with debug, info, warning, error, fatal.
-       added --now option to force all actions to be performed now.
-       
+    added $usecolors and now more conservative about when colors are echoed.
+    fixed major bug, 'when' actually works now.
+    replaced debug function with debug, info, warning, error, fatal.
+    added --now option to force all actions to be performed now.
+
 version 0.4 -- Dec 26 2004
-       added "when" option, so that all configs can specify when
-               they are to be run.
-       added reportsuccess and reportwarning config options
-       added .sys handler (hardware, packages, partitions).
+    added "when" option, so that all configs can specify when
+        they are to be run.
+    added reportsuccess and reportwarning config options
+    added .sys handler (hardware, packages, partitions).
 
 version 0.3.4 -- Dec 8 2004
-       fixed numerical variable quoting compatibility with older wc    
-       fixed stderr redirect bug
-       some comments in example.rdiff
+    fixed numerical variable quoting compatibility with older wc
+    fixed stderr redirect bug
+    some comments in example.rdiff
 
 version 0.3.3 -- Nov 10 2004
-       '*' (asterisk) works now in rdiff config files
-       works now with gawk as well as mawk
-       many bug fixes to ldap handler
-       paths to helper scripts can be configured in global config
-       does not require /usr/bin/stat
+    '*' (asterisk) works now in rdiff config files
+    works now with gawk as well as mawk
+    many bug fixes to ldap handler
+    paths to helper scripts can be configured in global config
+    does not require /usr/bin/stat
 
 version 0.3.2 -- Sept 29 2004
-       handler scripts are no longer executable (to comply with debian policy)
-       handler error and warning messages are sent with the notify email
+    handler scripts are no longer executable (to comply with debian policy)
+    handler error and warning messages are sent with the notify email
 
 version 0.3.1 -- Sept 5 2004
-       added ldap handler
-       moved sh support to a handler script
-       add test mode, where no action is taken.
-       added --help
-       force only root can read /etc/backup.d/*
-       fixed missing equals symbols in example.rdiff
-       changed backupninja executable to be /usr/sbin rather than /usr/bin
-       
+    added ldap handler
+    moved sh support to a handler script
+    add test mode, where no action is taken.
+    added --help
+    force only root can read /etc/backup.d/*
+    fixed missing equals symbols in example.rdiff
+    changed backupninja executable to be /usr/sbin rather than /usr/bin
+
 version 0.3 -- Oct 20 2004
-       ** IMPORTANT ** all config files are now ini style, not apache style
-       rewrote all scripts in bash for portability
-       added drop-in backupninja lib directory (/usr/share/backupninja)
-       all scripts are now run as root
+    ** IMPORTANT ** all config files are now ini style, not apache style
+    rewrote all scripts in bash for portability
+    added drop-in backupninja lib directory (/usr/share/backupninja)
+    all scripts are now run as root
 
 version 0.2 -- Oct 14 2004
-       move distribution folder ./cron.d to ./etc/cron.d
-       fixed bug: removed printr of excludes (!)
-       added support for changing the user/group in rdiff sources.
-       added support for .mysql config files.
-       
+    move distribution folder ./cron.d to ./etc/cron.d
+    fixed bug: removed printr of excludes (!)
+    added support for changing the user/group in rdiff sources.
+    added support for .mysql config files.
+
 version 0.1 -- Oct 8 2004
-       initial release 
+    initial release