$ cat /etc/os-release
NAME="openSUSE Leap"
VERSION="15.3"
ID="opensuse-leap"
ID_LIKE="suse opensuse"
VERSION_ID="15.3"
PRETTY_NAME="openSUSE Leap 15.3"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:15.3"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
$ sudo zypper ref -b
$ sudo zypper up -y
$ sudo zypper repos --uri
Show enabled only
$ sudo zypper --releasever=15.4 lr -uE
Note Check the repo file contain the
$releasever
variable.$ sudo cat /etc/zypp/repos.d/repo-oss.repo [repo-oss] name=Main Repository enabled=1 autorefresh=1 baseurl=http://download.opensuse.org/distribution/leap/$releasever/repo/oss/ type=rpm-md
[sudo] password for root:
Warning: Enforced setting: $releasever=15.4
Repository priorities are without effect. All enabled repositories share the same priority.
# | Alias | Name | Enabled | GPG Check | Refresh | URI
---+-----------------------+--------------------------------------------------------------+---------+-----------+---------+------------------------------------------------------------------
3 | repo-backports-update | Update repository of openSUSE Backports | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/backports/
8 | repo-non-oss | Non-OSS Repository | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/15.4/repo/non-oss/
9 | repo-oss | Main Repository | Yes | (r ) Yes | Yes | http://download.opensuse.org/distribution/leap/15.4/repo/oss/
11 | repo-sle-update | Update repository with updates from SUSE Linux Enterprise 15 | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/sle/
13 | repo-update | Main Update Repository | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/oss/
14 | repo-update-non-oss | Update Repository (Non-Oss) | Yes | (r ) Yes | Yes | http://download.opensuse.org/update/leap/15.4/non-oss/
$ sudo zypper --releasever=15.4 ref
$ sudo zypper --releasever=15.4 dup -y
$ cat /etc/os-release
NAME="openSUSE Leap"
VERSION="15.4 Alpha"
ID="opensuse-leap"
ID_LIKE="suse opensuse"
VERSION_ID="15.4"
PRETTY_NAME="openSUSE Leap 15.4 Alpha"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:15.4"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"
If you get errors from the above command, the upstream repo has a different name than what you defined in our .repo
file.
Visit the OBS repository to find the correct name and add it to the .repo
file.
Replace old release string with release variable
$ sudo sed -i 's/15.4/\$releasever/g' /etc/zypp/repos.d/*
@oleksis Thanks for the update. π
Sorry to bother you again, but I think there is still some aspect missing. π For example, some people could still have a "15.3" string in the base URL. Even if you use the
--releasever
option this won't have any effect on these URLs.I'd suggest to add an additional section:
It could be added before section "Refresh all repositories to 15.4". The reason for this is, this approach isn't completely fool-proof, unfortunately. π’ I run myself into some issues before.
If the upstream repo can be found or not depends highly on how the upstream repo maintainer has defined its name. For example, if a repo has in the base URL something like
openSUSE_Leap_15.3
and you replace "15.3" with$releasever
there is no guarantee that the nameopenSUSE_Leap_15.4
exists. The repo maintainers could name it15.4
. Some repos did that. OBS doesn't provide stable and consistent names, it's pure convention.Therefor it would be helpful to give the reader in section "Refresh all repositories to 15.4" a hint. Maybe something like this: