"zypper update" vs "zypper dup"

Hi all!

I would like to ask you for some advice about the “Zypper Updater”.

When I do a “zypper update” I get:

zypper update
Loading repository data...
Reading installed packages...
Nothing to do.

but when I do a “zypper dup” I get:

zypper dup
Loading repository data...
Reading installed packages...
Computing distribution upgrade...

The following packages are going to be upgraded:
  gstreamer-0_10-schroedinger gstreamer-0_10-utils gstreamer-utils hplip hplip-hpijs 
ktoblzcheck libofx4 libschroedinger-1_0-0 libtheora0 sox tightvnc xsane 


The following NEW packages are going to be installed:
  blt gamin gstreamer-0_10-fluendo-mp3 inkscape-extensions-fig 
inkscape-extensions-skencil libcaca0 libktoblzcheck1 libltdl3 liboil-0_3-0 
libquicktime0 libsndfile1 python-imaging python-lcms python-tk sk1 sndfile tix transfig 


The following packages are going to be reinstalled:
  apparmor-profiles apparmor-utils compiz-manager desktop-data-openSUSE docbook_4 
glib2-branding-openSUSE glibc-i18ndata glibc-locale iso_ent liberation-fonts nscd 
openSUSE-build-key pciutils-ids pm-profiler polkit-default-privs 
sound-theme-freedesktop suseRegister update-alternatives xmlcharent yast2-apparmor 
yast2-backup yast2-branding-openSUSE yast2-firewall yast2-inetd yast2-installation 
yast2-iscsi-client yast2-registration yast2-registration-branding-openSUSE 
yast2-samba-server yast2-sudo yast2-theme-openSUSE 


The following packages are going to be REMOVED:
  fam gst-fluendo-mp3 libcaca liboil libquicktime libsndfile 


The following packages are going to change architecture:
  glibc-i18ndata glibc-locale nscd 


The following packages are going to change vendor:
  gstreamer-0_10-schroedinger gstreamer-0_10-utils gstreamer-utils hplip hplip-hpijs 
ktoblzcheck libofx4 libschroedinger-1_0-0 libtheora0 sox tightvnc xsane 


Overall download size: 43.9 M. After the operation, additional 44.0 M will be used.


Why is that?
I use the same Repos when I do a “zypper update” and the update is sometimes just a minor jump like:

tor-0.2.0.33-0.pm.1 >> tor-0.2.0.34-0.pm.1

I would understand if I added the OpenOffice Build Service Reop
and then the upgrade is done via “zypper dup”

And why some packages change the architecture when I use “zypper dup”?

And last bust no least:

Is it advisable to do “zypper dup”?
Will it affect the stability of my system?

Thank you very much for your answers,

Claus

The man page for zypper explains the difference:

update updates the system with packages where newer versions are available, as the name suggests.

dup actually means dist-upgrade. I don’t know enough about what repos you have configured to explain the changes it proposes, but obviously dup is willing to make far larger changes, including package splits and arch changes. So you should be wary of it.

I don’t think you need a dup if you just want a more recent OO. Just make that repo higher in priority than the OSS repo and that should work I think.

Hi ken_yap!

I don’t know enough about what repos you have configured to explain the changes it proposes, but obviously dup is willing to make far larger changes, including package splits and arch changes.

Here are the repos:

zypper lr
# | Alias                | Name                           | Enabled | Refresh
--+----------------------+--------------------------------+---------+--------
1 | Libdvdcss repository | Libdvdcss repository           | Yes     | Yes    
2 | Packman Repository   | Packman Repository             | Yes     | Yes    
3 | openSUSE 11.1-0      | openSUSE 11.1-0                | No      | No     
4 | repo                 | openSUSE BuildService - Spiele | Yes     | Yes    
5 | repo-debug           | openSUSE-11.1-Debug            | No      | No     
6 | repo-non-oss         | openSUSE-11.1-Non-Oss          | Yes     | Yes    
7 | repo-oss             | openSUSE-11.1-Oss              | Yes     | Yes    
8 | repo-source          | openSUSE-11.1-Source           | No      | No     
9 | repo-update          | openSUSE-11.1-Update           | Yes     | Yes    

I have not added anything else and all I want is keeping my system up to date!
As you see at my example with the tor package, imho the minor jump should be applied via “zypper update” and not “zypper dist-upgrade” !
This is what I am a little confused about!
Sorry, I am used to “yum” in Fedora and “zypper” is very new to me!

Claus

You’re probably safer sticking with

zypper up

for regular updates. In addition, you can do

zypper up -t patch

for patch updates, and

zypper up -t package

for package updates from all repos including communty repos if present and enabled.

1 Like

Does it mean you can use “zypper dup” to upgrade openSUSE 11.1 to 11.2 in the future? I mean it doesn’t really make sense to do a complete new install when a new release is rolled out. In this case I more like the “Gentoo” way just to rsync the metadata and do a world update. If I understand it right “zypper dup” is compareable. All I need to do is to change the repositories for example version 11.2 (in the future).

Is that correct?

I dunno if this helps or confuses it even more but

When I go into YaST > Software management and do an ‘all packages > update if newer version available’ I’ll maybe get ~50 updates (for example).

If I go ‘zypper up’ in the terminal, I’ll get maybe 3 updates, or sometimes none at all.

zypper dup does a whole lot more than 50, and I’m assuming it is ‘upgrading my distro’ back to the original opensuse 11.0 that I started with.

Why does Yast give me 50 and zypper none? I assume they’re using the same repos… Would this be the priorities on the repors? All mine are the same priority.

Yes, I believe this is the intention. I forget where I read it but openSUSE is to acquire live upgrade capability for 11.1 to 11.2. Whether dup is the verb that will be used, I am not sure. But remember that my beliefs are often fallible.

Timo1977 wrote:

>
> Does it mean you can use “zypper dup” to upgrade openSUSE 11.1 to 11.2
> in the future? I mean it doesn’t really make sense to do a complete new
> install when a new release is rolled out. In this case I more like the
> “Gentoo” way just to rsync the metadata and do a world update. If I
> understand it right “zypper dup” is compareable. All I need to do is to
> change the repositories for example version 11.2 (in the future).
>
> Is that correct?
>
>

That is the idea behind it yes, and all we can do is hope that zypper dup
does its job correctly when I tried to go from 11.0 to 11.2 I ended up with
a broken 11.0 install. If you have a test machine or can use a VM I would
test it on that first once 11.2 is out just to make sure, if you can do this
while 11.2 is in early stages so they can workout the bugs before the next
release is out :wink:

weighty foe wrote:

>
> I dunno if this helps or confuses it even more but
>
> When I go into YaST > Software management and do an ‘all packages >
> update if newer version available’ I’ll maybe get ~50 updates (for
> example).
>
> If I go ‘zypper up’ in the terminal, I’ll get maybe 3 updates, or
> sometimes none at all.
>
> zypper dup does a whole lot more than 50, and I’m assuming it is
> ‘upgrading my distro’ back to the original opensuse 11.0 that I started
> with.
>
> Why does Yast give me 50 and zypper none? I assume they’re using the
> same repos… Would this be the priorities on the repors? All mine are
> the same priority.
>
>

Yes all three use the same repos but handles updates differently YaST’s
“update all packages” and zypper up handles dependencies and tries to avoid
vendor changes for software, good thing incase SUSE releases a libxine that
is showning that it is newer than what packman has in the repo (that is just
an example). Depending on your version of SUSE will explain why YaST and
zypper up is showing different results in 11.0 zypper up only checked for
important updates and security patches to get zypper to show the same
results as YaST you need to run “zypper up -t package”. In 11.1 they have
changed this so that zypper up does the same as zypper up -t package.

As for zypper dup distro upgrade for the most part it does some checks to
avoid a broken system but in most cases it avoids all the dependency and
vendor change tests that YaST and zypper up does, so no matter what repo the
package comes, as long as it is one of the repos you have added to your
system, from if it is newer than what is installed then it will upgrade to
it. The best use of zypper dup is to go from one release to the next
because other wise zypper up -t package or YaST can do the same thing.

I did a zypper dup to go from 11.0 to 11.1 on my laptop (after changing my repos from 11.0 to 11.1 and upgrading zypper separately). It worked like a charm: no conflict to solve and a system working without any problem after.

When I wanted to upgrade the full distribution with the DVD before, most of the time there were so many conflicts that I ended reformating the system partition.

Applause for the zypper team !!!

In 11.1 they have
changed this so that zypper up does the same as zypper up -t package.

This is new info to me. Thanks for sharing this.

Yeah! I definitely love it too. I hope more and more development will be done for this nice tool.