aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gkeys/etc/gkeys.conf2
-rw-r--r--gkeys/gkeys/base.py10
-rw-r--r--gkeys/gkeys/config.py8
3 files changed, 14 insertions, 6 deletions
diff --git a/gkeys/etc/gkeys.conf b/gkeys/etc/gkeys.conf
index 7a774be..3f15051 100644
--- a/gkeys/etc/gkeys.conf
+++ b/gkeys/etc/gkeys.conf
@@ -16,7 +16,7 @@ gkeysdir: /var/lib/gentoo/gkeys
# default user home directory
-homedir: ~
+homedir:
# user gkey directory
diff --git a/gkeys/gkeys/base.py b/gkeys/gkeys/base.py
index 7e28b90..cfd3702 100644
--- a/gkeys/gkeys/base.py
+++ b/gkeys/gkeys/base.py
@@ -15,9 +15,10 @@ from __future__ import print_function
import argparse
+import os
import sys
-from gkeys import fileops
+from gkeys.fileops import ensure_dirs
from gkeys.log import log_levels, set_logger
@@ -267,12 +268,17 @@ class CliBase(object):
else:
self.config.read_config(configs)
+ # check for permissions and adjust configs accordngly
+ if not self.config['homedir']:
+ self.config['homedir'] = os.path.expanduser('~')
+ if not os.access(self.config['logdir'], os.W_OK):
+ self.config['logdir'] = ensure_dirs(
+ os.path.join(self.config['user-dir'], 'logs'))
# establish our logger and update it in the imported files
self.logger = set_logger(self.cli_config['prog'], self.config['logdir'], args.debug,
dirmode=int(self.config.get_key('permissions', 'directories'),0),
filemask=int(self.config.get_key('permissions', 'files'),0))
self.config.logger = self.logger
- fileops.logger = self.logger
if message:
self.logger.error(message)
diff --git a/gkeys/gkeys/config.py b/gkeys/gkeys/config.py
index fdc1cee..96e85e6 100644
--- a/gkeys/gkeys/config.py
+++ b/gkeys/gkeys/config.py
@@ -56,9 +56,11 @@ class GKeysConfig(GPGConfig):
def _set_default_config(self):
- self.defaults['homedir'] = os.path.join(os.path.expanduser('~'), '.gkeys')
- self.defaults['configdir'] = self.defaults['homedir']
- self.defaults['config']= os.path.join(self.defaults['homedir'], 'gkeys.conf')
+ self.defaults['homedir'] = os.path.expanduser('~')
+ self.defaults['configdir'] = os.path.join(
+ self.defaults['homedir'], '.gkeys')
+ self.defaults['config']= os.path.join(
+ self.defaults['configdir'], 'gkeys.conf')
if not os.path.exists(self.defaults['config']):
self.defaults['configdir'] = path([self.root, EPREFIX, '/etc/gkeys'])
self.defaults['config'] = '%(configdir)s/gkeys.conf'