I've been trying Tumbleweed for my gaming needs and so far it seems to be working relatively well. My issue is about removed packages. When I first installed TW, I removed quite a few packages I did not want (KSudoku, LibreOffice, and a few others). It has been a little since I've turned on my PC but yesterday I noticed that KSudoku, LibreOffice, and really all other apps I thought I had uninstalled (sudo zypper remove <package-name>) were back on my desktop. I thought "maybe I forgot to uninstalled them in the first place" so I went through and removed all the unwanted stuff again. Since it had been awhile I updated my OS right after uninstalling those packages. After the update (sudo zypper up), I rebooted and immediately noticed that all those packages I had just removed were back (AGAIN). So WTF... am I not removing those unwanted packages "properly"? Why do they keep coming back after updates? How can I prevent this?
Open Yast and mark those packages as taboo. That way they'll never reinstalled again after an update.
Use zypper dup for updating tumbleweed. The zypper up its for updating openSUSE leap.
Took me a bit to see these patterns/packages (mainly because I've never used Yast). I can see these patterns and the software that they install, is it better to use Yast to remove the packages and the patterns and mark them as "Don't install that sh.t again" or through cli?
Right... does it even make sense that installing all recommended packages is the default zypper behavior? Lyx for example will install a 2GB Tex distribution by default, which will conflict with any existing Tex install. Why on earth is that the default... If you are installing Lyx, you very likely at least understand that you need to choose a Tex distribution.
Always check the package list when updating. Tumbleweed for some reason occasionally wants to install Patterns even if they were not included to begin with. I've taken to updating with the command:
sudo zypper dup --no-recommends
to avoid installing packages/patterns I'm trying to avoid. You could probably also mask some packages so they are never installed, but I haven't looked in to that.
OpenSUSE use patterns. Groups of packages that can be selected during installation. If one of the included pattern packages is removed it will be "fixed" when updating. You can uninstall some patterns, but be careful as some may be more important than others, leaving you without a graphical interface or something like that. If you decide to do a reinstall, you can deselect a lot of patterns (search for "pattern" in the software selection section of the installer).
Okay so I ran sudo zypper search pattern* and found one called patterns-games-games and patterns-office-office. I assume these are the "patterns" responsible for installing stuff like Kmines, KSoduku, LibreOffice, etc which I don't want. I also assume I can run sudo zypper remove patterns-games-games to remove it all? Or do I need to remove the packages individually and then remove the pattern?
Well when I boot after reboot, I see updated software packages and running uname-a shows the new kernel zipper said it was going to install. Based on that I assume that the answer would be no
I believe OpenSUSE uses something called "meta" packages that contain a bunch of other packages. For example if there's games-meta package it will fetch a bunch of games and during update it may try to install them again. Search through installed packages and see if you have any meta ones.
Patterns almost made me skip opensuse, until I locked most of them so they won't annoy me anymore.
I start with only selecting some basic patterns in the installer:
apparmor
base
documentation
enhanced_base
minimal_base
sw_management
x86_64_v3
When installed, I run this in my fresh system:
# save the currently installed patterns in a variable
installedPatterns=$(zypper se --type pattern --installed-only | grep -E "(.*\|){3}" | cut -d'|' -f2 | tail -n+2)
# lock every existing pattern
sudo zypper addlock --type pattern $(zypper search --type pattern | grep -E "(.*\|){3}" | cut -d'|' -f2 | tail -n+2)
# lock every package starting with "yast"
sudo zypper addlock yast*
# unlock the patterns you had installed
sudo zypper removelock --type pattern $installedPatterns
Pro:
Only real dependencies get installed when adding packages
Nothing re-installs because it belongs to an installed pattern
No need for --no-recommends
Con:
You have to find out the packages you need yourself
For a minimal gnome install, use these packages (likely some more depending on you setup):