diff --git a/cmd/fdroidcl/download.go b/cmd/fdroidcl/download.go index 2f0ec23..f3937c7 100644 --- a/cmd/fdroidcl/download.go +++ b/cmd/fdroidcl/download.go @@ -25,7 +25,7 @@ func runDownload(args []string) { apps := findApps(args) for _, app := range apps { apk := app.CurApk - url := fmt.Sprintf("%s/%s", apk.Repo.URL, apk.ApkName) + url := apk.URL() path := apkPath(apk.ApkName) if err := downloadEtag(url, path, apk.Hash.Data); err != nil { log.Fatalf("Could not download '%s': %v", app.ID, err) diff --git a/cmd/fdroidcl/install.go b/cmd/fdroidcl/install.go index 7a6dd4b..cf5f438 100644 --- a/cmd/fdroidcl/install.go +++ b/cmd/fdroidcl/install.go @@ -26,7 +26,7 @@ func runInstall(args []string) { paths := make([]string, len(apps)) for i, app := range apps { apk := app.CurApk - url := fmt.Sprintf("%s/%s", apk.Repo.URL, apk.ApkName) + url := apk.URL() path := apkPath(apk.ApkName) if err := downloadEtag(url, path, apk.Hash.Data); err != nil { log.Fatalf("Could not download '%s': %v", app.ID, err) diff --git a/index.go b/index.go index 33d75c4..d87dcc6 100644 --- a/index.go +++ b/index.go @@ -158,6 +158,10 @@ type Apk struct { Repo *Repo } +func (a *Apk) URL() string { + return fmt.Sprintf("%s/%s", a.Repo.URL, a.ApkName) +} + type appList []App func (al appList) Len() int { return len(al) }