forked from mirrors/nixpkgs
1a38af7e14
* A script to generatie fetchurl calls for Gnome packages from directory listings. svn path=/nixpkgs/trunk/; revision=3197
49 lines
849 B
Perl
Executable file
49 lines
849 B
Perl
Executable file
#! /usr/bin/perl -w
|
|
|
|
use strict;
|
|
|
|
# Example use:
|
|
# ./make-listing.sh \
|
|
# http://ftp.gnome.org/pub/GNOME/platform/2.10/2.10.1/sources/ \
|
|
# http://ftp.gnome.org/pub/GNOME/platform/2.10/2.10.1/sources/MD5SUMS-for-bz2
|
|
|
|
my $baseURL = shift;
|
|
my $md5URL = shift;
|
|
|
|
print <<EOF
|
|
# Note: this file was generated automatically by make-listing.sh!
|
|
|
|
{fetchurl} : {
|
|
EOF
|
|
;
|
|
|
|
open FOO, "curl '$md5URL' |" or die;
|
|
|
|
while (<FOO>) {
|
|
chomp;
|
|
/^(\S+)\s+(\S+)$/ or die;
|
|
my $md5 = $1;
|
|
my $fileName = $2;
|
|
my $name = $fileName;
|
|
$name =~ s/\.tar.*$//;
|
|
my $attrName = $name;
|
|
$attrName =~ s/\-[0-9].*$//;
|
|
$attrName =~ s/\-//g;
|
|
$attrName =~ s/\+//g;
|
|
print <<EOF
|
|
$attrName = {
|
|
name = "$name";
|
|
src = fetchurl {
|
|
url = $baseURL$fileName;
|
|
md5 = "$md5";
|
|
};
|
|
};
|
|
EOF
|
|
;
|
|
|
|
}
|
|
|
|
close FOO;
|
|
|
|
print "}\n";
|