chiark / gitweb /
This is useless now that I no longer have a hermes account.
[bin.git] / verify-status.pl
old mode 100644 (file)
new mode 100755 (executable)
index 0b98045..e3faa0c
@@ -2,6 +2,17 @@
 use diagnostics;
 use strict;
 
+my $verbose = 0;
+
+while (@ARGV) {
+       my $arg = shift;
+       if ($arg eq '-v' or $arg eq '--verbose') {
+               $verbose = 1;
+       } else {
+               warn "Unrecognized option: $arg\n";
+       }
+}
+
 local (*AVAILABLE, *STATUS);
 open AVAILABLE, '</var/lib/dpkg/available' or
        die "Can't open available file: $!";
@@ -41,10 +52,14 @@ close AVAILABLE;
 
 foreach my $package (sort keys %available)
 {
-       if (defined $status{$package})
+       my ($av, $st) = ($available{$package}, $status{$package});
+       if (defined $st)
        {
-               print "!!! " if $available{$package} ne $status{$package};
-               print "$package $available{$package} $status{$package}\n";
+               if ($av ne $st) {
+                       print "!!! $package $av $st\n";
+               } elsif ($verbose) {
+                       print "$package $av $st\n";
+               }
        }
 }