Browse Source

Split pkgbuild downloading and merging

morganamilo 6 years ago
parent
commit
43d2a6601a
1 changed files with 19 additions and 6 deletions
  1. 19 6
      install.go

+ 19 - 6
install.go

@@ -166,6 +166,11 @@ func install(parser *arguments) error {
 			return err
 		}
 
+		err = mergePkgBuilds(do.Aur)
+		if err != nil {
+			return err
+		}
+
 		if len(toEdit) > 0 {
 			if config.ShowDiffs {
 				err = showPkgBuildDiffs(toEdit, do.Bases, oldHashes)
@@ -639,6 +644,20 @@ func getHashes(pkgs []*rpc.Pkg) (map[string]string, error) {
 	return hashes, nil
 }
 
+func mergePkgBuilds(pkgs []*rpc.Pkg) error {
+	for _, pkg := range pkgs {
+		if shouldUseGit(filepath.Join(config.BuildDir, pkg.PackageBase)) {
+			err := gitMerge(baseURL + "/" + pkg.PackageBase + ".git", config.BuildDir, pkg.PackageBase)
+			if err != nil {
+				return err
+			}
+		}
+	}
+
+	return nil
+}
+
+
 func downloadPkgBuilds(pkgs []*rpc.Pkg, bases map[string][]*rpc.Pkg, toSkip stringSet) error {
 	for k, pkg := range pkgs {
 		if toSkip.get(pkg.PackageBase) {
@@ -656,12 +675,6 @@ func downloadPkgBuilds(pkgs []*rpc.Pkg, bases map[string][]*rpc.Pkg, toSkip stri
 			if err != nil {
 				return err
 			}
-
-			err = gitMerge(baseURL + "/" + pkg.PackageBase + ".git", config.BuildDir, pkg.PackageBase)
-			if err != nil {
-				return err
-			}
-
 		} else {
 			err := downloadAndUnpack(baseURL+pkg.URLPath, config.BuildDir)
 			if err != nil {