]> git.donarmstrong.com Git - infobot.git/blobdiff - src/Modules/Debian.pl
* Bring in don's DebianBugs patch
[infobot.git] / src / Modules / Debian.pl
index 1da1c12bb641a81f379464886b1271afc60ab420..963b58a940723914a8d12635a26f940646a95c98 100644 (file)
@@ -12,51 +12,42 @@ no strict 'refs'; # FIXME: dstats aborts if set
 
 my $announce   = 0;
 my $defaultdist        = 'sid';
-my $refresh = &::getChanConfDefault('debianRefreshInterval',7)
-                       * 60 * 60 * 24;
+my $refresh = &::getChanConfDefault('debianRefreshInterval', 7, $::chan) * 60 * 60 * 24;
 my $debug      = 0;
-my $debian_dir = $::bot_state_dir . 'debian';
-my $country    = 'us'; # well .config it yourself then. ;-)
+my $debian_dir = $::bot_state_dir . '/debian';
+my $country    = 'nl'; # well .config it yourself then. ;-)
 my $protocol   = 'http';
+# EDIT THIS (i386, amd64, powerpc, [etc.]):
+my $arch = "$arch";
 
 # format: "alias=real".
 my %dists      = (
        'unstable'      => 'sid',
-       'testing'       => 'sarge',
-       'stable'        => 'woody',
-       'oldstable'     => 'potato',
+       'testing'       => 'lenny',
+       'stable'        => 'etch',
+       'oldstable'     => 'sarge',
        'incoming'      => 'incoming',
 );
 
 my %urlcontents = (
-       "Contents-##DIST-i386.gz" =>
+       "Contents-##DIST-$arch.gz" =>
                "$protocol://ftp.$country.debian.org".
-               "/debian/dists/##DIST/Contents-i386.gz",
-       "Contents-##DIST-i386-non-US.gz" =>
+               "/debian/dists/##DIST/Contents-$arch.gz",
+       "Contents-##DIST-$arch-non-US.gz" =>
                "$protocol://non-us.debian.org".
-               "/debian-non-US/dists/##DIST/non-US/Contents-i386.gz",
+               "/debian-non-US/dists/##DIST/non-US/Contents-$arch.gz",
 );
 
 my %urlpackages = (
-       "Packages-##DIST-main-i386.gz" =>
+       "Packages-##DIST-main-$arch.gz" =>
                "$protocol://ftp.$country.debian.org".
-               "/debian/dists/##DIST/main/binary-i386/Packages.gz",
-       "Packages-##DIST-contrib-i386.gz" =>
+               "/debian/dists/##DIST/main/binary-$arch/Packages.gz",
+       "Packages-##DIST-contrib-$arch.gz" =>
                "$protocol://ftp.$country.debian.org".
-               "/debian/dists/##DIST/contrib/binary-i386/Packages.gz",
-       "Packages-##DIST-non-free-i386.gz" =>
+               "/debian/dists/##DIST/contrib/binary-$arch/Packages.gz",
+       "Packages-##DIST-non-free-$arch.gz" =>
                "$protocol://ftp.$country.debian.org".
-               "/debian/dists/##DIST/non-free/binary-i386/Packages.gz",
-
-       "Packages-##DIST-non-US-main-i386.gz" =>
-               "$protocol://non-us.debian.org".
-               "/debian-non-US/dists/##DIST/non-US/main/binary-i386/Packages.gz",
-       "Packages-##DIST-non-US-contrib-i386.gz" =>
-               "$protocol://non-us.debian.org".
-               "/debian-non-US/dists/##DIST/non-US/contrib/binary-i386/Packages.gz",
-       "Packages-##DIST-non-US-non-free-i386.gz" =>
-               "$protocol://non-us.debian.org".
-               "/debian-non-US/dists/##DIST/non-US/non-free/binary-i386/Packages.gz",
+               "/debian/dists/##DIST/non-free/binary-$arch/Packages.gz",
 );
 
 #####################
@@ -314,7 +305,7 @@ sub searchContents {
 
     my $prefix = "Debian Search of '$query' ";
     if (scalar @list) {        # @list.
-       &::pSReply( &::formListReply(0, $prefix, @list) );
+       &::performStrictReply( &::formListReply(0, $prefix, @list) );
        return;
     }
 
@@ -324,7 +315,7 @@ sub searchContents {
 
     if (!scalar @list) {
        my $prefix = "Debian Package/File/Desc Search of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, ) );
+       &::performStrictReply( &::formListReply(0, $prefix, ) );
 
     } elsif (scalar @list == 1) {      # list = 1.
        &::DEBUG("deb: list == 1; showing package info of '$list[0]'.");
@@ -332,7 +323,7 @@ sub searchContents {
 
     } else {                           # list > 1.
        my $prefix = "Debian Desc Search of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, @list) );
+       &::performStrictReply( &::formListReply(0, $prefix, @list) );
     }
 }
 
@@ -422,7 +413,7 @@ sub searchAuthor {
     my @list = keys %hash;
     if (scalar @list != 1) {
        my $prefix = "Debian Author Search of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, @list) );
+       &::performStrictReply( &::formListReply(0, $prefix, @list) );
        return 1;
     }
 
@@ -436,7 +427,7 @@ sub searchAuthor {
 
     my $email  = join(', ', keys %{ $maint{$list[0]} });
     my $prefix = "Debian Packages by $list[0] \002<\002$email\002>\002 ";
-    &::pSReply( &::formListReply(0, $prefix, @pkg) );
+    &::performStrictReply( &::formListReply(0, $prefix, @pkg) );
 }
 
 ####
@@ -763,7 +754,7 @@ sub infoPackages {
        }
     }
 
-    &::pSReply("$package: $pkg{$query}");
+    &::performStrictReply("$package: $pkg{$query}");
 }
 
 # Usage: &infoStats($dist);
@@ -827,7 +818,7 @@ sub infoStats {
 
     ### TODO: don't count ppl with multiple email addresses.
 
-    &::pSReply(
+    &::performStrictReply(
        "Debian Distro Stats on $dist... ".
        "\002$total{'count'}\002 packages, ".
        "\002".scalar(keys %{ $total{'maint'} })."\002 maintainers, ".
@@ -1078,13 +1069,13 @@ sub DebianFind {
     my @results = sort &searchPackage($str);
 
     if (!scalar @results) {
-       &::Forker("debian", sub { &searchContents($str); } );
+       &::Forker("Debian", sub { &searchContents($str); } );
     } elsif (scalar @results == 1) {
        &::status("searchPackage returned one result; getting info of package instead!");
-       &::Forker("debian", sub { &infoPackages("info", "$results[0] $dist"); } );
+       &::Forker("Debian", sub { &infoPackages("info", "$results[0] $dist"); } );
     } else {
        my $prefix = "Debian Package Listing of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, @results) );
+       &::performStrictReply( &::formListReply(0, $prefix, @results) );
     }
 }
 
@@ -1144,13 +1135,13 @@ sub searchDescFE {
 
     if (!scalar @list) {
        my $prefix = "Debian Desc Search of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, ) );
+       &::performStrictReply( &::formListReply(0, $prefix, ) );
     } elsif (scalar @list == 1) {      # list = 1.
        &::DEBUG("deb: list == 1; showing package info of '$list[0]'.");
        &infoPackages("info", $list[0]);
     } else {                           # list > 1.
        my $prefix = "Debian Desc Search of '$query' ";
-       &::pSReply( &::formListReply(0, $prefix, @list) );
+       &::performStrictReply( &::formListReply(0, $prefix, @list) );
     }
 }