====== Information ======
* openSUSE
* Tumbleweed
* GNOME
* Spinesnap = Dell Latitude 5591 ((i5-8400H, UHD 630, AX210, UEFI; no Thunderbolt, no dGPU))
openSUSE Tumbleweed
====== Download ======
* http://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso
* https://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso.sha256
http://download.opensuse.org/tumbleweed/iso/openSUSE-Tumbleweed-DVD-x86_64-Current.iso
openSUSE-Tumbleweed-DVD-x86_64-Snapshot20251223-Media.iso
====== Installation Notes ======
===== Partitioning =====
- ext2 ''/''
- No separate ''/home''
- Separate ''swap'' without 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 950.9G 0 part /
└─nvme0n1p3 259:3 0 2G 0 part [SWAP]
===== Boot Loader =====
* GRUB2 for EFI
====== PackageKit ======
pkill 'gnome-software' && sudo systemctl stop 'packagekit' && sudo zypper remove 'PackageKit'
sudo zypper addlock 'PackageKit'
====== Repositories ======
===== PackMan Essentials =====
* http://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/Essentials
* Priority: 98
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'
===== Wine =====
* https://download.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/
* Priority: 98
* 2025/12/06: Doesn't provide newer packages than stock Tumbleweed repos
sudo rpm --import 'https://download.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/repodata/repomd.xml.key' && sudo zypper addrepo --check --gpgcheck-strict --refresh --priority '98' --name 'Wine (openSUSE_Tumbleweed)' 'https://download.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/' 'wine'
====== 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 snapshot evolution* gnome-clocks gnome-contacts gnome-logs gnome-maps gnome-music gnome-online-accounts gnome-packagekit gnome-photos gnome-remote-desktop gnome-shell-search-provider-* gnome-software gnome-tour gnome-tweaks gnome-weather patterns-gnome-gnome_games malcontent-control totem snapshot yelp plymouth
sudo zypper addlock baobab snapshot evolution gnome-clocks gnome-contacts gnome-logs gnome-maps gnome-music gnome-online-accounts gnome-packagekit gnome-photos gnome-remote-desktop gnome-shell-search-provider-* gnome-software gnome-tour gnome-tweaks gnome-weather patterns-gnome-gnome_games malcontent-control totem snapshot 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 MozillaThunderbird transmission-gtk vlc 7zip android-tools aria2 htop Mesa-demo-x secret-tool sensors unar yt-dlp
binutils
===== Intel =====
****
intel-media-driver libvulkan_intel intel-gpu-tools
==== intel_gpu_top ====
****
sudo intel_gpu_top -s '500' -p -m
===== Games =====
****
doomsday
===== Wine =====
* Old WoW64
wine-staging wine-staging-32bit libSDL3-0-32bit gstreamer-plugins-base-32bit gstreamer-plugins-good-32bit gstreamer-plugins-bad-32bit gstreamer-plugins-ugly-32bit gstreamer-plugins-libav-32bit Mesa-libva-32bit winetricks icoutils
libvulkan_intel-32bit
===== Tor Browser =====
****
torbrowser-launcher
====== Settings ======
===== Printer =====
* http://localhost:631/admin
* :!: 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 ====
* [[servers:upstream_dns_servers|More DNS Servers]]
9.9.9.9,149.112.112.112
2620:fe::fe,2620:fe::9
===== Kernel Options =====
==== BPF Disable ====
* https://docs.kernel.org/admin-guide/sysctl/kernel.html#unprivileged-bpf-disabled
* ''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'
'/usr/sbin/sysctl' 'kernel.unprivileged_bpf_disabled'
==== Intel Perf Counters ====
* https://wiki.archlinux.org/title/intel_graphics#Enable_performance_support
* :!: Requires ''i915'' [[#dracut|early-loaded]]
* ''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'
'/usr/sbin/sysctl' 'dev.i915.perf_stream_paranoid'
==== Magic SysRq key ====
* https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html
* Allows ''REISUB''
* ''kernel.sysrq = 1''
echo 'kernel.sysrq = 1' | sudo tee '/etc/sysctl.d/99-sysrq.conf' > '/dev/null' && cat '/etc/sysctl.d/99-sysrq.conf'
'/usr/sbin/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'
'/usr/sbin/sysctl' 'vm.swappiness'
===== GNOME =====
==== External Monitor Settings ====
* Full RGB + 12-bit color
* Also applies disabled monitors at log-in (docked laptop)
* [[linux:notes:gnome_hdmi_full_rgb|Notes]]
* Between '''' and ''''
nano ~/'.config/monitors.xml' && sudo cp -fv ~/'.config/monitors.xml' '/etc/xdg/monitors.xml'
full
12
==== Extensions ====
* https://extensions.gnome.org/extension/545/hide-top-bar/
* https://extensions.gnome.org/extension/8008/disable-unredirect/
==== gsettings ====
* [[linux;notes;gsettings|More gsettings]]
gsettings reset 'org.gnome.shell' 'app-picker-layout' && gsettings reset 'org.gnome.mutter' 'experimental-features' && gsettings set 'org.gnome.desktop.interface' 'clock-format' '12h' && gsettings set 'org.gnome.desktop.interface' 'accent-color' 'green' && 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.nautilus.preferences' 'date-time-format' 'detailed' && gsettings set 'org.gnome.nautilus.preferences' 'show-delete-permanently' 'true' && gsettings set 'org.gnome.desktop.peripherals.mouse' 'accel-profile' 'flat' && 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'
=== Remove App Folders ===
****
gsettings set 'org.gnome.desktop.app-folders' 'folder-children' "['YaST']"
== Defaults ==
* :!: ''gsettings reset'' resets to blank instead of defaults
* Last checked: 2025/12/25
gsettings set 'org.gnome.desktop.app-folders' 'folder-children' "['System', 'Utilities', 'YaST', 'Pardus']"
gsettings get 'org.gnome.desktop.app-folders' 'folder-children'
==== Keyboard Shortcuts ====
* [[#add_database_password_to_gnome_keyring|KeePassXC]]
* [[#updater|Updater]]
'/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'
=== Keys ===
* Listed respectively to above
* Ctrl + Alt + T
* Ctrl + Alt + Z
* F6
===== Firefox =====
* See [[programs;firefox|Firefox]]
* Also for Thunderbird
===== kgx =====
****
gsettings set 'org.gnome.Console' 'restore-window-size' 'false'
===== KeePassXC =====
==== Settings ====
* General -> [ ] Load previous databases on startup
* Security -> [x] Use DuckDuckGo service to download website icons
==== Add Database Password to GNOME Keyring ====
* [[#keyboard_shortcuts|Keyboard shortcut]]
'/usr/bin/secret-tool' store --label='KeePass' 'keepass' 'default'
===== Laptop Power =====
* [[linux:notes:x86_energy_perf_policy|x86_energy_perf_policy udev Rule]]
===== lm_sensors =====
sudo sensors-detect --auto
sudo -e '/etc/sysconfig/lm_sensors'
===== Time =====
****
sudo timedatectl 'set-ntp' 'true' && sudo hwclock --systohc && timedatectl status
====== Boot Loader ======
* YaST2
* Boot Code Options -> Boot Loader: ''GRUB2 for EFI''
* Boot Code Options -> ''[ ]'' Secure Boot Support
* Kernel Parameters -> CPU Mitigations: ''Off''
* Kernel Parameters -> ''[ ]'' Graphical console
* Bootloader Options -> Timeout in Seconds: ''0''
* Bootloader Options -> ''[ ]'' Probe Foreign OS
===== Spinesnap =====
* [[linux:notes:kernel_parameters|More Kernel Parameters]]
* Last updated: 2025/12/25
quiet bgrt_disable lsm='' acpi_osi='!' acpi_osi='Windows 2013' reboot='pci' hibernate='no' idle='halt' nohz='off' preempt='full' iommu='pt' io_delay='none' kmemleak='off' memory_corruption_check='0' nokaslr nosgx add_efi_memmap efi_no_storage_paranoia enable_mtrr_cleanup clk_ignore_unused pd_ignore_unused regulator_ignore_unused no_hash_pointers init_on_alloc='0' init_on_free='0' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' module_blacklist='iTCO_wdt,intel_oc_wdt' nowatchdog tsc='nowatchdog' drm_kms_helper.poll='0' drm_kms_helper.fbdev_emulation='0' hostname='localhost'
==== modprobe.d ====
* [[linux;notes;modprobe.d_tweaks#spinesnap|Notes]]
==== Dracut ====
sudo -e '/etc/dracut.conf.d/99-spinesnap.conf' && sudo dracut --force --regenerate-all
early_microcode="no"
nofscks="yes"
kernel_cmdline="rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0"
force_drivers+=" i915 "
omit_drivers+=" intel_oc_wdt iTCO_wdt iTCO_vendor_support thunderbolt "
omit_dracutmodules+=" i18n resume suse-xfs "
# End
==== Fan Speed ====
****
cat '/sys/firmware/acpi/platform_profile' && echo 'performance' | sudo tee '/sys/firmware/acpi/platform_profile' > '/dev/null' && cat '/sys/firmware/acpi/platform_profile'
==== systemd-analyze ====
* 2025/12/25
Startup finished in 4.332s (firmware) + 493ms (loader) + 335ms (kernel) + 1.336s (initrd) + 2.253s (userspace) = 8.751s
graphical.target reached after 2.248s in userspace.
systemd-analyze
==== lsinitrd ====
* 2025/12/25
Image: /boot/initrd-6.18.2-1-default: 51M
lsinitrd
===== EFI Fix =====
sudo efibootmgr
sudo efibootmgr --delete-bootnum --bootnum '0000'
sudo efibootmgr --create --disk '/dev/nvme0n1p1' --gpt --loader '\EFI\opensuse\grubx64.efi' --full-dev-path --label 'opensuse' --timeout '0'
====== Drive Maintenance ======
===== Trim =====
sudo systemctl enable 'fstrim.timer' --now
sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l
sudo fstrim -v -a
===== EFI =====
* ''nvme0n1p1'' type ''vfat''
sudo umount '/boot/efi' && sudo dosfsck -a -t -w -v '/dev/nvme0n1p1' && sudo mount '/boot/efi'
====== 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'
# Intel
export force_guc_low_latency='false'
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'
# Test
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-tweaks.conf' && sudo dracut --force --regenerate-all
# Compression
compress="cat"
# Strip
do_strip="yes"
aggressive_strip="yes"
hostonly="yes"
hostonly_mode="strict"
reproducible="no"
enhanced_cpio="no"
i18n_install_all="no"
# End
===== fstab =====
****
sudo -e '/etc/fstab'
==== swap ====
****
,discard=once
==== ext2 ====
* ''/ type ext2''
,noquota,noiversion,noatime
==== EFI ====
* ''/boot/efi type vfat''
,discard,tz=UTC,shortname=winnt
===== Wine =====
* [[linux;notes;wine|Notes]]
sudo -e '/etc/profile.d/wine-tweaks.sh'
# Staging
export STAGING_SHARED_MEMORY='1'
export STAGING_WRITECOPY='1'
export WINE_LARGE_ADDRESS_AWARE='1'
# Logging
export WINEDEBUG='-all'
export VKD3D_DEBUG='none'
export VKD3D_SHADER_DEBUG='none'
export DXVK_LOG_LEVEL='none'
# End
====== Scripts ======
===== Updater =====
* [[#keyboard_shortcuts|Keyboard shortcut]]
mkdir -p ~/'.local/scripts' && nano ~/'.local/scripts/opensuse-updater.sh' && chmod +x ~/'.local/scripts/opensuse-updater.sh'
#!/bin/bash
sudo '/usr/bin/zypper' clean --all
sudo '/usr/bin/zypper' refresh --force --services
sudo '/usr/bin/zypper' dist-upgrade --details --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change
rm -Rf ~/'.cache/mesa_shader_cache/'* ~/'.cache/thumbnails/'*
rm -Rf ~/'.cache/mozilla/firefox/'* ~/'.cache/thunderbird/'*
localsearch reset --filesystem
sync
zypper ps --short
echo 'Done.'
# End
~/'.local/scripts/opensuse-updater.sh'
====== Notable Folders and Commands ======
* See [[linux;notes;misc]]