# Installs Debian packages
# Copyright (C) 2000, 2001 James Troup <james@nocrew.org>
-# $Id: katie,v 1.62 2001-11-04 22:41:31 troup Exp $
+# $Id: katie,v 1.67 2001-11-25 01:21:34 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
# Originally based almost entirely on dinstall by Guy Maor <maor@debian.org>
-#########################################################################################
+###############################################################################
# Cartman: "I'm trying to make the best of a bad situation, I don't
# need to hear crap from a bunch of hippy freaks living in
#
# Cartman: "uhh.. screw you guys... home."
-#########################################################################################
+###############################################################################
import FCNTL, commands, fcntl, getopt, gzip, os, pg, pwd, re, shutil, stat, string, sys, tempfile, time, traceback
import apt_inst, apt_pkg
legacy_source_untouchable = {};
Subst = {};
nmu = None;
-katie_version = "$Revision: 1.62 $";
+katie_version = "$Revision: 1.67 $";
###############################################################################
def init():
global Cnf, Options;
- apt_pkg.init();
-
- Cnf = apt_pkg.newConfiguration();
- apt_pkg.ReadConfigFileISC(Cnf,utils.which_conf_file());
+ Cnf = utils.get_conf()
Arguments = [('a',"automatic","Dinstall::Options::Automatic"),
('h',"help","Dinstall::Options::Help"),
for i in ["automatic", "help", "ack-new", "manual-reject", "no-action",
"no-lock", "no-mail", "override-distribution", "version"]:
- Cnf["Dinstall::Options::%s" % (i)] = "";
+ if not Cnf.has_key("Dinstall::Options::%s" % (i)):
+ Cnf["Dinstall::Options::%s" % (i)] = "";
changes_files = apt_pkg.ParseCommandLine(Cnf,Arguments,sys.argv);
Options = Cnf.SubTree("Dinstall::Options")
return changes_files;
-#########################################################################################
+###############################################################################
def usage (exit_code=0):
print """Usage: dinstall [OPTION]... [CHANGES]...
confirm.append(suite)
suites.append(suite)
- for file in files.keys():
+ file_keys = files.keys();
+ file_keys.sort();
+ for file in file_keys:
if files[file].has_key("byhand"):
byhand = 1
summary = summary + file + " byhand\n"
elif answer == 'Q':
sys.exit(0)
-#####################################################################################################################
+###############################################################################
def install (changes_filename, summary, short_summary):
global install_count, install_bytes, Subst;
announce (short_summary, 1)
check_override ();
-#####################################################################################################################
+################################################################################
def stable_install (changes_filename, summary, short_summary):
global install_count, install_bytes, Subst;
changes_filename = os.path.basename(changes_filename);
+ Logger.log(["new",changes_filename]);
+
new_ack_new[changes_filename] = 1;
if new_ack_old.has_key(changes_filename):