zypper quits and throws 'Unexpected Exception'

About a month ago I tried to install rubygem-cairo using LazyKent’s repo. It didn’t work and I gave up. Since then updates have been working fine. However I just went to re-install hplip (printer playing up…again!) and I get this error. It doesn’t make any difference which package I try and install, zypper fails with the same error

M5A97:/ # zypper install gimp
Refreshing service 'Rubygem'.
Unexpected exception.
Parse error: repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
History:
 - repoindex.xml[123] Entity 'nbsp' not defined
 - repoindex.xml[123] Entity 'nbsp' not defined


Please file a bug report about this.
See http://en.opensuse.org/Zypper/Troubleshooting for instructions.

So, I went into Yast and deleted the LazyKent repo, rebooted, but the problem persists. From an excerpt of /var/log/zypper.log it seems that despite deleting the repo, there’s still an entry for it in rpmdb and zypper keeps trying to reload it, so I’m guessing that either the db is corrupted, or the entry has not been deleted correctly.

2016-11-07 11:56:29 <1> M5A97(3387) [zypper] repos.cc(do_init_repos):655 Refreshing autorefresh services.2016-11-07 11:56:29 <1> M5A97(3387) [zypper] repos.cc(refresh_service):2609 going to refresh service 'service'
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] RepoManager.cc(refreshService):2026 Going to refresh service 'service', url: http://software.opensuse.org/download.html?project=devel%3Alanguages%3Aruby%3Aextensions&package=rubygem-cairo, opts: 0000000000
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] ProductFileReader.cc(parse):219 +++/etc/products.d/baseproduct[g___]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] Reader.cc(Reader):113 Start Parsing /etc/products.d/baseproduct[g___]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] Reader.cc(~Reader):137 Done Parsing /etc/products.d/baseproduct[_eF_]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] ProductFileReader.cc(parse):245 ---0 - /etc/products.d/baseproduct[_eF_]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] RepoManager.cc(refreshService):2072 ServicesTargetDistro: 
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaAccess.cc(open):117 Trying scheme 'http'
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaCurl.cc(MediaCurl):466 MediaCurl::MediaCurl(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions, )
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaMultiCurl.cc(MediaMultiCurl):1158 MediaMultiCurl::MediaMultiCurl(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions, )
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaAccess.cc(open):197 Opened: http(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions not attached; localRoot "")
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaManager.cc(open):277 Opened new media access using id 1 to http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaManager.cc(attach):413 attach(id=1)
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaHandler.cc(createAttachPoint):398 Look for orphaned attach points in /var/adm/mount{d 0755 0/0}
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] PathInfo.cc(dirForEach):553 readdir /var/adm/mount 
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaHandler.cc(createAttachPoint):371 Created default attach point /var/adm/mount/AP_0xR2QJAT
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] ProductFileReader.cc(parse):219 +++/etc/products.d/baseproduct[g___]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] Reader.cc(Reader):113 Start Parsing /etc/products.d/baseproduct[g___]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] Reader.cc(~Reader):137 Done Parsing /etc/products.d/baseproduct[_eF_]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] ProductFileReader.cc(parse):245 ---0 - /etc/products.d/baseproduct[_eF_]
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] ProxyInfoLibproxy.cc(getProxyFactory):66 Build Libproxy Factory from /etc/sysconfig/proxy
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaCurl.cc(setupEasy):735 Proxy: not explicitly set
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaCurl.cc(setupEasy):736 Proxy: libcurl may look into the environment
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaCurl.cc(setupEasy):759 No cookies requested
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] MediaHandler.cc(attach):674 Attached: http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions attached; localRoot "/var/adm/mount/AP_0xR2QJAT"
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaManager.cc(checkDesired):109 checkDesired(1): desired (report by zypp::media::NoVerifier)
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaManager.cc(checkDesired):112 checkDesired(1): desired (cached)
2016-11-07 11:56:29 <1> M5A97(3387) [zypp] PathInfo.cc(assert_dir):354 mkdir /var/adm/mount/AP_0xR2QJAT/repo 00755
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1319 dest: /var/adm/mount/AP_0xR2QJAT/repo/repoindex.xml
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1320 temp: /var/adm/mount/AP_0xR2QJAT/repo/repoindex.xml.new.zypp.uodSW2
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaCurl.cc(doGetFileCopyFile):1391 ./repo/repoindex.xml
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaCurl.cc(doGetFileCopyFile):1401 URL: http://software.opensuse.org/download.html/repo/repoindex.xml?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions
2016-11-07 11:56:29 <1> M5A97(3387) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/404/en
2016-11-07 11:56:30 <1> M5A97(3387) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/
2016-11-07 11:56:30 <1> M5A97(3387) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/421/en
2016-11-07 11:56:30 <1> M5A97(3387) [zypp++] MediaMultiCurl.cc(progressCallback):1272 looks_like_metalink_fd: 0
2016-11-07 11:56:30 <1> M5A97(3387) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1360 HTTP response: 200

I’ve been a good boy since I started using Leap and I’ve only got 5 or so 3rd party repos. Everything has been fine till I tried this one.

Anyone know how can I rebuild the rpmdb and get zypper working again?

TIA.

T

rpm --rebuilddb

rebuilds the rpm database

zypper clean

cleans out the downloaded data from the repos.

In addition to what Knurpht posted, it’s possible to speculate the “nbsp” is a simple typo by someone…
“&nbsp” is a common html “non-break space” character, so for instance if you wanted to write a URL that includes spaces but not enclose the entire string with quotes, “&nbsp” can be inserted to represent the space.

In your case, if you inserted the missing “&” in the problem repoindex.xml, the repo probably would work again… assuming the URL is still valid.

TSU

Wow, I saw a genious posting :D.

is an HTML (XML) thing. NOT in an URL.

For URL, you have the %20 construct (for a “space”. not a “non breaking space”, but who wants a "non breaking space " in an URL?)

Quoting an URL will not help, it is not the shell.

Tks a lot Knurpt but it didn’t work: (I rebooted and did it again to be sure)

M5A97:/home/tiberiust # rpm --rebuilddb
M5A97:/home/tiberiust # zypper clean
All repositories have been cleaned up.
M5A97:/home/tiberiust # zypper install gimp
Refreshing service 'Rubygem'.
Unexpected exception.
Parse error: repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
History:
 - repoindex.xml[123] Entity 'nbsp' not defined
 - repoindex.xml[123] Entity 'nbsp' not defined


Please file a bug report about this.
See http://en.opensuse.org/Zypper/Troubleshooting for instructions.

I started a fresh zypper log but it’s too big to insert in code tags. Here’s the relevant part

2016-11-09 06:39:37 <1> M5A97(2827) [zypper] repos.cc(do_init_repos):655 Refreshing autorefresh services.2016-11-09 06:39:37 <1> M5A97(2827) [zypper] repos.cc(refresh_service):2609 going to refresh service 'service'
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] RepoManager.cc(refreshService):2026 Going to refresh service 'service', url: http://software.opensuse.org/download.html?project=devel%3Alanguages%3Aruby%3Aextensions&package=rubygem-cairo, opts: 0000000000
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] ProductFileReader.cc(parse):219 +++/etc/products.d/baseproduct[g___]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(Reader):113 Start Parsing /etc/products.d/baseproduct[g___]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(~Reader):137 Done Parsing /etc/products.d/baseproduct[_eF_]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] ProductFileReader.cc(parse):245 ---0 - /etc/products.d/baseproduct[_eF_]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] RepoManager.cc(refreshService):2072 ServicesTargetDistro: 
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaAccess.cc(open):117 Trying scheme 'http'
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaCurl.cc(MediaCurl):466 MediaCurl::MediaCurl(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions, )
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaMultiCurl.cc(MediaMultiCurl):1158 MediaMultiCurl::MediaMultiCurl(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions, )
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaAccess.cc(open):197 Opened: http(http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions not attached; localRoot "")
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaManager.cc(open):277 Opened new media access using id 1 to http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaManager.cc(attach):413 attach(id=1)
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaHandler.cc(createAttachPoint):398 Look for orphaned attach points in /var/adm/mount{d 0755 0/0}
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] PathInfo.cc(dirForEach):553 readdir /var/adm/mount 
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaHandler.cc(createAttachPoint):371 Created default attach point /var/adm/mount/AP_0xWIdpX1
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] ProductFileReader.cc(parse):219 +++/etc/products.d/baseproduct[g___]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(Reader):113 Start Parsing /etc/products.d/baseproduct[g___]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(~Reader):137 Done Parsing /etc/products.d/baseproduct[_eF_]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] ProductFileReader.cc(parse):245 ---0 - /etc/products.d/baseproduct[_eF_]
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] ProxyInfoLibproxy.cc(getProxyFactory):66 Build Libproxy Factory from /etc/sysconfig/proxy
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(setupEasy):735 Proxy: not explicitly set
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(setupEasy):736 Proxy: libcurl may look into the environment
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaCurl.cc(setupEasy):759 No cookies requested
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] MediaHandler.cc(attach):674 Attached: http://software.opensuse.org/download.html?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions attached; localRoot "/var/adm/mount/AP_0xWIdpX1"
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaManager.cc(checkDesired):109 checkDesired(1): desired (report by zypp::media::NoVerifier)
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaManager.cc(checkDesired):112 checkDesired(1): desired (cached)
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] PathInfo.cc(assert_dir):354 mkdir /var/adm/mount/AP_0xWIdpX1/repo 00755
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1319 dest: /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1320 temp: /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml.new.zypp.zemRLv
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(doGetFileCopyFile):1391 ./repo/repoindex.xml
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(doGetFileCopyFile):1401 URL: http://software.opensuse.org/download.html/repo/repoindex.xml?cookies=0&package=rubygem-cairo&project=devel:languages:ruby:extensions
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/404/en
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaCurl.cc(log_redirects_curl):135 redirecting to Location: http://software.opensuse.org/421/en
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(progressCallback):1272 looks_like_metalink_fd: 0
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1360 HTTP response: 200
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(looks_like_metalink):1234 looks_like_metalink(/var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml.new.zypp.zemRLv): 0
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] PathInfo.cc(rename):673 rename /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml.new.zypp.zemRLv -> /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaMultiCurl.cc(doGetFileCopy):1476 done: /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml{- 0644 0/0 size 21129}
2016-11-09 06:39:37 <1> M5A97(2827) [zypp++] MediaHandler.cc(provideFile):998 provideFile(./repo/repoindex.xml)
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(Reader):113 Start Parsing /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml[g___]
2016-11-09 06:39:37 <1> M5A97(2827) [parser] RepoindexFileReader.cc(Impl):143 Reading /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml
2016-11-09 06:39:37 <2> M5A97(2827) [zypp] Reader.cc(structuredErrorFunc):61 repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <2> M5A97(2827) [zypp] Reader.cc(structuredErrorFunc):61 repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <2> M5A97(2827) [zypp] Reader.cc(structuredErrorFunc):61 repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 Reader.cc(nextNode):170 THROW:    Parse error: repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 History:
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137  - repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137  - repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 
2016-11-09 06:39:37 <1> M5A97(2827) [zypp] Reader.cc(~Reader):137 Done Parsing /var/adm/mount/AP_0xWIdpX1/repo/repoindex.xml[g___]
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 Zypper.cc(safeDoCommand):1216 CAUGHT:   Parse error: repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 History:
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137  - repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137  - repoindex.xml[123] Entity 'nbsp' not defined
2016-11-09 06:39:37 <5> M5A97(2827) [zypp] Exception.cc(log):137 
2016-11-09 06:39:37 <2> M5A97(2827) [zypper] Zypper.h(setExitCode):232 setExitCode 1

So it seems zypper is still trying to get rubygem-cairo?! But where is it getting the instruction to do that from?!

Here’s link to the entire zypper log: https://cloud.hoppyspadge.com/index.php/s/vNuGUpJYJTUDfDF

The repo is no longer installed

M5A97:/etc/zypp/repos.d # zypper repos
#  | Alias                               | Name                                    | Enabled | GPG Check | Refresh
---+-------------------------------------+-----------------------------------------+---------+-----------+--------
 1 | download.nvidia.com-leap            | nVidia Graphics Drivers                 | Yes     | (r ) Yes  | Yes    
 2 | download.opensuse.org-non-oss       | Main Repository (NON-OSS)               | Yes     | (r ) Yes  | Yes    
 3 | download.opensuse.org-non-oss_1     | Update Repository (Non-Oss)             | Yes     | (r ) Yes  | Yes    
 4 | download.opensuse.org-oss           | Main Repository (OSS)                   | Yes     | (r ) Yes  | Yes    
 5 | download.opensuse.org-oss_1         | Main Update Repository                  | Yes     | (r ) Yes  | Yes    
 6 | ftp.gwdg.de-suse                    | Packman Repository                      | Yes     | (r ) Yes  | Yes    
 7 | google-chrome                       | google-chrome                           | Yes     | (r ) Yes  | Yes    
 8 | http-download.opensuse.org-3150b200 | home:Sauerland                          | Yes     | (r ) Yes  | Yes    
 9 | http-download.opensuse.org-5570ba9b | home:Sauerland                          | Yes     | (r ) Yes  | Yes    
10 | http-download.opensuse.org-9f26ce66 | home:DarkSS                             | Yes     | (r ) Yes  | Yes    
11 | http-download.opensuse.org-c41ccf5b | home:alteratio:Themes                   | Yes     | (r ) Yes  | Yes    
12 | http-download.opensuse.org-c77cfe79 | home:j_koreth:jetbrainsoftware          | Yes     | (r ) Yes  | Yes    
13 | http-download.opensuse.org-dce7f99a | graphics                                | Yes     | (r ) Yes  | Yes    
14 | http-download.opensuse.org-e8771276 | X11:RemoteDesktop:x2go                  | Yes     | (r ) Yes  | Yes    
15 | http-download.opensuse.org-f89bda81 | home:darkhado:openSUSE                  | No      | ----      | Yes    
16 | http-download.opensuse.org-fa624efb | home:darkhado:openSUSE                  | No      | ----      | Yes    
17 | openSUSE-42.1-0                     | openSUSE-42.1-0                         | No      | ----      | No     
18 | repo-debug                          | openSUSE-Leap-42.1-Debug                | No      | ----      | Yes    
19 | repo-debug-non-oss                  | openSUSE-Leap-42.1-Debug-Non-Oss        | No      | ----      | Yes    
20 | repo-debug-update                   | openSUSE-Leap-42.1-Update-Debug         | No      | ----      | Yes    
21 | repo-debug-update-non-oss           | openSUSE-Leap-42.1-Update-Debug-Non-Oss | No      | ----      | Yes    
22 | repo-source                         | openSUSE-Leap-42.1-Source               | No      | ----      | Yes    
23 | repo-update                         | openSUSE-Leap-42.1-Update               | Yes     | (r ) Yes  | Yes    


Tsu2’s advice to edit the repoindex.xml is valid ofc, but it seems that this file is not on my system and is being downloaded to a temp location each time.

There’s a distribution upgrade coming next week - I guess my zypper/repos need to be sorted out https://forums.opensuse.org/images/icons/icon9.png

Tks in advance if you can help further

T

You could try to blacklist the package in Yast Software manager - search for it, it will show if it’s in the installed rpm database or in one of the enabled repos, then right-click on it and chose the appropriate option - remove, Taboo-Never install, etc.

Just guessing, thou.

Can you post:

zypper lr -d

To show the URL of your Repos?

@Sauerland
Tks…here it is:

M5A97:/var/cache/zypp # zypper lr -d#  | Alias                               | Name                                    | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                                                            | Service
---+-------------------------------------+-----------------------------------------+---------+-----------+---------+----------+--------+------------------------------------------------------------------------------------------------+--------
 1 | download.nvidia.com-leap            | nVidia Graphics Drivers                 | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.nvidia.com/opensuse/leap/42.1                                                  |        
 2 | download.opensuse.org-non-oss       | Main Repository (NON-OSS)               | Yes     | (r ) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/distribution/leap/42.1/repo/non-oss/                              |        
 3 | download.opensuse.org-non-oss_1     | Update Repository (Non-Oss)             | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/42.1/non-oss/                                         |        
 4 | download.opensuse.org-oss           | Main Repository (OSS)                   | Yes     | (r ) Yes  | Yes     |   99     | yast2  | http://download.opensuse.org/distribution/leap/42.1/repo/oss/                                  |        
 5 | download.opensuse.org-oss_1         | Main Update Repository                  | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/42.1/oss                                              |        
 6 | ftp.gwdg.de-suse                    | Packman Repository                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://ftp.gwdg.de/pub/linux/packman/suse/openSUSE_Leap_42.1/                                  |        
 7 | google-chrome                       | google-chrome                           | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://dl.google.com/linux/chrome/rpm/stable/x86_64                                            |        
 8 | http-download.opensuse.org-3150b200 | home:Sauerland                          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/Sauerland/openSUSE_Leap_42.1/                  |        
 9 | http-download.opensuse.org-5570ba9b | home:Sauerland                          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/Sauerland/openSUSE_Leap_42.1/                  |        
10 | http-download.opensuse.org-9f26ce66 | home:DarkSS                             | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/DarkSS/openSUSE_Leap_42.1/                     |        
11 | http-download.opensuse.org-c41ccf5b | home:alteratio:Themes                   | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/alteratio:/Themes/openSUSE_Leap_42.1/          |        
12 | http-download.opensuse.org-c77cfe79 | home:j_koreth:jetbrainsoftware          | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/j_koreth:/jetbrainsoftware/openSUSE_Leap_42.1/ |        
13 | http-download.opensuse.org-dce7f99a | graphics                                | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/graphics/openSUSE_Leap_42.1/                         |        
14 | http-download.opensuse.org-e8771276 | X11:RemoteDesktop:x2go                  | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/X11:/RemoteDesktop:/x2go/openSUSE_Leap_42.1/         |        
15 | http-download.opensuse.org-f89bda81 | home:darkhado:openSUSE                  | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/darkhado:/openSUSE/openSUSE_Leap_42.1/         |        
16 | http-download.opensuse.org-fa624efb | home:darkhado:openSUSE                  | No      | ----      | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/home:/darkhado:/openSUSE/openSUSE_Leap_42.1/         |        
17 | openSUSE-42.1-0                     | openSUSE-42.1-0                         | No      | ----      | No      |   99     | yast2  | hd:///?device=/dev/disk/by-id/usb-Easy_Disk_AA63583000007532-0:0-part2                         |        
18 | repo-debug                          | openSUSE-Leap-42.1-Debug                | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/42.1/repo/oss/                            |        
19 | repo-debug-non-oss                  | openSUSE-Leap-42.1-Debug-Non-Oss        | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/42.1/repo/non-oss/                        |        
20 | repo-debug-update                   | openSUSE-Leap-42.1-Update-Debug         | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/debug/update/leap/42.1/oss                                        |        
21 | repo-debug-update-non-oss           | openSUSE-Leap-42.1-Update-Debug-Non-Oss | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/debug/update/leap/42.1/non-oss/                                   |        
22 | repo-source                         | openSUSE-Leap-42.1-Source               | No      | ----      | Yes     |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/42.1/repo/oss/                           |        
23 | repo-update                         | openSUSE-Leap-42.1-Update               | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/42.1/oss/                                             |        


I have also deleted /var/cache/zypp/*

TIA
T

Try

zypper al rubygem-cairo && zypper ref

Tks!

in Yast, a search for rubygem-cairo gives “No Results”.

Unfo, I then got a bit frustrated with this problem and searched in Yast for rubygem which gave 4 installed results:
ruby2.1-rubygem-fast_gettext
ruby2.1-rubygem-gem2rpm
ruby2.1-rubygem-gem2rpm
ruby2.1-rubygem-ruby-dbus

so…I started deleting them forcefully. As this process was going on it occurred me looking at the mass of deletions rolling up the screen that Yast itself was probably written in Ruby. When this deletion process finished Yast would not start. Thanks to

snapper undochange x...x

I was able to rollback :wink:

There’s bit more information about my problem when I start Yast. As Yast is going thru > Load the Configured Repositories the first thing it tries to do is:

Downloading: http://software.opensuse.org/.../repoindex.xml?cookies=0package=rubygem-cairoproject=devel:languages:ruby:extensions

then a dialogue box comes up with this Warning

An error occurred during repository initialization.
Error refreshing service Rubygem (http://software.opensuse.org/download.html?project=devel%3Alanguages%3Aruby%3Aextensions&package=rubygem-cairo):

Parse error: repoindex.xml[277] Opening and ending tag mismatch: h3 line 277 and h4
History:
- repoindex.xml[123] Entity 'nbsp' not defined

- repoindex.xml[123] Entity 'nbsp' not defined

Any idea where Yast is getting that from?

Tks/T

Also have a look at the files in the folder /etc/products.d , it looks like the trouble with the rubygem starts after that’s being read.

zypper does not try to install the package rubygem-cairo, but it tries to refresh the service “Rubygem” with the URL “http://software.opensuse.org/download.html?project=devel%3Alanguages%3Aruby%3Aextensions&package=rubygem-cairo” (and that URL is a link to the package download page, not a repo/service, that’s why it fails as it “downloads” the HTML code from that page instead of valid repo metadata).

It should be listed in “zypper ls”, and you should be able to remove it with “zypper rs xxx”.

The “offending” file will rather be in /etc/zypp/services.d/ I suppose… :wink:

More: please show output of

zypper pd

and

zypper ls

yayhttps://forums.opensuse.org/images/icons/icon7.png

M5A97:/etc/products.d # zypper ls
#  | Alias                               | Name                                    | Enabled | GPG Check | Refresh | Type  
---+-------------------------------------+-----------------------------------------+---------+-----------+---------+-------
1  | service                             | Rubygem                                 | Yes     | ----      | Yes     | ris   
2  | download.nvidia.com-leap            | nVidia Graphics Drivers                 | Yes     | (r ) Yes  | Yes     | rpm-md
3  | download.opensuse.org-non-oss       | Main Repository (NON-OSS)               | Yes     | (r ) Yes  | Yes     | yast2 
4  | download.opensuse.org-non-oss_1     | Update Repository (Non-Oss)             | Yes     | (r ) Yes  | Yes     | rpm-md
5  | download.opensuse.org-oss           | Main Repository (OSS)                   | Yes     | (r ) Yes  | Yes     | yast2 
6  | download.opensuse.org-oss_1         | Main Update Repository                  | Yes     | (r ) Yes  | Yes     | rpm-md
7  | ftp.gwdg.de-suse                    | Packman Repository                      | Yes     | (r ) Yes  | Yes     | rpm-md
8  | google-chrome                       | google-chrome                           | Yes     | (r ) Yes  | Yes     | rpm-md
9  | http-download.opensuse.org-3150b200 | home:Sauerland                          | Yes     | (r ) Yes  | Yes     | rpm-md
10 | http-download.opensuse.org-5570ba9b | home:Sauerland                          | Yes     | (r ) Yes  | Yes     | rpm-md
11 | http-download.opensuse.org-9f26ce66 | home:DarkSS                             | Yes     | (r ) Yes  | Yes     | rpm-md
12 | http-download.opensuse.org-c41ccf5b | home:alteratio:Themes                   | Yes     | (r ) Yes  | Yes     | rpm-md
13 | http-download.opensuse.org-c77cfe79 | home:j_koreth:jetbrainsoftware          | Yes     | (r ) Yes  | Yes     | rpm-md
14 | http-download.opensuse.org-dce7f99a | graphics                                | Yes     | (r ) Yes  | Yes     | rpm-md
15 | http-download.opensuse.org-e8771276 | X11:RemoteDesktop:x2go                  | Yes     | (r ) Yes  | Yes     | rpm-md
16 | http-download.opensuse.org-f89bda81 | home:darkhado:openSUSE                  | No      | ----      | Yes     | rpm-md
17 | http-download.opensuse.org-fa624efb | home:darkhado:openSUSE                  | No      | ----      | Yes     | rpm-md
18 | openSUSE-42.1-0                     | openSUSE-42.1-0                         | No      | ----      | No      | yast2 
19 | repo-debug                          | openSUSE-Leap-42.1-Debug                | No      | ----      | Yes     | NONE  
20 | repo-debug-non-oss                  | openSUSE-Leap-42.1-Debug-Non-Oss        | No      | ----      | Yes     | NONE  
21 | repo-debug-update                   | openSUSE-Leap-42.1-Update-Debug         | No      | ----      | Yes     | NONE  
22 | repo-debug-update-non-oss           | openSUSE-Leap-42.1-Update-Debug-Non-Oss | No      | ----      | Yes     | NONE  
23 | repo-source                         | openSUSE-Leap-42.1-Source               | No      | ----      | Yes     | NONE  
24 | repo-update                         | openSUSE-Leap-42.1-Update               | Yes     | (r ) Yes  | Yes     | rpm-md



M5A97:/etc/products.d # zypper rs Rubygem
Service 'Rubygem' not found by alias, number or URI.
M5A97:/etc/products.d # zypper rs service
Removing service 'Rubygem':
Service 'Rubygem' has been removed.



M5A97:/etc/products.d # zypper install gimp
Retrieving repository 'Packman Repository' metadata ........................................................................................................................................................[done]
Building repository 'Packman Repository' cache .............................................................................................................................................................[done]
Loading repository data...
Reading installed packages...
'gimp' is already installed.
There is an update candidate for 'gimp', but it is from a different vendor. Use 'zypper install gimp-2.9.5-57.2.x86_64' to install this candidate.
Resolving package dependencies...


Nothing to do.



Not that I want to update Gimp - I was just using it as an example.

So, solved. Thanks very much to everyone for your help. I am starting to get my head around zypper and Suse’s repo system - really rather powerful and useful when you know what’s going on. And in this process I have learnt what an easy lifesaver snapper can be - simply rolling back the root filesystem after some misinformed amateur hackery is a very handy thing to have.

Cheers…now back to work
T