mdns: fix ubus wait_for command
[lede.git] / scripts / feeds
index 785be385a9038983e5281ba9ca5726422fdf1c5e..f8f29cd9dd844d59bbae2410303c8d8d736b6465 100755 (executable)
@@ -51,7 +51,7 @@ sub parse_config() {
                $line++;
 
                my $valid = 1;
-               $line[0] =~ /^src-\w+$/ or $valid = 0;
+               $line[0] =~ /^src-[\w-]+$/ or $valid = 0;
                $line[1] =~ /^\w+$/ or $valid = 0;
                @src = split /\s+/, $line[2];
                $valid or die "Syntax error in feeds.conf, line: $line\n";
@@ -128,6 +128,13 @@ my %update_method = (
                'update'        => "git pull --ff",
                'controldir'    => ".git",
                'revision'      => "git show --abbrev-commit HEAD | head -n 1 | cut -d ' ' -f 2 | tr -d '\n'"},
+       'src-git-full' => {
+               'init'          => "git clone '%s' '%s'",
+               'init_branch'   => "git clone --branch '%s' '%s' '%s'",
+               'init_commit'   => "git clone '%s' '%s' && cd '%s' && git checkout -b '%s' '%s' && cd -",
+               'update'        => "git pull --ff",
+               'controldir'    => ".git",
+               'revision'      => "git show --abbrev-commit HEAD | head -n 1 | cut -d ' ' -f 2 | tr -d '\n'"},
        'src-gitsvn' => {
                'init'  => "git svn clone -r HEAD '%s' '%s'",
                'update'        => "git svn rebase",
@@ -383,7 +390,7 @@ sub do_install_target($) {
 
                system("ln -sf ../../$path ./target/linux/");
        } else {
-               warn "Package is not valid\n";
+               warn "Target is not valid\n";
                return 1;
        }
 
@@ -443,10 +450,10 @@ sub install_package {
        my $force = shift;
        my $ret = 0;
 
-       $feed = lookup_target($feed, $name);
-       $feed and do {
+       my $this_feed_target = lookup_target($feed, $name);
+       $this_feed_target and do {
                $installed_targets{$name} and return 0;
-               install_target($feed, $name);
+               install_target($this_feed_target, $name);
                return 0;
        };
 
@@ -786,7 +793,7 @@ my %commands = (
        'uninstall' => \&uninstall,
        'feed_config' => \&feed_config,
        'clean' => sub {
-               system("rm -rf feeds");
+               system("rm -rf ./feeds ./package/feeds");
        }
 );