I got a bit lost in the woods of implicit URLs between various places.
All I wanted is to install software.opensuse.org: Install package server:monitoring / lnav preferably from the link http://software.opensuse.org/ymp/server:monitoring/openSUSE_Tumbleweed/lnav.ymp
It’s the OpenSuSE package for The Log File Navigator which I found based on the recommendation “The Log File Navigator – Joe C. Hecht – Google+“.
The package was in a non-standard repository “server:monitoring”, but shortening the package link doesn’t get you there:
- https://software.opensuse.org/download.html?project=server:monitoring&package=lnav
- https://software.opensuse.org/download.html?project=server:monitoring
These do however (thanks tacit):
- https://build.opensuse.org/project/show/server:monitoring/
- http://download.opensuse.org/repositories/server:/monitoring/openSUSE_Tumbleweed/
From both, it’s just a couple of clicks away to the lnav packages:
- https://build.opensuse.org/package/show/server:monitoring/lnav
- http://download.opensuse.org/repositories/server:/monitoring/openSUSE_Tumbleweed/x86_64/lnav-0.8.0-1.17.x86_64.rpm
Zypper doesn’t allow you to install one-click install ymp links like http://software.opensuse.org/ymp/server:monitoring/openSUSE_Tumbleweed/lnav.ymp
But OCICLI (one-click install CLI) does. And yes, unlike most console commands IT’S IN UPPERCASE. You can use it like this (note the warning):
OCICLI http://software.opensuse.org/ymp/server:monitoring/openSUSE_Tumbleweed/lnav.ymp
OCICLI is fully compatible with zypper as OCICLI uses YaST and libzypp as underlying technology and zypper uses libzypp.
The yml files are metadata offering to add one or more repositories and install one or more packets or patterns. OCICLI automates that process.
Another option is to manually add the repository using zypper, then install lnav from zypper. There is no URL to this (again; are these the virtues of Web 2.0?) you have to click a few times:
- Go to https://software.opensuse.org/download.html?project=server:monitoring&package=lnav
- Click on
openSUSE
- Click on
Add repository and install manually
- Under
openSUSE Tumbleweed
, look for this code
zypper addrepo http://download.opensuse.org/repositories/server:monitoring/openSUSE_Tumbleweed/server:monitoring.repo
zypper refresh
zypper install lnav
Installing using OCICLI
As currently there is a bug in OCICLI, it will show a warning: Warning: unable to close filehandle properly: Bad file descriptor, <STDIN> line 7 during global destruction (#1)
which I reported:
OCICLI success: reject the first expired GnuPG key, import the second (non-expired) one, then the console looks like this:
After that, the repositories list changed from:
to:
Then you can reject the GnuPG key of "openSUSE:Tumbleweed"
each time it is asked for (unlike OCICLI
, zypper
does show the expiration date):
This isn’t the end of the story though: the expired key was a symptom of some old cruft.
Cleaning up the repos
It appeared that http://download.opensuse.org/repositories/openSUSE:/Tumbleweed/standard/ was an old repository not maintained any more so it had an expired key. After addressing the expired key on IRC channel #opensuse-buildservice (thanks malcolmlewis at TUMBLEWEED Key expired of http://download.opensuse.org/repositories/openSUSE:/Tumbleweed/standard/ – what now?) I got help from adrianS and DimStar.
The failing repository URL got redirected to http://download.opensuse.org/tumbleweed/repo/oss/suse/ which means it’s now part of download.opensuse.org-oss.
Unlike the old repo URL, new one didn’t (doesn’t?) have RPM metadata yet so there was no repodata directory yet with files like repomd.xml, repomd.xml.asc, repomd.xml.key which will be fixed in the future.
This means it’s time to disable the offending repository and (whey zypper dup
succeeds) delete it:
# zypper modifyrepo --disable http-download.opensuse.org-75e8f13a Repository 'http-download.opensuse.org-75e8f13a' has been successfully disabled. # zypper dist-upgrade --no-allow-vendor-change Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command. Loading repository data... Reading installed packages... Computing distribution upgrade...
Since that works, we can remove the repository:
# zypper removerepo http-download.opensuse.org-75e8f13a Removing repository 'openSUSE:Tumbleweed' ................................................................................................................................................................................................................................[done] Repository 'openSUSE:Tumbleweed' has been removed.
–jeroen
via: Show openSUSE:Factory / monit – openSUSE Build Service
Filed under: *nix, Linux, openSuSE, Power User, SuSE Linux, Tumbleweed