Zypper for a third party repo broken but yast2 management works fine

Since a recent update, zypper ref keeps giving me error about a repo not being able to refresh.

Retrieving repository 'brave-browser' metadata ...........................................................................................................................................................[error]
Repository 'brave-browser' is invalid.
[br|https://brave-browser-rpm-release.s3.brave.com/x86_64] Failed to retrieve new repository metadata.
History:
 - [|] Error trying to read from 'https://brave-browser-rpm-release.s3.brave.com/x86_64'
 - Timeout exceeded when accessing 'https://brave-browser-rpm-release.s3.brave.com/x86_64/content'.
   Timeout reached Curl error (28)
Please check if the URIs defined for this repository are pointing to a valid repository.
Skipping repository 'BRAVE' because of the above error.

Tried on another machine (slowroll) in the same lan but it had worked fine with the same repo until it also got updated to the latest OS packages, when the same error for the repo emerged.

Interestingly, if I go to yast2-repo and refresh there I have no problem. Updating packages in the repo using yast2-software management also works fine.

I guess the latest ‘zypper’ package broke something? But doesn’t Yast2 software management use ‘zypper’ underhood?

I have already tried ‘zypper clean --all’ many times, as well as remove and re-add the problematic repo.

To start off, you should provide us the output of “zypper lr -d” … and use the “Preformatted Text” option (icon: </>) found up on the editing toolbar, and paste the zypper output.

Here is my own “zypper lr -d” output shown below, but I’ve snipped out the other entries and only show my Brave browser entries. I use both the standard release and the Beta release.

Yesterday, the Brave standard release was updated during my daily “zypper up”.
Just now, the Brave Beta release was updated. In both updates, no errors.
(Keep in mind, I’m on Leap 15.6, not TW).

user@mach :~> zypper lr -d
#  | Alias              | Name                 | Enabled | GPG Check | Refresh | Keep | Priority | Type   | URI                                                   | Service
---+--------------------+----------------------+---------+-----------+---------+------+----------+--------+-------------------------------------------------------+--------
...
 2 | brave-browser      | Brave Browser        | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | https://brave-browser-rpm-release.s3.brave.com/x86_64 | 
 3 | brave-browser-beta | Brave Browser - Beta | Yes     | (r ) Yes  | Yes     | -    |   99     | rpm-md | https://brave-browser-rpm-beta.s3.brave.com/x86_64    | 
...
user@mach :~> 

.

It does not: on TW you should use zypper dup or in the GUI use Myrlyn. For the rest: we have absolutely no control over whatever 3rd party repo. Turn to the brave peope please.

No. Both zypper and YaST Software are frontends to libzypp and they can theoretically set different options when invoking it. It is impossible to say anything without logs. Check /var/log/zypper.log and compare what happens when you use zypper and when you use YaST Software.

So, I should use zypper dup when I want to install a single package?

1 Like

Andrei, in your case yes :rofl:

I am pretty sure it is not a problem on brave’s side as I said I had not problem refreshing/updating on another OSS SR installation with an one week older system in the same LAN. It started to have the same problem after the OS updated to the latest version. There’s also not much to see in ‘zypper lr’.

Thank you for the crucial info.

I only manually installed the latest version of brave-browser there. BTW is there way to execute ‘zypper dup’ in Yast2-software GUI?

No. And there will never be. That said, there is Myrlyn, the “replacement” GUI that can do the dup.

2 Likes

Presumably the error was spurious. zypper uses local caches. When in trouble always try deleting everything and refresh:

erlangen:~ # zypper clean --all --repo brave-browser
Specified repositories have been cleaned up.
erlangen:~ # zypper refresh --repo brave-browser
Looking for gpg keys in repository Brave Browser.
  gpgkey=https://brave-browser-rpm-release.s3.brave.com/brave-core.asc
Retrieving repository 'Brave Browser' metadata .......................................................................................................................................................................................[done]
Building repository 'Brave Browser' cache ............................................................................................................................................................................................[done]
Specified repositories have been refreshed.
erlangen:~ # 

Yea, I wasn’t suggesting that - just mentioned no update probs my end.

Actually , it does provide useful output for troubleshooting. Unless you did not add the Brave repos, then yes, they will not exist

Manually installed ?? So, that suggests that you installed by downloading the RPM vs using the repo method (which most folks prefer to do).

Here’s how, if unfamiliar (these are all openSUSE specific):

for standard edition

sudo zypper addrepo https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo
sudo zypper install brave-browser

for beta edition

sudo zypper addrepo https://brave-browser-rpm-beta.s3.brave.com/brave-browser-beta.repo
sudo zypper install brave-browser-beta

for nightly edition

sudo zypper addrepo https://brave-browser-rpm-nightly.s3.brave.com/brave-browser-nightly.repo
sudo zypper install brave-browser-nightly

all that info found here, including other distros

I seem to have found the different behavior when zypper refreshing between the ‘brave-browser’ repo and other standard OSS repos, after looking at the logs in /var/log/zypper.log

First of all, my system uses proxy to connect to the internet (set up in Yast2-proxy).

The following content only appears when refreshing the standard OSS repos:

2025-08-07 08:32:43 <1> MYLP(13638) [ZYPP_MEDIA_CURL++] request.cc(setupHandle):251 0x55e997cb3e10 Proxy: 'http://****'
2025-08-07 08:32:43 <1> MYLP(13638) [DEFINE_LOGGROUP] curlconfig.cc(parseConfig):44 Going to parse /root/.curlrc
2025-08-07 08:32:43 <1> MYLP(13638) [DEFINE_LOGGROUP++] curlconfig.cc(parseConfig):106 GOT: proxy
2025-08-07 08:32:43 <1> MYLP(13638) [DEFINE_LOGGROUP++] curlconfig.cc(setParameter):178 Ignoring option proxy
2025-08-07 08:32:43 <1> MYLP(13638) [DEFINE_LOGGROUP++] curlconfig.cc(parseConfig):106 GOT: noproxy
2025-08-07 08:32:43 <1> MYLP(13638) [DEFINE_LOGGROUP++] curlconfig.cc(setParameter):178 Ignoring option noproxy
2025-08-07 08:32:43 <1> MYLP(13638) [ZYPP_MEDIA_CURL++] request.cc(setupHandle):269 0x55e997cb3e10 Proxy: ~/.curlrc does not contain the proxy-user option

Above logs about reading proxy setting doesn’t appear when refreshing the ‘brave-browser’ repo via sudo zypper ref brave-browser.

It seems to me that zypper has a bug for 3rd party repos in a system proxy environment?

You never mentioned that you were using proxy.

Maybe. So far you provided zero information about your system, how repositories are configured, how proxy is configured etc. All we have are several log lines out of context.

1 Like

http(s)_proxy is setup via “yast2-proxy” and repos are bunch of http://cdn.opensuse.org/tumbleweed/repo/oss plus the “brave-browser” repo.

Since internet connection works perfectly fine else where except for the “brave-browser” repo update via ‘zypper ref and zypper dup’ in command line. I also had never had this issue before until the last month.

Therefore I’m gonna settle for now with updating brave-browser in yast2 gui. Personally I don’t think I can do much about it.

If any devs are reading, maybe check what was changed in the recent libzypp packages.

It seems this issue has been fixed by some recent updates. Kudos to the dev team!

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.