X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=daklib%2Fconfig.py;h=2d0b8e851d7df11db3dd1bba146651b732548b49;hb=a3775bb96242c59531b84dc7c7a002c8c884c4f4;hp=2f24cd3a84aee1598092a652b3963e21252fed5e;hpb=2cd56ae18c977d13b8676ca60ef9fe85856e71f2;p=dak.git diff --git a/daklib/config.py b/daklib/config.py old mode 100755 new mode 100644 index 2f24cd3a..2d0b8e85 --- a/daklib/config.py +++ b/daklib/config.py @@ -32,25 +32,27 @@ import os import apt_pkg import socket -from singleton import Singleton - ################################################################################ default_config = "/etc/dak/dak.conf" #: default dak config, defines host properties def which_conf_file(): - if os.getenv("DAK_CONFIG"): - return os.getenv("DAK_CONFIG") - else: - return default_config + return os.getenv("DAK_CONFIG", default_config) -class Config(Singleton): +class Config(object): """ A Config object is a singleton containing information about the DAK configuration """ + + __shared_state = {} + def __init__(self, *args, **kwargs): - super(Config, self).__init__(*args, **kwargs) + self.__dict__ = self.__shared_state + + if not getattr(self, 'initialised', False): + self.initialised = True + self._readconf() def _readconf(self): apt_pkg.init() @@ -74,9 +76,6 @@ class Config(Singleton): self.Find = self.Cnf.Find self.FindB = self.Cnf.FindB - def _startup(self, *args, **kwargs): - self._readconf() - def has_key(self, name): return self.Cnf.has_key(name)