From 329dcd6b56fa3ceeee7f8315f03ab86a88eee156 Mon Sep 17 00:00:00 2001 From: Rafael Garcia-Suarez Date: Thu, 25 Nov 2004 18:48:01 +0000 Subject: Make urpmq work as non-root users when informations from rpm headers are requested. --- urpmq | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'urpmq') diff --git a/urpmq b/urpmq index 9f78a8cf..8403516e 100755 --- a/urpmq +++ b/urpmq @@ -331,6 +331,7 @@ if ($urpm::args::options{list_aliases}) { # if not root, use a temporary directory to store headers my $tmp_header_dir = "$urpm->{cachedir}/headers"; $< != 0 and $tmp_header_dir = chomp_(`mktemp -d /tmp/urpmq.XXXXXX`); + my @selected = map { split /\|/ } keys %{$state->{selected}}; foreach (0..$#{$urpm->{media} || []}) { if ($urpm->{media}[$_]{synthesis}) { $urpm->{log}->(N("skipping media %s: no hdlist\n", $urpm->{media}[$_]{name})); @@ -338,7 +339,7 @@ if ($urpm::args::options{list_aliases}) { } if (my @headers = (grep { ! -s "$urpm->{cachedir}/headers/$_" } map { my $pkg = $urpm->{depslist}[$_]; - $pkg && $pkg->header_filename } keys %{$list->[$_]})) + $pkg && $pkg->header_filename } @selected)) { if (-s "$urpm->{statedir}/$urpm->{media}[$_]{hdlist}") { require packdrake; @@ -358,6 +359,7 @@ if ($urpm::args::options{list_aliases}) { foreach (keys %{$state->{selected}}) { foreach (split /\|/, $_) { my $pkg = $urpm->{depslist}[$_] or next; + #- even if non-root, search for a header in the global cachedir my $file = $local_sources->{$_} || $downloads{$_} || "$urpm->{cachedir}/headers/".$pkg->header_filename; if (-s $file) { $pkg->update_header($file, keep_all_tags => 1); -- cgit v1.2.1