I've added a -n flag to dput which tells dput to upload even if a package has not been installed. This is necessary when one package produces .deb(udeb) files that conflict with each other, and thus cannot be installed at the same.
diff attached. Anil
--- /usr/bin/dput.bak 2008-09-24 06:03:45.000000000 -0700 +++ dput 2008-09-24 06:20:52.531146325 -0700 @@ -32,7 +32,7 @@ upload_methods = {} files_to_upload = [] simulate = unsigned_upload = delay_upload = 0 -debug = dinstall = check_only = 0 +debug = dinstall = check_only = noinstallfail = 0 config_file = '' dput_modules = ('') @@ -536,8 +536,11 @@ print "Package to upload is not installed, but it appears " +\ "you have an older version installed." else: - print "Uninstalled Package. Test it before uploading it." - sys.exit(1) + if not noinstallfail: + print "Uninstalled Package %s. Test it before uploading it." % file + sys.exit(1) + else: + print "Ignoring uninstalled Package %s and continuing" % file # Run a command that the user-defined in the config_file. def execute_command(host, debug, type): @@ -583,6 +586,7 @@ -h: Display this help message. -H: Display a list of hosts from the config file. -l: Run lintian before upload. + -n: Dont fail when not installed -o: Only check the package. -p: Print the configuration. -P: Use passive mode for ftp uploads. @@ -610,10 +614,10 @@ # Parse Command Line Options. try: (opts, args) = getopt.getopt(sys.argv[1:], - 'c:dDe:fhHlopPsuvV', + 'c:dDe:fhHlnopPsuvV', ['debug', 'dinstall', 'check-only', 'check-version', 'config', 'force', 'help', - 'host-list', 'lintian', 'passive', 'print', 'simulate', + 'host-list', 'lintian', 'noinstallfail', 'passive', 'print', 'simulate', 'unchecked', 'delayed=', 'version']) except getopt.error, msg: print msg