How should I update Leap 15.4-1

Hey I took someones advice after asking about tumbleweed and installed leap instead. Great system so I want to ask. If I update stuff should I be using zypper dup like I was on tumbleweed or some other method. How should I update my system?

Best would be to use:

zypper up

to update Leap.

2 Likes

@errigour:

Please be aware that, Leap differentiates between “Update” and “Patch” –

  • Patch” attempts to reduce the amount of network bandwidth used to introduce the needed changes into the system.
  • Update” will also apply the patches but, it tends to download the complete updated packages rather than, only the patches made to the repaired packages and, in doing so, uses more network bandwidth.

Please be aware that, KDE supports the FOSS Energy Efficiency Project and the Blue Angel for FOSS programs – <https://eco.kde.org/>.

Should I ever zypper dup? and How do I know when to if so?

I suggested “update” rather than “patch”, because there are no patches for the packman repo and perhaps other added repos.

Personally, I’ve been using

zypper patch --with-update

which is a patch and additional updates for repos that don’t use patch. But it will usually do the same updating as “zypper update”.

This seems wrong. Either “zypper patch” or “zypper update” will download the delta and reconstruct the package from the delta.

1 Like

Most of the time “zypper dup” and “zypper update” will do about the same thing. You can try with:

zypper dup -D

which will tell you what it would do but won’t actually do anything.

Tumbleweed is different as a rolling distribution, so the list of appropriate packages can change over time, and the “zypper dup” takes care of that. But Leap uses a standard list which normally doesn’t change for the life of that version. So the “dup” is not normally needed.

If, however, you mess up your system with packages from non-standard repos, then “zypper dup” (after fixing the repos) can usually restore to the correct packages.

1 Like

zypper dup will not change the Vendor by default, you have to add --allow-vendor-change or some other options.

1 Like

zypper -n update works fine. It may die if parent user processes terminate. Run it in the system slice by creating the following service:

3400G:~ # systemctl cat upd
# /etc/systemd/system/upd.service
[Unit] 
Description=Dist Update

[Service] 
ExecStart=/usr/bin/zypper --non-interactive update
3400G:~ # 

Running systemctl start upd will update your system.

My mistake – I should have read the man page more closely rather than applying the accepted software development usage of the term:

  • A change made to correct a functional misbehaviour – a delta change made to existing code – not a complete re-write …
  • An update on the other hand, may well include a complete re-write of existing code …

Be that as it may, on reading another explanation of the openSUSE usage of the term “patch” – <https://sudoedit.com/opensuse-patch-vs-update/>

While patches in openSUSE are similar to updates in that they will install updated packages. Patches are meant for specific bug fixes and security fixes for software that comes packaged by openSUSE and is maintained in the Main Updates repository. A single patch might include several package updates to mitigate a specific security vulnerability or bug fix.

And yes, it is confusing –

  • A Zypper patch is a collection of packages which need to be changed to address a specific vulnerability.
    A patch may be retracted – the affected packages will be tagged with a status indicating “patch retracted” – but, the individual package versions (which still contain the changes made) may be explicitly installed – with the resulting dependency issues …

So, “patch” or “update”?

  • An update executes “Update installed packages with newer versions, where possible.”
  • A patch executes “Install all available needed patches.”

I’ll remain with “patch” because:

  • The patches address specific vulnerabilities – for me, this is more important than, changes made to packages which are not triggered by any specific vulnerability.
    Which doesn’t mean to say that, I don’t install updates – I do install package updates but, only after any vulnerabilities addressed by patches have been repaired …
1 Like

FWIW, I’ve been using openSUSE since before it acquired its current name. I’ve never used zypper patch.

My understanding is that a patch will fix an issue in the currently installed version. Whereas an update will change the currently installed version to a higher version.

An update may introduce new functionality or change existing behaviour. A patch shouldn’t (except for the issue it is expected to fix).

There are three different ways to update software using Zypper:

  • by installing patches
  • by installing a new version of a package
  • by updating the entire distribution.

Updating software with Zypper

1 Like

thanks that helped alot i think I was also wondering how to upgrade to 15.5. i think if im reading right i do:

zypper dist-upgrade

Wait that can’t be cause it said nothing to do.

It is! And it better say nothing to do! 15.5 is still in Beta state. Unless you want to experiment or contribute to the testing. About the distribution upgrade check here:
https://en.opensuse.org/SDB:System_upgrade
And probably a man zypperwill help, as well.

Edit: BTW zypper dist-upgrade is the same as zypper dup. :slight_smile:

2 Likes

You would need:

zypper --releasever=15.5 dup --allow-vendor-change

However, as @kasi042 said, 15.5 is still at the beta testing level. It might be better to wait until it is officially released.

1 Like

alr thanks to everyone for all the help!

Basically yes: "2321" packages to upgrade . . . on reboot another "204" yet to go?? Why??? - #214 by karlmistelberger

There is some fine print: Update openSUSE 15.3 to 15.4 · GitHub

@EVERYONE:

Patch versus Update.drpm
<https://download.opensuse.org/update/leap/15.4/sle/x86_64/>
Search for “Mozilla” –
Note that, the latest Mozilla Firefox changes are available via 2 packages:

  • MozillaFirefox-102.10.0-150000.150.82.1_150200.152.84.1.x86_64.drpm → size 5.5 MB
  • MozillaFirefox-102.10.0-150200.152.84.1.x86_64.rpm → size 57.5 MB

Strange – the “zypper patch” I executed today, called the .drpm packages – not only for the Mozilla Firefox patch – for ALL of the patches I installed today …


What are Delta RPM packages – P.S.: a SUSE invention – actually, a SuSE invention because it ain’t new …
<https://unix.stackexchange.com/questions/368867/what-is-drpm-and-how-does-it-differ-from-rpm>
But, there’s a Fedora action being executed: <https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/NLH6LCDDLEPOP74UOLNQG4NIIVBM7CTU/>
Scroll down to the post from Dennis Gilmore –

The last updates just now on three different machines gave me
Delta RPMs reduced 284.9 MB of updates to 281.0 MB (1.4% saved)
Delta RPMs reduced 14.3 MB of updates to 3.3 MB (76.9% saved)
and the third had no Delta RPMs

And, the original Fedora mail list discussing the proposal to get rid of Delta RPM packages: <https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/JYKVELSBJQMEK6KEFXG354ZDZDDX4C5G/#RLEUYSWOUVUS53YAP7WQQNN7HNEBIC4E>


So yes, it seems that Fedora will stop using Delta RPM packages possibly quite soon but, it seems that, the openSUSE update repositories will continue to support “zypper patch” and Delta RPM packages at least for the next few days … :smiling_imp:

1 Like

The use of “zypper patch” is not directly related to the use of delta RPM packages. If you use “zypper update” you will still use those deltas. If you prefer to not use delta, there’s an entry in “/etc/zypp/zypp.conf” for that:

# download.use_deltarpm = true

(Change to “false” and remove the “#” to change behavior).

1 Like