Update the Key model's sign_file method to raise the NeedPassphrase
exception when GPG has no terminal available and not just when the
GPG backend specifically asks for a passphrase.
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
Use Python's platform library to detect the operating system and
use different default paths for the binary dependencies.
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
Update the django_gpg app to work with the latest version of the
python-gnupg package (0.4.3).
The python-gnupg now returns a more clear error message to
differentiate between a bad passphrase and a missing passphrase.
This improments allows the django_gpg to simplify its error
message parsing and remove the literals:
"ERROR_MSG_NEED_PASSPHRASE" and "ERROR_MSG_GOOD_PASSPHRASE".
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
Remove the SIGNATURES_GPG_HOME settings. The GPG keys are no longer
stored in disk but in the database itself making this setting obsolete.
This changed happened several versions ago and this removal doesn't affect
any code path.
Add two new settings to the app: SIGNATURES_GPG_BACKEND and
SIGNATURES_GPG_BACKEND_ARGUMENTS. These settings allow changing the
GPG backend that the app will use.
Remove the settings SIGNATURES_GPG_PATH. The path to the GPG binary
is now passed via the SIGNATURES_GPG_BACKEND_ARGUMENTS.
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>