Package: apt-file
Version: 2.5.2
Followup-For: Bug #525813
I had a problem where a file was missing in a suite but it was present in
others. So I found this bug and kinda fixed it.
It feels hackish but it works
Also. I saw some other bugs mentioning apt-file 3.0 since the interface in 2.x
is not very good...
Is there any progress at all in that front?
Now that I took the effort to look at the apt-file source, I might look at some
of the other wish list bugs.
I wont bother at all/look at the new version if its going to be rewritten from
the ground up anyway
-- System Information:
Debian Release: jessie/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.12-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages apt-file depends on:
ii curl 7.34.0-1
ii libapt-pkg-perl 0.1.29+b1
ii libconfig-file-perl 1.50-2
ii liblist-moreutils-perl 0.33-1+b2
ii libregexp-assemble-perl 0.35-8
ii perl 5.18.1-5
ii perl-modules [libfile-temp-perl] 5.18.1-5
Versions of packages apt-file recommends:
ii python 2.7.5-5
ii python-apt 0.9.1
Versions of packages apt-file suggests:
ii openssh-client 1:6.4p1-2
ii sudo 1.8.8-2
-- no debconf information
diff --git a/apt-file b/apt-file
index fdab342..102b4dd 100755
--- a/apt-file
+++ b/apt-file
@@ -365,6 +365,7 @@ sub do_grep($$) {
foreach (@$data) {
my $file = find_newest($_->{dest}) or next;
+ my $dist = $Conf->{suite} ? "$_->{dist} " : "";
# Skip already searched files:
next if $seen{$file}++;
@@ -387,8 +388,8 @@ sub do_grep($$) {
debug_line ".";
foreach ( split /,/, $pkgs ) {
- # Put leading slash on file name
- push @{ $ret->{"/$fname"} }, basename $_;
+ # Add Suite and leading slash on file name
+ push @{ $ret->{"$dist/$fname"} }, basename $_;
}
}
close ZCAT;
@@ -557,6 +558,7 @@ Configuration options:
--package-only -l Only display packages name
--regexp -x pattern is a regular expression
--sources-list -s <file> sources.list location
+ --suite -S Show suite where the match was found
--verbose -v run in verbose mode
--help -h Show this help.
-- End of options (neccessary if pattern
@@ -573,6 +575,7 @@ EOF
sub get_options() {
my %options = (
+ "suite|S" => \$Conf->{suite},
"sources-list|s=s" => \$Conf->{sources_list},
"cache|c=s" => \$Conf->{cache},
"architecture|a=s" => \$Conf->{arch},
diff --git a/apt-file.1.sgml b/apt-file.1.sgml
index 4411124..9857552 100644
--- a/apt-file.1.sgml
+++ b/apt-file.1.sgml
@@ -264,6 +264,17 @@ Use <literal>cdrom-mount-point</literal> instead of
<varlistentry>
<term>
+ <option>-S, --suite</option>
+ </term>
+ <listitem>
+ <para>
+ Show suite where the match was found or list the package on all suites found
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>
<option>-v, --verbose</option>
</term>
<listitem>