Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature request] Support for "pointer files" for corresponding repo when 'zypper dup' -ing (Leap) #515

Open
SpaLox1 opened this issue Nov 11, 2023 · 1 comment

Comments

@SpaLox1
Copy link

SpaLox1 commented Nov 11, 2023

When doing a major upgrade since Leap 15.3, I always have to adapt the address of the SLE Backports repo manually

At the moment it is:
https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP5/standard/

it seems (according to the instructions in the wiki) that the %releasever% variable doesn't support adapting the "SLE-15-SPx"-part to the next major release level...?

I wonder if this manual adaption by the user can be avoided by putting some "pointer text file" into the repo directory, telling zypper where the corresponding repo of the next major release can be found.

Example for the SLE-15-SP5 backports repo:

15.6.upgradereppointer.repo
currentbaseurl=https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP5/standard/
dupbaseurl=https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP6/standard/

When calling zypper dup, zypper will look if it can find a *upgradepointer.repo file in the repo and it will take the provided %dupbaseurl% repo address for upgrading and replacing %currentbaseurl% in the repo list.

@mlandres
Copy link
Member

I don't know which wiki you refer to, but man zypper describes the builtin repo variables:

       $arch
           Use this variable to refer to the system’s CPU architecture.

       $basearch
           Use this variable to refer to the base architecture of the system. For example, iX86 machines have a base
           architecture of i386, while AMD64 and Intel64 have x86_64.

       $releasever, $releasever_major, $releasever_minor
           Use this variable to refer to the version of your openSUSE or SUSE Linux. The value is obtained from the
           /product/version XML-node in /etc/products.d/baseproduct.

So https://download.opensuse.org/repositories/openSUSE:/Backports:/SLE-15-SP${releasever_minor}/standard/ should work, or SLE-${releasever_major}-SP${releasever_minor}.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants