Skip to content
Mattia Tadini edited this page Sep 22, 2026 · 9 revisions

Apps

SkillFishOS ships a suite of native PyQt6 apps, grouped under a dedicated "SkillFishOS" menu category. Every app is an updatable .deb from the signed APT Repository, and each has a full app page (screenshots + description) in the SkillFishOS Hub.

App Package What it does
SkillFishOS Control Center skillfish-control-center One window: Status, Tuner (CPU/GPU/Cores/CU/VRAM), Fan, Monitor, Games, Profiles, Kernel, Snapshots, AI, Emulators, Console, ISO — no terminal
SkillFishOS Hub skillfish-hub Software centre across APT + Flatpak + Snap. Use it for system updates instead of Discover, which leaves the next ISO
Base skillfish-base Hardware watchdog (auto-reboot on hard hangs) + boot-time freeze detector with desktop notification
Remote Manager skillfish-dashboard Control the machine from a browser on the LAN: telemetry, controls, fan, desktop over KVM, terminal, on-device AI, packages. PAM login, and it only accepts connections from the networks the machine is attached to
V/F Governor skillfish-vf-governor The service that actually drives GPU voltage and frequency through the SMU, with a ceiling that heat and power can lower and give back. The Tuner is its face; this is the thing doing the work
Scheduler skillfish-scx Loads scx_bpfland while a game runs and takes it out when the game quits. Armed by GameMode, not always on
Mesa for the BC-250 skillfish-mesa-gfx1013 Our RADV build with the compute queues this GPU keeps closed in the stock driver. Per launcher or system-wide, from the Games section
First boot skillfish-primo-avvio The window that opens once, on the first start of a freshly installed system, and lets you pick which software to install
Boot look skillfish-boot The boot splash and the kernel command line: what the machine shows and what it is told before the desktop exists
Dolby Digital skillfish-audio-dolby Live AC-3 5.1 encoding over HDMI and DisplayPort, for receivers that want a bitstream rather than PCM
GDDR6 temperature skillfish-gddr6 Reads the temperature of the eight GDDR6 chips on demand, through a payload in the SMU's SRAM. Recommended by the Control Center, and removable on its own for anyone who would rather not have firmware touched
SMU backend skillfish-smu-oc bc250_smu_oc by bc250-collective (MIT), in /opt/bc250_smu_oc: what the Tuner, the Remote Manager and the thermal guard use to set the CPU clock, voltage offset and temperature limit. Its boot service is guarded to the BC-250 and stays off until Save at boot. Required by the Control Center
Video encoder skillfish-vaapi-encoder VA-API driver that encodes H.264 and HEVC on the 40 compute units, since the BC-250 has no video engine. Switches itself on only on a BC-250
Desktop guard skillfish-desktop-guard No files: a protected package that depends on KDE Plasma, so no update (Discover included) can remove the desktop while Debian is rebuilding Qt and KDE. Pulled in by skillfish-base
vkpeak skillfish-vkpeak Vulkan peak-throughput benchmark, built by us from nihui/vkpeak (MIT). The Control Center runs it for the GPU benchmark and the CU test; installed in /usr/lib/skillfish/vkpeak, recommended by the Control Center

Six packages that used to be standalone apps — skillfish-tuner, skillfish-monitor, skillfish-fan, skillfish-kernel-manager, skillfish-snapshots, skillfish-ai-panel — are still installed, but only for the daemons and helpers they carry (fan daemon, tuner helper, CU boot service, Unsloth launcher and updater). Their commands still work; each just opens the Control Center on the matching section. skillfish-console still adds the "SkillFishOS Console (Big Picture)" entry on the SDDM login screen, and skillfish-emulators/skillfish-iso-mount still back the Control Center's Emulators and ISO sections (the latter also keeps its Dolphin context-menu entry). See SkillFishOS Control Center.

The "SkillFishOS" menu

A skillfish-menu package adds the X-SkillFishOS category to each .desktop, a skillfishos.directory, and .menu fragments so the submenu shows up reliably under KDE.

Live system HUD

Beyond the apps, a translucent HUD overlay shows per-core CPU load, clocks, temps, power draw, VRAM/RAM, active CUs, fan RPM and the Bluetooth controller battery — all from real sensors.

Two notes for anyone writing a new PyQt6 app here

  1. Use an absolute Exec= in the .desktop (/usr/local/bin/skillfish-foo). KIO/klauncher has no /usr/local/bin on its PATH, so a relative Exec fails with "Cannot find the program" from the menu.
  2. Keep a Python reference to the top-level window (w = Widget(); w.show()), otherwise CPython garbage-collects the window right after show() and you get an invisible 1×1 window while the process keeps running.

See SkillFishOS Hub for installing/updating apps and APT Repository for how the packages are delivered.

Clone this wiki locally