One more way to customize opensuse.
After installation, you should open YaST and configure the software repositories.
- Make sure the local repository of the installation stick is turned off.
- Add the Nvidia and Pacman community repositories.
zypper ref
- refreshing a repository means downloading metadata of packages from the medium (if needed).
zypper dup
- perform a distribution upgrade. This command applies the state of (specified) repositories onto the system; upgrades (or even downgrades) installed packages to versions found in repositories, removes packages that are no longer in the repositories and pose a dependency problem for the upgrade, handles package splits and renames, etc.
zypper ve
- check whether dependencies of installed packages are satisfied. + In case that any dependency problems are found, zypper suggests packages to install or remove to fix them.
sudo zypper ref && sudo zypper dup && sudo zypper ve
By default, after installing the system, the workstation is overloaded with unnecessary programs. It is advisable to uninstall them so that they do not interfere with the use of the system.
If you have installed KDE Plasma:
sudo zypper rm kmahjongg kmines kreversi ksudoku akregator kaddressbook konversation kmail kontact ktnef knotes kpat mbox-importer libkdegames kdegames-carddecks-default akonadi-contacts akonadi-import-wizard akonadi-calendar akonadi-calendar-tools opensuse-welcome
If you have installed GNOME:
sudo zypper rm gnome-contacts gnome-weather gnome-maps gnome-console gnome-mahjongg gnome-mines gnome-sudoku gnome-chess iagno lightsoff quadrapassel swell-foop cheese evolution polari opensuse-welcome
Basic packages that we will need as we work with the system.
git, wget2, curl, aria2 is needed to work with the internet.
inxi, fastfetch displays useful information about the system.
neovim is a powerful text editor.
zsh is a modern command shell.
OBS package installer analog of yay/paru.
java-21-openjdk, python311, python311-pip, gcc-c++, clang, clang-tools, mono-complete are needed to work with Java, Python C++ and C#.
dynamic kernel module support is needed to install the Nvidia driver.
sudo zypper in git wget2 curl aria2 inxi fastfetch neovim zsh opi java-21-openjdk python312 python312-pip gcc-c++ clang clang-tools mono-complete dkms
If more than one version of Java is installed, this command will let you select the primary version:
sudo update-alternatives --config java
Proper (most likely) installation of the Nvidia driver on OpenSUSE with dependencies installed to make the Wayland protocol run smoothly.
Starting the DKMS daemon. It is obligatory to reboot!
sudo zypper in dkms && sudo systemctl enable dkms.service
After installation, make sure the system is not under load. Run plasma-systemmonitor, gnome-system-monitor, htop or btop.
sudo zypper in nvidia-compute-G06 nvidia-compute-G06-32bit nvidia-compute-utils-G06 nvidia-drivers-G06 nvidia-driver-G06-kmp-default nvidia-gl-G06 nvidia-gl-G06-32bit nvidia-utils-G06 nvidia-video-G06 nvidia-video-G06-32bit libnvidia-egl-wayland1 libnvidia-egl-wayland1-32bit
Or if you want to try open source Nvidia driver instead of proprietary, use this command:
sudo zypper in nvidia-open
It is advisable to reboot again and check if the installation is correct using the following commands:
systemctl status dkms.service
sudo zypper se nvidia
nvidia-smi -q
inxi -G
You need to play online or offline multimedia content but the content does not want to play or shows errors. Usually this is a sign of missing codecs: install these packages from Packman to play most music and video:
- ffmpeg
- gstreamer-plugins-good
- gstreamer-plugins-bad
- gstreamer-plugins-ugly
- gstreamer-plugins-libav
- libavcodec
- vlc-codecs
Opi (Open Build Service Package Installer) works on both Leap and Tumbleweed, and is the easiest way to install community packages and the codecs:
sudo zypper in opi && opi codecs
Or if you want to install the codec packages without
vlc-codecs
(if you don't plan on using the VideoLAN Client):
sudo zypper in libx264-164 libx265-209 ffmpeg-7 gstreamer-plugins-{base,good,bad,ugly,libav} gstreamer-plugin-openh264 mozilla-openh264 libavcodec
A standard set of applications for a home computer.
If you have installed KDE Plasma:
sudo zypper in partitionmanager torbrowser-launcher inkscape krita steam gamemode vlc
If you have installed GNOME:
sudo zypper in gparted gnome-font-viewer torbrowser-launcher inkscape krita steam gamemode vlc
Virtual machine manager to work with QEMU/KVM.
sudo zypper in qemu-kvm bridge-utils virt-manager libguestfs guestfs-tools virt-install libvirt-devel libvirt
For virt-manager to work correctly, it is recommended to add a user to the libvirt group and to configure qemu.conf.
sudo usermod -G libvirt -a $USER
You have to change these lines:
user = "<username>"
,group = "libvirt"
.
sudo vim /etc/libvirt/qemu.conf
Running libvirtd background processes:
sudo systemctl enable libvirtd
Flathub makes it easy to install and update applications for any Linux distribution. Browse popular categories such as performance, graphics, games, and more, or find your favorite application.
Check for a connected flathub repository. It should be enabled out of the box by default in OpenSUSE.
flatpak remotes --show-details
If not, this command will add the flathub repository to the list:
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
Applications for fine-tuning your system, creating videos, programming, having fun.
Installing a theme for GTK3 applications:
flatpak install org.gtk.Gtk3theme.adw-gtk3 org.gtk.Gtk3theme.adw-gtk3-dark
If you have installed KDE Plasma:
flatpak install flathub com.github.tchx84.Flatseal page.codeberg.libre_menu_editor.LibreMenuEditor com.github.wwmm.easyeffects com.vysp3r.ProtonPlus com.github.Matoking.protontricks org.onlyoffice.desktopeditors org.kde.kdenlive com.vscodium.codium dev.vencord.Vesktop com.heroicgameslauncher.hgl
If you have installed GNOME:
flatpak install flathub com.github.tchx84.Flatseal com.mattjakeman.ExtensionManager io.github.realmazharhussain.GdmSettings page.codeberg.libre_menu_editor.LibreMenuEditor com.github.wwmm.easyeffects io.missioncenter.MissionCenter com.raggesilver.BlackBox com.vysp3r.ProtonPlus com.github.Matoking.protontricks org.onlyoffice.desktopeditors org.kde.kdenlive com.vscodium.codium dev.vencord.Vesktop com.heroicgameslauncher.hgl
If you have problems with vscodium on Wayland session, you may use this command:
flatpak override --user --nosocket=wayland com.vscodium.codium
Add this to the settings if you want a custom title bar in vscodium:
{
...
"window.titleBarStyle": "custom"
...
}
Native launcher for modding games.
Download the latest release. R2modman.AppImage has the leading version in the name. It can be found in program releases.
wget https://github.com/ebkr/r2modmanPlus/releases/download/v3.1.48/r2modman-3.1.48.AppImage
Set permission to run the program:
chmod +x r2modman-3.1.48.AppImage
Create desktop shortcut: Don't forget to change /path/to/r2modman.AppImage
!
cat >> ~/.local/share/applications/r2modman.desktop <<EOF
[Desktop Entry]
Name=R2modman
Comment=Infinite mod generator
Exec=/path/to/r2modman.AppImage --no-sandbox
Icon=fuse-emulator
Terminal=false
Type=Application
Categories=Game;
MimeType=x-scheme-handler/ror2mm;
EOF
Engine for the STALKER series of games. Makes the game native.
Download the necessary dependencies.
sudo zypper in git cmake make gcc gcc-c++ glew-devel openal-devel cryptopp-devel libogg-devel libtheora-devel libvorbis-devel SDL2-devel lzo-devel libjpeg-turbo-devel
To get the source code, run:
git clone https://github.com/OpenXRay/xray-16.git --recurse-submodules
Enter the repository clone and create a building directory there. The name of the directory doesn't matter, e.g. bin or build (bin will be used for the rest of this documentation to refer to this directory). An example for creating the directory and entering it for the terminal:
cd xray-16 && mkdir bin && cd bin
Once you're inside of bin, configure the project by running:
cmake .. -DCMAKE_INSTALL_LIBDIR=lib64 -DCMAKE_INSTALL_PREFIX=/usr
To compile the engine, run:
make -jx
! x denoted the number of threads you want to assign to the compile process. For example, if you want to use 4 threads:
make -j4
To make the engine, run:
QA_RPATHS=$(( 0x0001|0x0010 )) make package
To install via zypper, run:
sudo zypper in /path/to/<package_name>.rpm
To install via rpm, run:
sudo rpm -ivh /path/to/<package_name>.rpm
Launcher with open source code and convenient settings.
Download the latest release. Alternative sources one or two. Create desktop shortcut: Don't forget to change
/path/to/LegacyLauncher_legacy.jar
!
cat >> ~/.local/share/applications/minecraft.desktop <<EOF
[Desktop Entry]
Name=Minecraft
Comment=Infinite idea generator
Exec=gamemoderun java -jar /path/to/LegacyLauncher_legacy.jar
Icon=minecraft
Terminal=false
Type=Application
Categories=Game;
EOF
The application requires the ec_sys
module with option write_support=1
to run. If the ec_sys
kernel module is not included in your distribution's kernel, you can use the acpi_ec
kernel module.
Checking for the ec_sys module:
sudo modinfo ec_sys
Create ec_sys.conf:
sudo cat >> /etc/modules-load.d/ec_sys.conf <<EOF
# Load ec_sys at boot
ec_sys write_support=1
EOF
Download MControlCenter-x.x.x.tar.gz
from the releases page.
wget https://github.com/dmitry-s93/MControlCenter/releases/download/0.4.1/MControlCenter-0.4.1-bin.tar.gz
Unpack the archive with the program.
tar -xvf MControlCenter-0.4.1-bin.tar.gz
Open terminal in unpacked directory. Run the script.
sudo ./install
After installing the required packages, it is desirable to disable the installation of recommended packages by default so that the system remains clean when upgrading.
Normally this parameter is on line 403
solver.onlyRequires = true
.
sudo vim /etc/zypp/zypp.conf
Verify rpm packages:
sudo zypper ref && sudo zypper lr && sudo zypper lu && sudo zypper dup && sudo zypper ve
Verify flatpak packages:
flatpak update && flatpak uninstall --unused && flatpak repair
To make icons available to all users of the system, instead of
./install.sh standard
, runsudo ./install.sh standard
.
Traditional icons:
git clone https://github.com/vinceliuice/Tela-icon-theme.git && cd Tela-icon-theme && ./install.sh standard
Rounded icons:
git clone https://github.com/vinceliuice/Tela-circle-icon-theme.git && cd Tela-circle-icon-theme && ./install.sh standard
Install theme from this repo.
wget https://github.com/lassekongo83/adw-gtk3/releases/download/v5.3/adw-gtk3v5.3.tar.xz
Unzip the archive:
tar -xvf adw-gtk3v5.3.tar.xz
Install theme:
sudo cp -r adw-gtk3 /usr/share/themes/ && sudo cp -r adw-gtk3-dark /usr/share/themes/
Add flatpak applications theme support:
flatpak install org.gtk.Gtk3theme.adw-gtk3 org.gtk.Gtk3theme.adw-gtk3-dark
Install zsh and run it.
Zsh will ask you to configure it after the first run. Look at all the items and click 0 in each if you are satisfied.
sudo zypper in zsh && zsh
This font supports icons. It is necessary for correct output of information in the terminal.
wget https://github.com/romkatv/powerlevel10k-media/raw/master/MesloLGS%20NF%20Regular.ttf
Oh-my-zsh will extend the capabilities of regular zsh.
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
These extensions will provide hints while using zsh.
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting && git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
After installing the zsh extensions, you should put them in
.zshrc
.Open the config and find the line
plugins=(git)
.It should be changed to
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)
.
sed -i 's/^plugins=(git)$/plugins=(git zsh-autosuggestions zsh-syntax-highlighting)/g' ~/.zshrc
Restart the config
source .zshrc
P10k will make zsh more beautiful.
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
After installing the 10k, you should put them in
.zshrc
.You must replace the value of ZSH_THEME with
ZSH_THEME="powerlevel10k/powerlevel10k"
.
sed -i 's/ZSH_THEME="robbyrussell"/ZSH_THEME="powerlevel10k\/powerlevel10k"/' ~/.zshrc
Restart the config
source .zshrc
Some application icons have no analogs in the Tela-icon set. By modifying the .desktop file, you can change the icon to your own as desired.
- Protontricks
cp --no-preserve=mode /var/lib/flatpak/exports/share/applications/com.github.Matoking.protontricks.desktop ~/.local/share/applications/com.github.Matoking.protontricks.desktop
sed -i 's/^Icon=com.github.Matoking.protontricks$/Icon=katomic/g' ~/.local/share/applications/com.github.Matoking.protontricks.desktop
- Vesktop
cp --no-preserve=mode /var/lib/flatpak/exports/share/applications/dev.vencord.Vesktop.desktop ~/.local/share/applications/dev.vencord.Vesktop.desktop
sed -i 's/^Icon=dev.vencord.Vesktop$/Icon=discord/g' ~/.local/share/applications/dev.vencord.Vesktop.desktop
- Dev Toolbox
cp --no-preserve=mode /var/lib/flatpak/exports/share/applications/me.iepure.devtoolbox.desktop ~/.local/share/applications/me.iepure.devtoolbox.desktop
sed -i 's/^Icon=me.iepure.devtoolbox$/Icon=via/g' ~/.local/share/applications/me.iepure.devtoolbox.desktop
- Libre Menu Editor
cp --no-preserve=mode /var/lib/flatpak/exports/share/applications/page.codeberg.libre_menu_editor.LibreMenuEditor.desktop ~/.local/share/applications/page.codeberg.libre_menu_editor.LibreMenuEditor.desktop
sed -i 's/^Icon=page.codeberg.libre_menu_editor.LibreMenuEditor$/Icon=org.gnome.Tecla.svg/g' ~/.local/share/applications/page.codeberg.libre_menu_editor.LibreMenuEditor.desktop
- Hieroglyphic
cp --no-preserve=mode /var/lib/flatpak/exports/share/applications/io.github.finefindus.Hieroglyphic.desktop ~/.local/share/applications/io.github.finefindus.Hieroglyphic.desktop
sed -i 's/^Icon=io.github.finefindus.Hieroglyphic$/Icon=words/g' ~/.local/share/applications/io.github.finefindus.Hieroglyphic.desktop
Additional set of applications for work
A set of applications for organizing photos, working with 3D graphics and recording videos.
sudo zypper in darktable blender && opi obs-studio
Software for downloading data, editing text, 2FA, working with music, creating plans and etc.
flatpak install flathub org.gnome.gitlab.somas.Apostrophe com.belmoussaoui.Authenticator dev.geopjr.Collision com.github.huluti.Curtail me.iepure.devtoolbox app.drey.EarTag com.github.neithern.g4music org.gaphor.Gaphor se.sjoerd.Graphs io.github.finefindus.Hieroglyphic com.belmoussaoui.Obfuscate io.gitlab.adhami3310.Impression fr.romainvigier.MetadataCleaner io.github.alainm23.planify com.github.ADBeveridge.Raider com.github.flxzt.rnote io.gitlab.adhami3310.Converter org.tenacityaudio.Tenacity
Extensions for GNOME that can improve the experience of using the system.
Quickly switch keyboard language layout without showing the switcher popup.
Adds AppIndicator, KStatusNotifierItem and legacy Tray icons support to the Shell.
Adds a blur look to different parts of the GNOME Shell, including the top panel, dash and overview.
blur-my-shell@aunetx
The most popular clipboard manager for GNOME, with over 1M downloads.
Disable the screensaver and auto suspend.
A glimpse into your computer's temperature, voltage, fan speed, memory usage, processor load, system resources, network speed and storage stats. This is a one stop shop to monitor all of your vital sensors. Uses asynchronous polling to provide a smooth user experience.
Tweak Tool to Customize GNOME Shell, Change the Behavior and Disable UI Elements.
just-perfection-desktop@just-perfection