linux:distros:opensuse_tumbleweed_gnome
Table of Contents
Information
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
Installation Notes
Partitioning
- ext4
/
- 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]
PackageKit
- PackageKit is an long-standing, consistent annoyance when using
zypper
at random times - This uninstalls it, and prevents it from being automatically re-installed
sudo systemctl stop 'packagekit' && sudo zypper remove 'PackageKit' && sync
sudo zypper addlock 'PackageKit'
Software
List
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
andEDITOR
tonano
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 evolution* gnome-clocks gnome-contacts gnome-maps gnome-music gnome-packagekit gnome-photos gnome-remote-desktop gnome-software gnome-weather patterns-gnome-gnome_games polari totem vinagre xscreensaver yelp
sudo zypper addlock baobab cheese evolution* gnome-clocks gnome-contacts gnome-maps gnome-music gnome-packagekit gnome-photos gnome-remote-desktop gnome-software gnome-weather patterns-gnome-gnome_games polari totem vinagre xscreensaver yelp
General
sudo zypper install filezilla foliate gimp google-noto-*-fonts gnome-extensions keepassxc nautilus-file-roller gstreamer-plugin-openh264 libreoffice mpv rhythmbox MozillaThunderbird transmission-gtk vlc 7zip android-tools aria2 binutils htop icoutils nano secret-tool sensors unar yt-dlp
Intel
- 2025/04/22:
ucode-intel
is beneficial on Coffee Lake 4)
ucode-intel intel-media-driver intel-gpu-tools
libvulkan_intel
Games
doomsday FlightGear
Wine
wine-staging wine-staging-32bit
Tor Browser
torbrowser-launcher
Settings
Keyboard Shortcuts
kgx
bash -c "secret-tool lookup 'keepass' 'default' | keepassxc --pw-stdin ~/'Documents/keepass.kdbx'"
bash -c "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
Rhythmbox
- See Internet Radio
Kernel Options
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' && sudo restorecon -F -I '/etc/sysctl.d/99-i915-perf.conf' && 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' && sudo restorecon -F -I '/etc/sysctl.d/99-sysrq.conf' && 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' && sudo restorecon -F -I '/etc/sysctl.d/99-swappiness.conf' && cat '/etc/sysctl.d/99-swappiness.conf'
sudo sysctl 'vm.swappiness'
Boot Loader
Config
sudo yast2 'bootloader'
Spinesnap
- Last updated: 2024/05/18 with GRUB
preempt='none' nohz='off' acpi_osi='Linux' i915.enable_dc='0' i915.enable_fbc='0' i915.enable_psr='0' i915.enable_hangcheck='0' i915.panel_use_ssc='0' i915.nuclear_pageflip='1' i915.request_timeout_ms='200000' i915.enable_guc='3' pcie_ports='native' pci='pcie_bus_perf,realloc,pcie_scan_all,big_root_window' pcie_aspm='off' video='HDMI-A-1:1920x1080MR@75' reboot='pci' idle='halt' usbhid.quirks='0x1b1c:0x1b75:0x20000408' usbcore.quirks='1b1c:1b75:gn'
GNOME
Extensions
External Monitor Settings
- This copies the configured monitor settings from the current user to
gdm
and also applies it to the log-in screen - Notably useful for setting a laptop's built-in screen as disabled for the log-in screen while used in a dock configuration
sudo cp --remove-destination ~/'.config/monitors.xml' ~gdm/'.config/monitors.xml' && sudo chown 'gdm':'gdm' ~gdm/'.config/monitors.xml'
Undo
sudo rm ~gdm/'.config/monitors.xml' && sync
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'
mpv
mkdir -p ~/'.config/mpv' && nano ~/'.config/mpv/mpv.conf'
save-position-on-quit sub-auto=fuzzy force-window=yes profile=gpu-hq scale=ewa_lanczossharp cscale=ewa_lanczossharp video-sync=display-resample interpolation tscale=oversample hwdec=vaapi hwdec-codecs=all
vo=dmabuf-wayland
Secure Shell
- See Client notes to generate/restore public key
Disk Drives
Disable barriers
Swap
- According to the
swapon
man page, setting this infstab
is acceptable
sudo -e '/etc/fstab'
,discard=once
Trim
sudo systemctl enable 'fstrim.timer' --now && sudo systemctl start 'fstrim' && sync && sudo systemctl status 'fstrim' -l
Time
2024/05/06: Even though
chrony
does NTP sync, it doesn't seem to write it to the hardware clock which is usually wrong after a CMOS reset 8)- This sets the hardware clock to the current system/OS clock
- TODO: Figure out
chrony
command to do NTP sync
sudo hwclock --systohc
UTC
- Set RTC to UTC
Needed if Windows is installed first
Windows should also be set to UTC
TODO: Should this be ran on openSUSE that's using
chrony
instead?
sudo timedatectl set-local-rtc '0'
Verify
timedatectl | grep local
Wine
- See Wine
Drive Maintenance
EFI
/dev/nvme0n1p1 on /boot/efi type vfat
sudo umount '/boot/efi'
sudo dosfsck -a -t -w -v '/dev/nvme0n1p1'
sudo mount '/boot/efi'
ext4
- TODO
New Settings
gsettings
gdm
sudo runuser -u 'gdm' -- dbus-run-session gsettings set 'org.gnome.desktop.interface' 'enable-animations' 'false'
sudo runuser -u 'gdm' -- dbus-run-session gsettings set 'org.gnome.mutter' 'experimental-features' '[]'
User
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'
hostname
sudo hostnamectl hostname 'Spinesnap'
sudo hostnamectl hostname 'x'
Tweaks
General
sudo -e '/etc/profile.d/general-tweaks.sh' && sudo restorecon -F -I '/etc/profile.d/general-tweaks.sh'
# GTK export GSK_RENDERER='vulkan' # Mesa export MESA_NO_ERROR='1' export mesa_glthread='false' export MESA_DISK_CACHE_DATABASE='0' export MESA_DISK_CACHE_SINGLE_FILE='0' # End
Dracut
sudo -e '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
compress="cat" do_strip="yes" aggressive_strip="yes" hostonly="yes" hostonly_mode="strict" fileloglvl="0" sysloglvl="0" stdloglvl="0" # End
Undo
sudo rm -f '/etc/dracut.conf.d/99-custom.conf' && sudo dracut --force --regenerate-all
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'
Server
- For workstations that run servers as a secondary directive
- For headless servers, use openSUSE TW (Server)
Automatic Updates
Service
sudo -e '/etc/systemd/system/suse-up.service'
[Service] Type=oneshot ExecStartPre='/usr/bin/zypper' clean --all ExecStart='/usr/bin/zypper' --non-interactive refresh --force --services ExecStart='/usr/bin/zypper' --non-interactive dist-upgrade --auto-agree-with-licenses --allow-downgrade --allow-name-change --allow-arch-change --allow-vendor-change ExecStartPost='/usr/bin/sync' ExecStartPost='/usr/bin/systemctl' reboot
Timer
- 06:00 Oak
sudo -e '/etc/systemd/system/suse-up.timer' && sudo systemctl daemon-reload && sudo systemctl enable 'suse-up.timer' --now
[Unit] Description=Software Package Maintenance and Updater After=network-online.target Wants=network-online.target [Timer] OnCalendar=*-*-* 06:00:00 Persistent=true [Install] WantedBy=timers.target
Notable Folders and Commands
- See misc_linux
4)
ucode-intel
updated i5-8400H with Latitude 5591 1.38 BIOS (2025/04/17) from 0x000000f8
to 0x000000fa
and matches CFL-H/S/E35)
for preventing Tearing on Xorg sessions in some situations
6)
defaults,barrier=0
7)
defaults,discard
8)
starting Firefox quickly after rebooting has a wrong system clock certificate failure error
/srv/www/wiki/data/pages/linux/distros/opensuse_tumbleweed_gnome.txt · Last modified: by Sean Rhone