bazzite-sweet

Bazzite-specific setup, optimization, and troubleshooting — Steam Deck tweaks, Flatpak management, Wayland, GNOME/KDE, uBlue image layers

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "bazzite-sweet" with this command: npx skills add silverod/bazzite-sweet

Bazzite Sweet — Your Bazzite Companion

Everything specific to Bazzite: setup, optimization, Steam Deck tweaks, Flatpak management, Wayland compositors, and uBlue image customization.

When to Use

  • Setting up or tweaking Bazzite on desktop or Steam Deck
  • Managing Flatpaks and system packages on Bazzite
  • Steam Deck gaming optimization
  • Wayland display/compositor issues
  • uBlue custom images and rebase
  • Bazzite-specific bugs or quirks
  • Switching between Bazzite editions (Nvidia, Wayfire, Sway, KDE)

Bazzite Quick Reference

Editions

EditionUse Case
bazziteGNOME-based desktop
bazzite-nvidiaGNOME + Nvidia proprietary
bazzite-deckSteam Deck (KDE Plasma)
bazzite-deck-nvidiaSteam Deck + Nvidia
bazzite-archArch-based (unstable)

Core Identity

Bazzite is built on Fedora Atomic (rpm-ostree) + uBlue framework. Key facts:

  • Immutable root filesystem (use rpm-ostree for system changes)
  • Flatpak for GUI apps (pre-configured with Flathub + uBlue repos)
  • No dnf install — layer packages with rpm-ostree install
  • Updates are atomic deployments
  • Steam Deck variant uses KDE Plasma (not GNOME)

System Status

# Check Bazzite version and deployment
rpm-ostree status

# Check for updates
rpm-ostree upgrade --check

# Apply update
rpm-ostree upgrade && systemctl reboot

# Current kernel
uname -r

# Check Bazzite-specific services
systemctl --user list-units 'bazzite*' 2>/dev/null
systemctl list-units 'bazzite*' 2>/dev/null

Flatpak Management

Bazzite comes with Flathub and uBlue Flatpak repos pre-configured.

# List all Flatpaks
flatpak list

# List only user-installed
flatpak list --user --app

# Update all Flatpaks
flatpak update --assumeyes

# Search for an app
flatpak search "app name"

# Install from Flathub
flatpak install flathub <app-id>

# Install from uBlue repo
flatpak installublue <app-id> 2>/dev/null || flatpak install <app-id>

# Remove
flatpak uninstall <app-id>

# Clear unused runtimes
flatpak uninstall --unused

# Check repo list
flatpak remotes

# Add Flathub if missing
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo

# Fix Flatpak issues
flatpak repair
flatpak update --app

Essential Gaming Flatpaks

# Core gaming
flatpak install flathub com.valvesoftware.Steam
flatpak install flathub net.lutris.Lutris
flatpak install flathub com.usebottles.bottles
flatpak install flathub org.prismlauncher.PrismLauncher
flatpak install flathub com.heroicgameslauncher.hgl
flatpak install flathub io.github.Foldex.Exodus

# Streaming
flatpak install flathub dev.lizardbyte.app.Sunshine

# Media
flatpak install flathub org.freedesktop.Platform.VAAPI.Intel
flatpak install flathub org.freedesktop.Platform.VAAPI.Intel.i386

# GPU-specific (Nvidia)
flatpak install flathub org.freedesktop.Platform.GL32.nvidia
flatpak install flathub org.freedesktop.Platform.GL.nvidia

Steam Deck Specific

Steam Deck UI

# Check Gamescope (Steam Deck compositor)
gamescope --help 2>/dev/null | head -5

# Current session type
echo $XDG_SESSION_TYPE

# Check if in Game Mode
# Game Mode = Weston compositor running
ps aux | grep -E 'gamescope|weston' | grep -v grep

# Check Steam Deck GPU
cat /sys/class/drm/card*/device/vendor 2>/dev/null
# 0x1002 = AMD (Van Gogh APU)

# Check thermal
cat /sys/class/thermal/thermal_zone*/temp 2>/dev/null | awk '{print $1/1000"°C"}'

# Check battery (Steam Deck OLED/LCD)
cat /sys/class/power_supply/BAT*/capacity 2>/dev/null
cat /sys/class/power_supply/BAT*/status 2>/dev/null

Steam Deck Tweaks

# Set Gamescope fractional scaling
GAMESCOPE_FSR_SHARPNESS=2 gamescope -W 1280 -H 800 -f -- steam

# Enable FSR upscaling
GAMESCOPE_FSR_SHARPNESS=5 gamescope -f -W 1920 -H 1200 -w 1280 -h 800 -- %command%

# Steam Deck OLED: native resolution
gamescope -W 1280 -H 800 -f -- %command%

# Check controller input
evtest /dev/input/event* 2>/dev/null | head -10

# Check SD card
lsblk -o NAME,SIZE,TYPE,MOUNTPOINT | grep -E 'mmcblk|sd'

Switching Desktop Mode

# Desktop Mode = KDE Plasma Wayland
# Game Mode = Gamescope/Weston

# Check current mode
# Game Mode: gamescope process running, no KDE
# Desktop Mode: plasmashell running
ps aux | grep -E 'plasmashell|gamescope' | grep -v grep

# Force restart into Desktop Mode
# Hold power button → select "Switch to Desktop"

# In Desktop Mode, check Wayland
loginctl show-session $(loginctl | grep $(whoami) | awk '{print $1}') -p Type

Wayland & Display

# Wayland compositor info
echo $WAYLAND_DISPLAY
echo $XDG_CURRENT_DESKTOP

# List connected displays
wlr-randr 2>/dev/null || xrandr 2>/dev/null || kscreen-doctor --outputs 2>/dev/null

# Screenshots
grim screenshot.png          # wlroots (Wayfire/Sway)
spectacle -f                 # KDE Plasma
gnome-screenshot -f          # GNOME

# Screen recording
wf-recorder -f recording.mp4  # wlroots
OBS                          # Flatpak

# Check HDR support
wlr-randr 2>/dev/null | grep -i hdr

Layering Packages

# Install CLI tools (requires reboot)
rpm-ostree install gh vim tmux htop neofetch fastfetch

# Install development tools
rpm-ostree install gcc make cmake git

# Install Wine (for Lutris/Bottles)
rpm-ostree install wine

# Overlay specific RPM
rpm-ostree overlay /path/to/package.rpm

# Remove layered package
rpm-ostree uninstall <package>

# Reset to base image (removes all overlays)
rpm-ostree override reset

# Apply and reboot
systemctl reboot

Rebase & Updates

# Rebase between Bazzite editions
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bazzite:stable
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-nvidia:stable
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/ublue-os/bazzite-deck:stable

# Rollback if something breaks
rpm-ostree rollback
systemctl reboot

# Pin current deployment
rpm-ostree pin

# Clean old deployments
rpm-ostree cleanup -rp

uBlue Custom Images

Bazzite is built on the uBlue framework. You can create custom images:

# Check if using custom image
cat /etc/os-release | grep -E 'IMAGE|VARIANT'

# uBlue overlay (apply after each update)
# Place in /etc/ublue-os/
ls /etc/ublue-os/ 2>/dev/null

# Check uBlue signing
rpm-ostree status | grep -i sign

Performance & Tweaks

# Enable MangoHud globally
flatpak override --user --env=MANGOHUD=1 com.valvesoftware.Steam

# Check GPU performance
cat /sys/class/drm/card0/device/pp_dpm_sclk 2>/dev/null
cat /sys/class/drm/card0/device/pp_dpm_mclk 2>/dev/null

# Thermal governor
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor | sort -u

# Memory usage
free -h

# Disk usage
df -h /

# udev rules for controllers
ls /etc/udev/rules.d/ 2>/dev/null

Troubleshooting

ProblemSolution
Update stuckrpm-ostree cancel then retry
Flatpak won't launchflatpak repair then restart
No soundsystemctl --user restart wireplumber pipewire
Display wrong resolutionkscreen-doctor --outputs (KDE)
Steam Deck won't enter Game ModeCheck systemctl --user status for errors
Package conflict after layeringrpm-ostree override replace <url>
SD card not mountinglsblk then sudo mount /dev/mmcblk0p1 /run/media/deck/sd
Controller not detectedevtest + check steam-input service
Wayland app blurryCheck fractional scaling, try integer scale

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

deckctl — Steam Deck / Bazzite Manager

Steam Deck & Bazzite system management — gamescope, flatpak, podman, GPU, performance, game mode, system health

Registry SourceRecently Updated
710Profile unavailable
General

Container Gaming — Podman, Distrobox, Flatpak, Sunshine

Container-based gaming setup on Linux — Podman, Distrobox, Flatpak gaming, Wine/Proton containers, Sunshine streaming

Registry SourceRecently Updated
630Profile unavailable
General

rpm-ostree Toolkit — Fedora Atomic / Bazzite Manager

Immutable OS management for Fedora Atomic / Bazzite — rpm-ostree layering, rollbacks, rebasing, system upgrades

Registry SourceRecently Updated
690Profile unavailable
Automation

Niri IPC

Control the Niri Wayland compositor on Linux via its IPC (`niri msg --json` / $NIRI_SOCKET). Use when you need to query Niri state (outputs/workspaces/windows/focused window) or perform actions (focus/move/close windows, switch workspaces, spawn commands, reload config) from an OpenClaw agent running on a Niri session.

Registry SourceRecently Updated
2K0Profile unavailable