From 0de497b50811cfa096871eff490dc77ec1f35450 Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Fri, 17 May 2013 12:35:04 +0000 Subject: enable to see if nonfree/tained packages are installed (mga#8368, #8379 & #9758) --- urpm/media.pm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'urpm/media.pm') diff --git a/urpm/media.pm b/urpm/media.pm index 6148d680..81da468d 100644 --- a/urpm/media.pm +++ b/urpm/media.pm @@ -755,6 +755,27 @@ sub _auto_update_media { } } + +=item needed_extra_media($urpm) + +Return 2 booleans telling whether nonfree & tainted packages are installed respectively. + +=cut + +sub needed_extra_media { + my ($urpm) = @_; + my $db = urpm::db_open_or_die_($urpm); + my ($nonfree, $tainted); + $db->traverse(sub { + my ($pkg) = @_; + return if $nonfree && $tainted; + my $rel = $pkg->release; + $nonfree ||= $rel =~ /nonfree$/; + $tainted ||= $rel =~ /tainted$/; + }); + ($nonfree, $tainted); +} + sub non_ignored_media { my ($urpm, $b_only_marked_update) = @_; -- cgit v1.2.1