func installRemote(mStore *store.SnapUbuntuStoreRepository, remoteSnap *snap.Info, flags InstallFlags, meter progress.Meter) (string, error) { downloadedSnap, err := mStore.Download(remoteSnap, meter, nil) if err != nil { return "", fmt.Errorf("cannot download %s: %s", remoteSnap.Name(), err) } defer os.Remove(downloadedSnap) localSnap, err := (&Overlord{}).InstallWithSideInfo(downloadedSnap, &remoteSnap.SideInfo, flags, meter) if err != nil { return "", err } return localSnap.Name(), nil }