[buildd-tools-devel] Bug#570463: Hint aptitude to produce better solutions in AptitudeBuildDepSatisfier.

Modestas Vainius modestas at vainius.eu
Fri Feb 19 00:39:54 UTC 2010


Package: libsbuild-perl
Version: 0.59.0-1
Severity: normal
File: /usr/share/perl5/Sbuild/AptitudeBuildDepSatisfier.pm
Tags: patch

Hello,

(this bug is actually against not-yet-released version 0.59.1-1).

All revelant information about aptitude features exercised by the patch can be
found in the aptitude-doc-en package at:

"Search tiers in the interactive dependency resolver"
 file:///usr/share/doc/aptitude/html/en/ch02s03s04.html

"Configuring the interactive dependency resolver"
 file:///usr/share/doc/aptitude/html/en/ch02s03s05.html

The patch and commit log is below. It applies on the top of the current
buildd/master branch.

Author: Modestas Vainius <modax at debian.org>
Date:   Thu Feb 18 21:44:06 2010 +0200

    Hint aptitude to produce better solutions in AptitudeBuildDepSatisfier.

    Configure aptitude (0.6) to:

    * Refuse solutions which involve removal of the dummy build depends package.
      This is done by adding a respective resolver hint.
    * Move "cancel all user's actions" (Keep-All-Tier) tier after Non-Default-Tier.
      Generally, we want aptitude to try solutions with non-default versions before
      refusing to do anything.
    * Refuse solutions which involve removal of essential packages. The source
      packages that need this are not worth building anyway.

    Signed-off-by: Modestas Vainius <modax at debian.org>

diff --git a/lib/Sbuild/AptitudeBuildDepSatisfier.pm b/lib/Sbuild/AptitudeBuildDepSatisfier.pm
index 6dbf287..eb23725 100644
--- a/lib/Sbuild/AptitudeBuildDepSatisfier.pm
+++ b/lib/Sbuild/AptitudeBuildDepSatisfier.pm
@@ -155,6 +155,9 @@ EOF
 	'-o', 'APT::Install-Recommends=false', 
 	'-o', 'Aptitude::CmdLine::Ignore-Trust-Violations=true', 
 	'-o', 'Aptitude::ProblemResolver::StepScore=100', 
+	'-o', "Aptitude::ProblemResolver::Hints::KeepDummy=reject $dummy_pkg_name :UNINST",
+	'-o', 'Aptitude::ProblemResolver::Keep-All-Tier=55000',
+	'-o', 'Aptitude::ProblemResolver::Remove-Essential-Tier=conflict',
 	'install',
 	$dummy_pkg_name,
 	(map { $_->[0] . "=" . $_->[1] } @non_default_deps)



-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (101, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-2-amd64 (SMP w/1 CPU core)
Locale: LANG=lt_LT.UTF-8, LC_CTYPE=lt_LT.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages libsbuild-perl depends on:
ii  adduser                       3.112      add and remove users and groups
ii  apt                           0.7.25.3   Advanced front-end for dpkg
ii  dctrl-tools                   2.14       Command-line tools to process Debi
ii  devscripts                    2.10.61    scripts to make the life of a Debi
ii  dpkg-dev                      1.15.5.6   Debian package development tools
ii  exim4                         4.71-3     metapackage to ease Exim MTA (v4) 
ii  exim4-daemon-light [mail-tran 4.71-3     lightweight Exim MTA (v4) daemon
ii  libfilesys-df-perl            0.92-3+b1  Module to obtain filesystem disk s
ii  perl                          5.10.1-11  Larry Wall's Practical Extraction 
ii  perl-modules                  5.10.1-11  Core Perl modules
ii  schroot                       1.4.0-1    Execute commands in a chroot envir

libsbuild-perl recommends no packages.

libsbuild-perl suggests no packages.

-- no debconf information





More information about the Buildd-tools-devel mailing list