summaryrefslogtreecommitdiff
path: root/scripts/download.pl
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/download.pl')
-rwxr-xr-xscripts/download.pl24
1 files changed, 16 insertions, 8 deletions
diff --git a/scripts/download.pl b/scripts/download.pl
index 633a4f6..50ecfc6 100755
--- a/scripts/download.pl
+++ b/scripts/download.pl
@@ -135,14 +135,22 @@ foreach my $mirror (@ARGV) {
push @mirrors, "ftp://ftp.leo.org/pub/comp/os/unix/gnu/$1";
push @mirrors, "ftp://ftp.digex.net/pub/gnu/$1";
} elsif ($mirror =~ /^\@KERNEL\/(.+)$/) {
- push @mirrors, "ftp://ftp.geo.kernel.org/pub/$1";
- push @mirrors, "http://ftp.geo.kernel.org/pub/$1";
- push @mirrors, "ftp://ftp.all.kernel.org/pub/$1";
- push @mirrors, "http://ftp.all.kernel.org/pub/$1";
- push @mirrors, "ftp://ftp.de.kernel.org/pub/$1";
- push @mirrors, "http://ftp.de.kernel.org/pub/$1";
- push @mirrors, "ftp://ftp.fr.kernel.org/pub/$1";
- push @mirrors, "http://ftp.fr.kernel.org/pub/$1";
+ my @extra = ( $1 );
+ if ($filename =~ /linux-\d+\.\d+\.\d+-rc/) {
+ push @extra, "$extra[0]/testing";
+ } elsif ($filename =~ /linux-(\d+\.\d+\.\d+)/) {
+ push @extra, "$extra[0]/longterm/v$1";
+ }
+ foreach my $dir (@extra) {
+ push @mirrors, "ftp://ftp.geo.kernel.org/pub/$dir";
+ push @mirrors, "http://ftp.geo.kernel.org/pub/$dir";
+ push @mirrors, "ftp://ftp.all.kernel.org/pub/$dir";
+ push @mirrors, "http://ftp.all.kernel.org/pub/$dir";
+ push @mirrors, "ftp://ftp.de.kernel.org/pub/$dir";
+ push @mirrors, "http://ftp.de.kernel.org/pub/$dir";
+ push @mirrors, "ftp://ftp.fr.kernel.org/pub/$dir";
+ push @mirrors, "http://ftp.fr.kernel.org/pub/$dir";
+ }
} elsif ($mirror =~ /^\@GNOME\/(.+)$/) {
push @mirrors, "http://ftp.gnome.org/pub/GNOME/sources/$1";
push @mirrors, "http://ftp.unina.it/pub/linux/GNOME/sources/$1";