gpgdir is a script that encrypts and decrypts directories using a GPG key specified in ~/.gpgdirrc. It supports recursively descending through a directory in order to make sure it encrypts or decrypts every file in a directory and all of its subdirectories. All file mtime and atime values are preserved across encryption and decryption operations. In addition, gpgdir is careful not to encrypt hidden files and directories.
Release Notes: Support was added for the decryption of PGP encrypted files (to round out the support of GnuPG).
Release Notes: A bug was fixed regarding missing the proper handling of files with spaces in their names when using the --Wipe secure deletion mode. The --Force option now supports the ability to encrypt or decrypt hidden files.
Release Notes: The new "--sign" and "--verify" modes were added to allow all files in the specified directory to be signed or verified instead of encrypted or decrypted. All GnuPG signatures are created as detached .asc files, and the original files are not removed in --sign mode. In --verify mode, if any file does not match the expected .asc signature, then a warning is generated. The code was updated to use the status output from GnuPG::Interface to detect a bad passphrase and whether a file is encrypted with the expected GnuPG key. Perl module dependencies were moved into the deps/ directory.
Release Notes: This release always sets the LC_ALL environment variable to the "C" locale. This can be set to other locales with the new argument --locale, or the default locale can be used by using the --no-locale argument. This release updates Class::MethodMaker to 2.11 from CPAN. This helps with systems running perl-5.10.0 and greater (such as Fedora 9).
Release Notes: The --Obfuscate-filenames format was changed to not include the gpgdir PID. This allows directories to be encrypted and decrypted under -O multiple times without creating new filenames (which would pollute encrypted directories under rsync to other systems). The new -O encrypted filename format is just "gpgdir_<num>.gpg". PID locking against directories was added so that multiple gpgdir processes cannot operate against the same top-level directory simultaneously. This is useful for users that typically operate with multiple shells and might launch gpgdir from any of them.