import string
from . import _pakfire
-from . import distro
from . import logger
from . import packages
from . import util
-from .config import Config
from .system import system
from .constants import *
class Pakfire(_pakfire.Pakfire):
__version__ = PAKFIRE_VERSION
- def __init__(self, path=None, config=None, arch=None, distro=None, offline=False):
- _pakfire.Pakfire.__init__(self, path, arch, offline=offline)
+ def __init__(self, path=None, arch=None, conf=None, offline=False):
+ _pakfire.Pakfire.__init__(self, path, arch, conf=conf, offline=offline)
# Initialise logging system
self.log = self._setup_logger()
- # Default to system distribution
- self.distro = distro or system.distro
-
- # Load configuration
- self.config = config or Config("general.conf")
-
def _setup_logger(self):
log = logging.getLogger("pakfire")
log.propagate = 0
Called to initialize this Pakfire instance when
the context is entered.
"""
- # Dump the configuration when we enter the context
- self.config.dump()
-
# Refresh repositories
self.refresh_repositories()
from . import _pakfire
from . import base
-from . import config
from . import logger
from . import util
"""
class Builder(object):
- def __init__(self, arch=None, build_id=None, logfile=None, **kwargs):
- self.config = config.Config("general.conf")
-
- distro_name = self.config.get("builder", "distro", None)
- if distro_name:
- self.config.read("distros/%s.conf" % distro_name)
+ def __init__(self, conf, arch=None, build_id=None, logfile=None, **kwargs):
+ self.conf = conf
# Settings array.
self.settings = {
- "enable_ccache" : self.config.get_bool("builder", "use_ccache", True),
+ "enable_ccache" : True,
}
# Add settings from keyword arguments
# Initialise Pakfire instance
pakfire = base.Pakfire(
arch=self.arch,
- config=self.config,
- distro=self.config.distro,
+ conf=self.conf,
)
# Mount ccache
# Add additional arguments
parser.add_argument("--arch", "-a", nargs="?",
help=_("Run pakfire for the given architecture"))
- parser.add_argument("--distro", nargs="?",
+ parser.add_argument("--distro", nargs="?", default="ipfire3", # XXX for now
help=_("Choose the distribution configuration to use for build"))
# build
return parser.parse_args()
def builder(self, ns):
- return builder.Builder(arch=ns.arch)
+ # Find distro configuration file
+ conf = os.path.join(CONFIG_DISTRO_DIR, "%s.conf" % ns.distro)
+
+ return builder.Builder(conf=conf, arch=ns.arch)
def handle_build(self, ns):
package, = ns.package