=A month of openSUSE: my personal experiences=

Long time no see! I finally decided to create a whole new blog
post, after rumbling with thoughts about it. Mainly I lost focus
on writing new posts because of shifting focus between archiving
operating systems, and schoolwork. After a busy first week of
another school year, I guess it's time to have my opinions on
a distro called openSUSE.

It's been a month after I daily drive this Linux distribution,
with me using Windows, mainly for either gaming incompatible
games or maintenance.

And yes, I use KDE. Now stop rallying because I mainly use it
for integrating well into a normal Windows 10 desktop, and since
I'm probably the sole user of Linux in my circle, it's also
for familiarity.  I might use dwm again, who knows but for now,
KDE it is.

Also, please stop complaining bloat, like I mistakenly did a
year ago.  It's expected that application sizes would grow to
have room for new features, and that's okay. Bloat in software
terms is defined as unnecessary features inside a piece of
software or the software itself.  Examples include Norton or
McAfee antivirus software.

Okay, I wanted that to cleared up. Now back to our post.

==What's openSUSE?==

openSUSE is a (GNU/)Linux distribution made by the openSUSE
project since 2005, replacing SUSE Linux (not Enterprise), after
Novell (then parent of SUSE) discontinued the boxed Personal
editions of said distribution. It started as a beta of SUSE
Linux 10 but eventually evolved into a more refined distribution.

Since 2014, there are two primary variants of openSUSE aimed on
Desktop users, Tumbleweed (the one I use) is a rolling release
distribution, where bleeding edge software that passes OpenQA
would eventually released almost daily, and Leap, following a
more traditional 18-month release schedule and is the base for
SUSE Linux Enterprise versions.

Tumbleweed is aimed on people who are technical enough, had
strong and consistent internet, and for people who had at least
an experience on Arch. Leap is aimed on servers where downtime
isn't needed, a beginner, or a simple desktop.

For my experiences, I used openSUSE Tumbleweed, with a consistent
update schedule.

==Installation==

For the most part, the YaST2 based installer setup is pretty
straightforward, the disk partition tool is a bit of getting used
to, with me double-checking if I installed this on the correct
drive. After that, it's all smooth sailing. The process took me
like 15-20 minutes in my setup.

After all's done, I immediately upgraded the system to get the
latest available software and features in openSUSE. Everything's
setup after that, I installed necessary programs via zypper and
it's done.  Straightforward as that.

==My experiences==

openSUSE for me is smooth, fast and also could do mundane tasks
off everyday use. In my usecase, I use it similarly to Windows,
a general workstation/gaming/education PC. Features are great,
especially the ones exclusive to openSUSE itself, including
zypper, YaST2, and snapper.

Overall, the system runs on high performance, it could handle
Minecraft on default without stuttering unlike on Windows 10,
and also given me the chance to run one thing, KVM.

I'll list my own opinions about the openSUSE features that isn't
on Windows 10 or is a hassle to do so.

===Btrfs and snapshotting===

Btrfs is a file system, just like NTFS or APFS, but it's main
selling point is the ability to create subvolumes inside of
that drive. Let's say in Windows terms, C:\ is the root volume,
while C:\Users is the /home subvolume, you should get the point.

This is where snapper comes in. Snapper is an utility to snapshot
drives after an event, such as changing settings on YaST2,
updating or installing packages on zypper. That means, if an
update broke your system, it's a matter of a reboot, selecting
"Show read-only snapshots" on grub, boot to the snapshot,
open terminal and run snapper rollback xxx. After a reboot,
it's working back again!

By default, it only configures snapshotting on the / partition,
you could set up snapshotting on /home if /home is on the /
partition or if it's Btrfs formatted. It's also recommended to
use 16GB to enable it by default on setup.

Most of the time, snapper also cleans up the snapshots (except
user generated ones) to avoid filling up space immediately,
which is a cool feature too of snapper.

Man, I wish we could have this on Windows too, instead of having
huge backups, we could have such incremental backups officially,
not using 3rd party applications.

===Zypp package management===

The zypp package manager (zypper) is a versatile package
management tool. It could handle dependencies as well as, among
others, could add OBS (Open Build Services) repos, 1-click install
(in GUI), and more.

I have a semi-bad habit of using sudo zypper dup which I should
prolly avoid but the Update applet on KDE probably uses it.

It's basically just an another package management tool in
the surface but it has some good features under the hood. The
disadvantages, I think was the lack of an equivalent of apt
autoremove but it's working as advertised.

===YaST2===

YaST2 is a beast, I admit. YaST2 centralizes many things a
sysadmin would like to do in a nice interface, such as firewall,
partitioning, software management and more.

It also powers the 1-click Install applet in GUI equipped
systems, and also the installation setup whenever a fresh
install is initiated. It's a powerful swiss-army tool for system
administrators, and a good one at that.

I often do software management on that as it has a simple and
straightforward interface. I do find the partitioning tool a
bit confusing but it's okay if you get used to it.

Overall, YaST2 is a powerful tool, but most of the time in
openSUSE, I use 2-3 tools on average, in a daily basis. It's a
must-have on openSUSE systems.

===Open Build Service===

Open Build Service or OBS, is an equivalent of Arch's AUR. It
hosts programs that are unavailable on the main repos. You could
package, manage, build or install packages on OBS. I wouldn't
go too deep with how to create a package in OBS though.

OBS packages are different to the main repos, and might introduce
conflict to other packages, but if the program you install
actually needs a specific dependency, then you could install on
the Open Build Service.

Personally, I use it whenever I need a specific program like
Waydroid, or something else. Other than that, it's a cool perk
on openSUSE.

===Desktop Environments===

The choices of desktops and window managers in openSUSE is
diverse, with KDE being always the default (which I currently
use). You could install other desktop environments like GNOME,
Xfce, MATE, LXQT, LXDE, Budgie, Cinnammon or window managers
such as IceWM, dwm, sway, hyprland and the like.

The desktop environment I use is KDE Plasma 5.27. It's sleek,
modern, and also, especially in openSUSE, it's well integrated
in the distribution. It reminds me of Windows 10 for a bit,
with the default theme being switched to Breeze Dark. I also
have fun customizing and adding more functionality to the system
via widgets, such as a weather widget that could have precise
locations (instead of having Manila or Cebu by default), a fork
of the old kickoff (KDE equivalent for the Start menu), and more!

Of course we have our own pick, I respect it, I tried GNOME on
other distributions and it isn't familiar but nice (also the
"bloat" but I'll refrain to use that term anymore, also have a
case of the "Control Panel syndrome" where a particular DE or
operating system have two or more setting applications, just
like Windows 8+)

Another nice thing it has was the ability to have more panels,
something Windows 11 doesn't have, which means, you could remake
either Windows or macOS.

Overall, KDE is a nice desktop environment. But you could choose
others too via the setup process, which is kinda provided. By
default, you could choose KDE, GNOME and Xfce, with others hidden
under some options.

===Gaming capabilities===

I could tell that openSUSE could run games well or better than
my Windows installation. Granted, it varies on many variables,
such as how old the installation is, as well as how many programs
are there in Windows, among others.

But I could still compare some games, for example, Minecraft:
Java Edition runs well within default settings inside Linux
compared to Windows, which whenever an attempt is made to reset
the default graphic settings would make the game stutter.

Other games, GTA San Andreas for example, is nearly identical
to it running on Wine compared to it running on Windows. I
tried native games such as SuperTuxKart and the Super Mario 64
decompilation port.

Proton is nice, being the backend of Steam Deck's ability to
play Windows-only titles, and it's actually a nice lifesaver
from overconfiguring Wine. I heard of Lutris too but it didn't
work so, Proton it is.

==Downsides I experienced==

There are downsides that I experienced during the duration of the
month, some were outside of my own, some were my own fault. One
of it was whenever the WiFi was down (which happened for 3 days)
and so, updating it using mobile data. God it was slow. Luckily,
I updated after the WiFi returned.

I also have recent problems with Packman and Mesa, prompting me
to downgrade and switch vendors then do it again 2 days later.

I see the lack for Waydroid in the repos disappointing, with
guides supplementing it. I happen to have issues with the
prerequisites and so didn't do it further.

But overall, it's nice and stable most of the time.

KVM, the one that I'm intrigued with

Usually, I use VMWare, VirtualBox or 86Box whenever I need to try
out an operating system, especially x86 based ones. But sometimes,
some operating systems are picky about which virtualizer should
it use.

For example, ChromeOS doesn't work on VMware on the latest
versions, or something like an Android-based operating system
would struggle under Windows.

For that, I need something like KVM. KVM is different to other
virtualizer solutions, I wouldn't like to explain it deeply, but
basically, it's a Linux kernel module to add the functionality
of virtualizing different operating systems directly, with
near-native speeds. It is commonly partnered with QEMU.

For managing those, I use Virtual Machine Manager that enables
management of KVM machines, as well as others such as Linux
Containers.  It's a nice GUI to easily modify machines with
it. Additionally, I have Boxes (from Flathub) for certain
operating systems such as GNOME OS (which is a reference
platform).

Honestly, having this on my arsenal would be a great help on
starting the GUI page.

==Drawing my conclusions==

openSUSE is versatile at what it's worth as a distribution. The
community is great (especially the Discord community), the
distribution is stable, the added benefit of a traditional
release schedule operating system really adds to the integrity
of the distribution.

I hope I could use it in the long run for more general purpose
tasks. I would like to switch completely eventually but since I
would eventually need some applications (such as Adobe Creative
Cloud) for school related tasks, I wouldn't make the jump
immediately.

This might be my longest post yet, and I hope you didn't get
bored. I got things to do, so we would end this blog post
here. See ya, and be safe.