I’ve been trying to find an elegant way of adding some repos with zypper like so:
zypper ar -r http://r.opensu.se/packman.repo
which is supposed to forward to a base-url while substituting the correct version (13.1) automatically and add the repository according to the info in a .repo file.
However, the .repo file couldn’t be found, so I looked around a bit, and it seems like .repo files have not been included in the community repos since 12.3.
Now my question is: Am I just too dumb to find the file?
Or, if not, why would they not be utilized anymore, as they are so useful?
And is there an alternative way of adding community repos on the command line without the need to specify everything by hand?
Some clarification would be much appreciated!
Hi
The site maintainer (Pascal Bleser) has pretty much dropped most things he did… best to use the normal mirrors;
http://mirrors.opensuse.org/
http://packman.links2linux.org/mirrors
You could try to use zypper’s $releasever variable instead, this is substituted by the openSUSE version automatically. Something like:
zypper ar http://packman.inode.at/suse/$releasever Packman
See “man zypper”:
For all repositories which have the distribution version within
their URL (like
http://download.opensuse.org/distribution/13.1/repo/oss) using the
$releasever variable instead may be helpful
(http://download.opensuse.org/distribution/$releasever/repo/oss).
The variable is per default substituted by the current
distributions version (13.1) This value can be overwritten using
the --releasever global option. Calling zypper --releasever 13.2...
will cause these repos to use the new location
(http://download.opensuse.org/distribution/13.2/repo/oss) without
need to add/remove anything. Once the dup is performed, $releasever
will default to the new distribution version. See section
Repository Management for more info about variable substitution.
Hey, thank you both!
But I think your answers mainly pertain to the redirect, which actually is working just fine.
If I enter http://r.opensu.se/packman in a browser, I get redirected to a mirror near me.
But the repositories do not hold any .repo files, which is my main problem.
This is also the case if I access them using the normal mirrors.
Maybe I should rephrase the question:
Is it possible to add community repositories with zypper using the -r option, i.e. utilizing a .repo file that contains the relevant information?
The .repo files seem to have been present in some repositories of older distro versions, e.g. 11.4.
Yes, it is. But the Packman repo doesn’t offer the .repo files any more.
You could take an old one (or the one from Tumbleweed/Factory), and modify it accordingly (they are standard text files).
Or just add Packman in YaST->Software Repositories. It is in the “Community Repositories” list you get when clicking on “Add” and selecting “Community Repositories”.
I see,
so the .repo files are not the canonical way of adding repos, but rather an optional feature.
Personally, I think this is a pity, because it would constitute a kind of “1-click install” for repos, even on the command line with zypper.
My question was actually motivated by trying to add some repos via script at the end of an autoyast installation. That’s why I insisted on zypper rather than Yast.
And I had hoped for an elegant way of doing that without having to specify everything myself.
I think my best option is to export all repos on a fully configured system via
zypper lr --export repos.repo
and put this .repo on a server together with the autoyast profiles.