# Poolify (move packages from "legacy" type locations to pool locations)
# Copyright (C) 2000, 2001 James Troup <james@nocrew.org>
-# $Id: catherine,v 1.11 2001-09-27 01:22:51 troup Exp $
+# $Id: catherine,v 1.15 2001-11-19 02:02:53 troup Exp $
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
destination_filename = base_filename;
# Work out the source package name
if utils.re_isadeb.match(base_filename) != None:
- control = apt_pkg.ParseSection(apt_inst.debExtractControl(utils.open_file(legacy_filename,"r")))
+ control = apt_pkg.ParseSection(apt_inst.debExtractControl(utils.open_file(legacy_filename)))
package = control.Find("Package", "");
source = control.Find("Source", package);
if string.find(source, "(") != -1:
if m != None:
source = m.group(1);
else:
- utils.fubar("expandsion of source filename '%s' failed." % (legacy_filename));
+ utils.fubar("expansion of source filename '%s' failed." % (legacy_filename));
# Work out the component name
component = qid["component"];
if component == "":
q = projectB.query("SELECT DISTINCT(c.name) FROM override o, component c WHERE o.package = '%s' AND o.component = c.id;" % (source));
ql = q.getresult();
- if ql == []:
+ if not ql:
utils.fubar("No override match for '%s' so I can't work out the component." % (source));
if len(ql) > 1:
utils.fubar("Multiple override matches for '%s' so I can't work out the component." % (source));
def main ():
global Cnf, projectB;
- apt_pkg.init();
+ Cnf = utils.get_conf()
+
+ for i in ["help", "limit", "no-action", "verbose" ]:
+ if not Cnf.has_key("Catherine::Options::%s" % (i)):
+ Cnf["Catherine::Options::%s" % (i)] = "";
- Cnf = apt_pkg.newConfiguration();
- apt_pkg.ReadConfigFileISC(Cnf,utils.which_conf_file());
Arguments = [('h',"help","Catherine::Options::Help"),
('l',"limit", "Catherine::Options::Limit", "HasArg"),
('n',"no-action","Catherine::Options::No-Action"),
('v',"verbose","Catherine::Options::Verbose")];
- for i in ["help", "limit", "no-action", "verose" ]:
- Cnf["Catherine::Options::%s" % (i)] = "";
apt_pkg.ParseCommandLine(Cnf,Arguments,sys.argv);
Options = Cnf.SubTree("Catherine::Options")