I first installed TW about 10 days ago. It’s the weekend so I thought now would be the time to update to the current snapshot:
sudo zypper -vvv dup
The “update/upgrade” went through but it installed a whole bunch of software that wasn’t in my previous installation like:
libreoffice
akonadi and all the pim
all the international fonts that I made sure not to install on the first place.
and plenty more of “useless stuff (to me)”
How do I do a “proper upgrade” with the same packages that I have already installed?
Thanks
hui
June 17, 2022, 11:35pm
2
It’s most likely the “recommended” packages. Uncheck this in yast software and you can remove the packages you don’t want. Also have a look at the “pattern” packages.
elfroggio:
I first installed TW about 10 days ago. It’s the weekend so I thought now would be the time to update to the current snapshot:
sudo zypper -vvv dup
The “update/upgrade” went through but it installed a whole bunch of software that wasn’t in my previous installation like:
libreoffice
akonadi and all the pim
all the international fonts that I made sure not to install on the first place.
and plenty more of “useless stuff (to me)”
How do I do a “proper upgrade” with the same packages that I have already installed?
Thanks
First:
Due to the update of python38 in the 20220614 snapshot a full rebuild of Tumbleweed - now with new gcc hardening option -D_FORTIFY_SOURCE=3 enabled - was done. If your system is 10 days old you probably will receive an update for any installed package today.
Second:
You really might receive a bunch of (to you useless) stuff if you do not disable the installation of recommended packages explicitly. To avoid this you can use zypper dup --no-recommends or set solver.onlyRequires = true in /etc/zypp/zypp.conf . However doing so can occasionally trigger strange side effects.
Regards
susejunky
This is all it takes to prevent new recommends after installation has completed, but it’s needed at the outset, by selecting no-recommends from the installer menu before packages actually begin to be installed, and it needs to be configured before doing any dups from the installed system. Otherwise, it’s like a chain reaction, with one “recommend” you don’t need or want triggering others, that trigger others, that trigger others, and is a hopeless mess to try to undo. It’s easier to do a fresh installation than to purge unwanted recommends.
mrmazda:
This is all it takes to prevent new recommends after installation has completed, but it’s needed at the outset, by selecting no-recommends from the installer menu before packages actually begin to be installed, and it needs to be configured before doing any dups from the installed system. Otherwise, it’s like a chain reaction, with one “recommend” you don’t need or want triggering others, that trigger others, that trigger others, and is a hopeless mess to try to undo. It’s easier to do a fresh installation than to purge unwanted recommends.
Hi
Produce a list…
zypper packages --unneeded | awk -F'|' 'NR==0 || NR==1 || NR==2 || NR==3 || NR==4 {next} {print $3}'
What follows “ded |” to me is mostly mystery, but it looks like it does as asked.
It took a while to run on the first try, so I revised it a bit for the repeat:
# zypper --no-refresh packages --unneeded | awk -F'|' 'NR==0 || NR==1 || NR==2 || NR==3 || NR==4 {next} {print $3}' | wc -l
144
#
Among surprising results: systemd-coredump, systemd-logger, systemd-network & lots of yast2*. As this test subject, like most of mine, is running on systemd-networkd, systemd-network is among the most surprising. All of wicked units are masked, and NetworkManage* are not installed.
mrmazda:
As this test subject, like most of mine, is running on systemd-networkd, systemd-network is among the most surprising.
That you are using it now is irrelevant for package dependencies. On my VM systemd-networkd was installed during initial installation in 2019. Apparently at this time something required or recommended it. Now there is no package that requires/recommends systemd-networkd, systemd-networkd does not supplements anything and it is not installed explicitly so it is “unneeded” from the RPM dependencies point of view . If you want to tell zypper that this package is needed, force install it explicitly (there is no equivalent to "apt-mark’) or simply remove from /var/lib/zypp/AutoInstalled.
What is much more surprising - on this system I have 1373 packages marked as “installed by user request” and 1198 packages marked as “autoinstalled”. I am most confident that I did not request to install most of those packages (besides, over half of them are various run-tine libraries). There is some rather strange interaction with initial installation that seems to mark too much as “installed by user request”.
That’s package systemd-network, not systemd-networkd, of course.
Yes, that’s how all my systems were installed.
However one should be aware that this gives you a system that might need “some additional attention” after installation.
Regards
susejunky
Remove unneeded packages:
**erlangen:~ #** zypper packages --unneeded | grep ^i|cut -d '|' -f3|xargs zypper rm --clean-deps
Reading installed packages...
Resolving package dependencies...
The following 23 packages are going to be REMOVED:
haveged ibmtss-base libKWaylandServer5 libhavege2 libibmtss1 libnewt0_52 lifecycle-data-openSUSE opensuse-welcome-lang python38-configobj python38-cymruwhois python38-docopt python38-linux-procfs python38-mysqlclient python38-notify2
python38-ply python38-pycups python38-pyudev python38-rpm python38-slip python38-slip-dbus python38-termcolor system-user-tss zypper-lifecycle-plugin
23 packages to remove.
After the operation, 6.0 MiB will be freed.
**Continue? [y/n/v/...? shows all options] (y): **
( 1/23) Removing haveged-1.9.18-1.3.x86_64 .............................................................................................................................................................................................[done]
( 2/23) Removing ibmtss-base-1.6.0-3.5.noarch ..........................................................................................................................................................................................[done]
( 3/23) Removing libKWaylandServer5-5.24.5-1.3.x86_64 ..................................................................................................................................................................................[done]
( 4/23) Removing libibmtss1-1.6.0-3.5.x86_64 ...........................................................................................................................................................................................[done]
( 5/23) Removing libnewt0_52-0.52.21-2.13.x86_64 .......................................................................................................................................................................................[done]
( 6/23) Removing lifecycle-data-openSUSE-1-5.12.noarch .................................................................................................................................................................................[done]
( 7/23) Removing opensuse-welcome-lang-0.1.8+git.46.64e51ec-1.1.noarch .................................................................................................................................................................[done]
( 8/23) Removing python38-configobj-5.0.6-3.16.noarch ..................................................................................................................................................................................[done]
( 9/23) Removing python38-cymruwhois-1.6-2.11.noarch ...................................................................................................................................................................................[done]
(10/23) Removing python38-docopt-0.6.2-7.16.noarch .....................................................................................................................................................................................[done]
(11/23) Removing python38-linux-procfs-0.6-2.11.noarch .................................................................................................................................................................................[done]
(12/23) Removing python38-mysqlclient-2.1.0-1.3.x86_64 .................................................................................................................................................................................[done]
(13/23) Removing python38-notify2-0.3.1-4.9.noarch .....................................................................................................................................................................................[done]
(14/23) Removing python38-ply-3.11-3.24.noarch .........................................................................................................................................................................................[done]
(15/23) Removing python38-pycups-2.0.1-2.3.x86_64 ......................................................................................................................................................................................[done]
(16/23) Removing python38-pyudev-0.23.2+14-2.3.noarch ..................................................................................................................................................................................[done]
(17/23) Removing python38-rpm-4.17.0-7.3.x86_64 ........................................................................................................................................................................................[done]
(18/23) Removing python38-slip-dbus-0.6.5-6.13.noarch ..................................................................................................................................................................................[done]
(19/23) Removing python38-termcolor-1.1.0-13.12.noarch .................................................................................................................................................................................[done]
(20/23) Removing system-user-tss-20170617-24.9.noarch ..................................................................................................................................................................................[done]
(21/23) Removing zypper-lifecycle-plugin-0.6.1601367426.843fe7a-3.1.noarch .............................................................................................................................................................[done]
(22/23) Removing libhavege2-1.9.18-1.3.x86_64 ..........................................................................................................................................................................................[done]
(23/23) Removing python38-slip-0.6.5-6.13.noarch .......................................................................................................................................................................................[done]
**erlangen:~ #** zypper verify
Loading repository data...
Reading installed packages...
Dependencies of all installed packages are satisfied.
**erlangen:~ #**
hcvv
June 18, 2022, 2:54pm
11