}
my $mod;
- for (split /\n+/, $response->decoded_content) {
+ for (split /\n+/, $response->content) {
s/^\s+//; # ignore whitespace at start
next if /^#/;
if (/^module (\S+) (\S+) (\S+)/) {
$mod->{description} = $1;
} elsif (/^mask (.*)/) {
$mod->{mask} = $1;
- } elsif (m#^source (http://\S+)#) {
+ } elsif (/^source (\S+)/) {
parse_url $1;
} else {
print "Unknown line in $src: $_\n";
}
command 'install', 'Install a third-party module', sub {
- for my $mod (@ARGV) {
+ for my $mod (@_) {
my $vers = $mod =~ s/=([-0-9.]+)// ? $1 : undef;
$mod = lc $mod;
unless ($modules{$mod}) {
my $vers = join ' ', map { $_ eq $instver ? "\e[1m$_\e[m" : $_ } @vers;
print "$mod ($vers) - $desc\n";
}
+ exit 0;
};
execute_command @ARGV;
if ($response->is_success) {
open(MF, ">src/modules/$mod.cpp") or die "\nFilesystem not writable: $!";
- print MF $response->decoded_content;
+ print MF $response->content;
close(MF);
print " - done\n";
} else {