Hi
You need to remove the suse/ bit, the Tumbleweed repositories are not repositories, they are install media and have no repodata. If you get an error on refresh, generally it’s a mirror not fully synced, or a new snapshot being uploaded or even being redirected to a faulty mirror in your locale.
When this happens you need to add some verbosity to zypper with the -v option, the more v’s the more detail eg -vvvv
zypper -vv ref -r 7
Verbosity: 2
Initializing Target
Specified repositories: repo-non-oss
Checking whether to refresh metadata for openSUSE-Tumbleweed-Non-Oss
Retrieving: http://download.opensuse.org/tumbleweed/repo/non-oss/content ........................................................................................[done]
Retrieving: http://download.opensuse.org/tumbleweed/repo/non-oss/media.1/media ..................................................................................[done]
Repository 'openSUSE-Tumbleweed-Non-Oss' is up to date.
Specified repositories have been refreshed.
See how it looks at two different places… in this case it’s working fine here, so fix the url and try another ref.
Checking whether to refresh metadata for openSUSE-Tumbleweed-Non-Oss
Retrieving: http://download.opensuse.org/tumbleweed/repo/non-oss/repodata/repomd.xml ............................[not found]
File '/repodata/repomd.xml' not found on medium 'http://download.opensuse.org/tumbleweed/repo/non-oss/'
Abort, retry, ignore? [a/r/i/...? shows all options] (a):
Aha!
And I have just found the answer
My repo file had
type=rpm-md
I commented that line out, and did a refresh, and that line is now
type=yast2
and it successfully refreshes
Thanks for your hint, it made me read the while repo file, not just the base url bit.
I had the same problem as OP, where ‘repodata/repomd.xml’ was not found. I also commented out type=rpm-md on both oss and non-oss repos in Tumbleweed, and Only one of them (oss) has removed the commented type=rpm-md line and replaced it with type=yast2. The other repo (non-oss), still has the commented out type=rpm-md line.
The strange thing is, they both successfully refresh now and I can update my packages. I had a hard time finding this answer, and have not been able to find any others related to it. Can someone more experienced with Tumbleweed enlighten me on what the issue here is? What’s wrong with rpm-md, and why switch to yast2? Why did it only do it to one of the repos that was failing instead of both?