User Tools

Site Tools


linux:distros:opensuse_tumbleweed_gnome

Information

  • openSUSE
  • Tumbleweed
  • GNOME

Download

http://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso
openSUSE-Tumbleweed-DVD-x86_64-Snapshot20251106-Media.iso

Installation Notes

Partitioning

  1. ext2 /
  2. No separate /home
  3. Separate swap with suspend resize
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
nvme0n1     259:0    0 953.9G  0 disk 
├─nvme0n1p1 259:1    0     1G  0 part /boot/efi
├─nvme0n1p2 259:2    0 937.5G  0 part /
└─nvme0n1p3 259:3    0  15.4G  0 part [SWAP]

Boot Loader

  • GRUB2 for EFI 1)

PackageKit

pkill 'gnome-software' && sudo systemctl stop 'packagekit' && sudo zypper remove 'PackageKit'
sudo zypper addlock 'PackageKit'

Repositories

PackMan Essentials

sudo rpm --import 'http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/Essentials/repodata/repomd.xml.key' && sudo zypper addrepo --check --gpgcheck-strict --refresh --priority '98' --name 'Packman Essentials repository (openSUSE_Tumbleweed)' 'http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/Essentials/' 'packman-essentials'

Software

Disable USB Source

sudo zypper modifyrepo --disable --medium-type 'hd'

Update

System

sudo zypper clean --all && sudo zypper refresh --force --services && sudo zypper dist-upgrade --details --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change && sync

GNU nano

  • Installs nano
  • Sets VISUAL and EDITOR to nano via environment variable
  • Sets nowrap for current user
sudo zypper install 'nano' && export 'VISUAL=nano' && export 'EDITOR=nano' && echo -e 'export VISUAL=nano\nexport EDITOR=nano' | sudo tee '/etc/profile.d/editor-nano.sh' > '/dev/null' && cat '/etc/profile.d/editor-nano.sh' && mkdir -p ~/'.config/nano' && echo 'set nowrap' | tee ~/'.config/nano/nanorc' > '/dev/null' && cat ~/'.config/nano/nanorc'

Remove

sudo zypper remove --clean-deps baobab cheese gnome-clocks gnome-contacts gnome-maps gnome-music gnome-packagekit gnome-photos gnome-remote-desktop gnome-shell-search-provider-* gnome-software gnome-weather patterns-gnome-gnome_games myrlyn polari totem vinagre xscreensaver yelp plymouth
sudo zypper addlock baobab cheese gnome-clocks gnome-contacts gnome-maps gnome-music gnome-packagekit gnome-photos gnome-remote-desktop gnome-shell-search-provider-* gnome-software gnome-weather patterns-gnome-gnome_games myrlyn polari totem vinagre xscreensaver yelp plymouth

General

  • :?: TODO: binutils included something useful
sudo zypper install firefox-esr filezilla foliate gimp google-noto-*-fonts gnome-extensions nautilus-file-roller dynamic-wallpapers-11x keepassxc libreoffice transmission-gtk vlc 7zip android-tools aria2 htop secret-tool sensors unar yt-dlp 
binutils

Intel

intel-media-driver libvulkan_intel intel-gpu-tools

Games

doomsday

Wine

  • :?: Gecko/Mono is included as dependencies, but newer installers seem downloaded with the initial prefix creation
wine-staging-wow64 winetricks icoutils
sudo zypper remove 'wine-gecko' 'wine-mono'

Tor Browser

torbrowser-launcher

Settings

Keyboard Shortcuts

'/usr/bin/kgx'
'/usr/bin/bash' -c "'/usr/bin/secret-tool' lookup 'keepass' 'default' | '/usr/bin/keepassxc' --pw-stdin ~/'Documents/keepass.kdbx'"
'/usr/bin/kgx' -T 'openSUSE Updater' -e ~/'.local/scripts/opensuse-updater.sh'

Printer

  • :!: Log-in as root
  • Internet Printing Protocol (ipp) → HP → IPP Everywhere ™
  • Color Mode: Device Gray
  • Administration → Set As Server Default
ipp://192.168.1.164/ipp/print

Network

DNS

1.1.1.2,1.0.0.2
2606:4700:4700::1112,2606:4700:4700::1002

Kernel Options

BPF Disable

  • kernel.unprivileged_bpf_disabled = 0
echo 'kernel.unprivileged_bpf_disabled=0' | sudo tee '/etc/sysctl.d/99-bpf-disable.conf' > '/dev/null' && cat '/etc/sysctl.d/99-bpf-disable.conf'
sudo sysctl 'kernel.unprivileged_bpf_disabled'

Legacy MMap

  • vm.legacy_va_layout = 1
echo 'vm.legacy_va_layout=1' | sudo tee '/etc/sysctl.d/99-vm-legacy-va.conf' > '/dev/null' && cat '/etc/sysctl.d/99-vm-legacy-va.conf'
sudo sysctl 'vm.legacy_va_layout'

Intel Perf Counters

  • dev.i915.perf_stream_paranoid = 0
echo 'dev.i915.perf_stream_paranoid=0' | sudo tee '/etc/sysctl.d/99-i915-perf.conf' > '/dev/null' && cat '/etc/sysctl.d/99-i915-perf.conf'
sudo sysctl 'dev.i915.perf_stream_paranoid'

Magic SysRq key

  • kernel.sysrq = 1
echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && cat '/etc/sysctl.d/99-sysrq.conf'
sudo sysctl 'kernel.sysrq'

Swappiness

  • vm.swappiness = 0
echo 'vm.swappiness = 0' | sudo tee '/etc/sysctl.d/99-swappiness.conf' > '/dev/null' && cat '/etc/sysctl.d/99-swappiness.conf'
sudo sysctl 'vm.swappiness'

GNOME

External Monitor Settings

  • Full RGB + 12-bit color
  • Also applies disabled monitors at log-in (docked laptop)
  • Between </mode> and </monitor>
nano ~/'.config/monitors.xml' && sudo cp -fv ~/'.config/monitors.xml' '/etc/xdg/monitors.xml'
        <rgbrange>full</rgbrange>
        <maxbpc>12</maxbpc>

Extensions

Disable Unredirect

sudo zypper install 'git-core'
git clone --branch 'master' --depth '1' --recurse-submodules 'https://github.com/Exeos/disable-unredirect.git' '/tmp/disable-unredirect-exeos'
mv -f '/tmp/disable-unredirect-exeos/src' ~/'.local/share/gnome-shell/extensions/disable-unredirect@exeos'
rm -Rf '/tmp/disable-unredirect-exeos'

KeePassXC

Settings

  • General → [ ] Load previous databases on startup
  • Security → [x] Use DuckDuckGo service to download website icons

Add Database Password to GNOME Keyring

secret-tool store --label='KeePass' 'keepass' 'default'

Laptop Power

lm_sensors

sudo sensors-detect --auto
sudo -e '/etc/sysconfig/lm_sensors'

Time

  • This sets the hardware clock to the current system/OS clock
sudo hwclock --systohc

Boot Loader

Spinesnap

acpi_osi='Linux' hibernate='no' idle='halt' nohz='off' preempt='full' iommu='pt' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' pcie_aspm='off' pcie_port_pm='off' module_blacklist='iTCO_wdt,intel_oc_wdt' nowatchdog tsc='nowatchdog' drm_kms_helper.poll='0' drm_kms_helper.fbdev_emulation='0' hostname='localhost'

Drive Maintenance

Trim

sudo systemctl enable 'fstrim.timer' --now
sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l

EFI

  • nvme0n1p1 type vfat
sudo umount '/boot/efi' && sudo dosfsck -a -t -w -v '/dev/nvme0n1p1' && sudo mount '/boot/efi'

New Settings

gsettings

  • :?: TODO: Touchpad disabled on external mouse applies with a USB keyboard
gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings set 'org.gnome.mutter' 'experimental-features' '[]' && gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false' && gsettings set 'org.gnome.desktop.interface' 'clock-show-date' 'true' && gsettings set 'org.gnome.desktop.interface' 'clock-show-weekday' 'true' && gsettings set 'org.gnome.desktop.screen-time-limits' 'history-enabled' 'false' && gsettings set 'org.gnome.desktop.wm.preferences' 'focus-mode' 'click' && gsettings set 'org.gtk.gtk4.Settings.FileChooser' 'sort-directories-first' 'true' && gsettings set 'org.gnome.Console' 'restore-window-size' 'false' && gsettings set 'org.gnome.desktop.peripherals.mouse' 'accel-profile' 'flat' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'send-events' 'disabled-on-external-mouse' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'natural-scroll' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-to-click' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'tap-and-drag' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'disable-while-typing' 'false' && gsettings set 'org.gnome.desktop.peripherals.touchpad' 'click-method' 'areas' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'enable-monitors' 'false' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'crawling-interval' '-2' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'index-on-battery' 'false' && gsettings set 'org.freedesktop.Tracker3.Miner.Files' 'index-on-battery-first-time' 'false' && gsettings reset 'org.gnome.Settings' 'last-panel'

Tweaks

General

sudo -e '/etc/profile.d/general-tweaks.sh'
# General
export LD_BIND_NOW='1'
export LD_PREFER_MAP_32BIT_EXEC='1'

# GTK
export GSK_RENDERER='cairo'
export GTK_A11Y='none'

# GNOME
export CLUTTER_PAINT='disable-dynamic-max-render-time'

# Mutter Test
#export MUTTER_DEBUG_DISABLE_HW_CURSORS='1'
#export MUTTER_DEBUG_FORCE_KMS_MODE='simple'

# Intel
#export ANV_NO_GPL='1'
export force_guc_low_latency='true'
export allow_compressed_fallback='true'

# Mesa
export MESA_NO_ERROR='1'
export mesa_glthread='false'
export MESA_DISK_CACHE_DATABASE='0'
export MESA_DISK_CACHE_SINGLE_FILE='0'
export allow_higher_compat_version='true'
export vk_xwayland_wait_ready='false'
export vk_x11_ignore_suboptimal='true'
export vk_wsi_force_bgra8_unorm_first='true'
#export block_on_depleted_buffers='true'
export disable_throttling='true'
export force_integer_tex_nearest='true'

# End

journald

sudo -e '/etc/systemd/journald.conf.d/99-tweaks.conf' && sudo journalctl --vacuum-time='1s' --rotate
[Journal]
Storage=none
Compress=false
MaxLevelStore=0
MaxLevelSyslog=0
MaxLevelKMsg=0
MaxLevelConsole=0
MaxLevelWall=0
MaxLevelSocket=0

# End

Dracut

sudo -e '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
# Compression
compress="cat"

# Machine-specific
do_strip="yes"
aggressive_strip="yes"
hostonly="yes"
hostonly_mode="strict"
early_microcode="no"

force_drivers+=" i915 "

# End

fstab

sudo -e '/etc/fstab'

swap

,discard=once

EFI

  • /boot/efi type vfat
,discard,tz=UTC,shortname=winnt

ext2

  • / type ext2
,noquota,noiversion,noatime

Wine

Scripts

Updater

mkdir -p ~/'.local/scripts' && nano ~/'.local/scripts/opensuse-updater.sh' && chmod +x ~/'.local/scripts/opensuse-updater.sh'
#!/bin/bash

sudo zypper clean --all
sudo zypper refresh --force --services
sudo zypper dist-upgrade --details --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change

rm -Rf ~/'.cache/mesa_shader_cache'*
localsearch reset --filesystem

sudo fstrim --all --verbose

sync
zypper ps --short
echo 'Done.'

# End
~/'.local/scripts/opensuse-updater.sh'

Notable Folders and Commands

1)
:!: 2025/11/08: BLS wasn't hooked-up to GUI YaST Boot Loader config, so kernel parameters didn't apply; can't be changed post-install
/usr/local/www/wiki/data/pages/linux/distros/opensuse_tumbleweed_gnome.txt · Last modified: by Sean Rhone

Except where otherwise noted, content on this wiki is licensed under the following license: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki