How to Install Dusk on Steam Deck (Twilight Princess Guide)
Install Dusk Twilight Princess on Steam Deck. Verified setup flow, real settings paths, native gyro aim, and the one published Deck performance datapoint.
The Steam Deck runs Dusklight via the Linux x86_64 build. Setup is straightforward and uses the same “add as non-Steam game” pattern that works for other Linux applications on the Deck.
This guide is verified against the Dusklight source code, the official FAQ, and Steam Deck HQ’s review (the only published Deck benchmark to date).
Time required: ~10–15 minutes Difficulty: Easy
What You’ll Need
- A Steam Deck (LCD or OLED — both run the same Linux x86_64 build)
- Your own legal GameCube TP disc dump in any supported format (ISO, GCM, CISO, GCZ, NFS, RVZ, WBFS, WIA, TGC). If you don’t have one yet, see How to dump your TP disc legally.
- A few minutes in Desktop Mode
Step 1 — Switch to Desktop Mode
- Press STEAM
- Select Power
- Select Switch to Desktop
The Deck reboots into KDE Plasma. Use the right trackpad as a mouse, the right trigger as left-click, and STEAM + X for an on-screen keyboard.
Step 2 — Download the Linux Build
- Open Firefox
- Go to github.com/TwilitRealm/dusklight/releases
- Under v1.4.1 Assets, download
Dusklight-v1.4.1-linux-x86_64.AppImage(~32 MB)
Dusklight is distributed as a single AppImage rather than a .zip — easier to manage on the Deck. Compute SHA-256 with sha256sum and compare against the official release page if you want to verify.
Step 3 — Make Executable
- Open Konsole (terminal) from the start menu under “System”.
- Mark the AppImage executable and move it somewhere stable:
cd ~/Downloads chmod +x Dusklight-v1.4.1-linux-x86_64.AppImage mkdir -p ~/Applications mv Dusklight-v1.4.1-linux-x86_64.AppImage ~/Applications/ - Drop your GameCube disc dump into a folder you’ll remember:
Then drag-and-drop your disc image there using the Dolphin file manager (KDE’s, not the GameCube emulator).mkdir -p ~/Games/TwilightPrincess
Step 4 — Add to Steam as a Non-Steam Game
- Open the Steam desktop client (shortcut on the desktop)
- Games → Add a Non-Steam Game to My Library…
- Browse… and pick
~/Applications/Dusklight-v1.4.1-linux-x86_64.AppImage - Click Add Selected Programs
Optional polish:
- Right-click the entry → Properties → rename to “Dusklight: Twilight Princess” for clarity
- Add cover art from SteamGridDB — Dusklight artwork is already uploaded
Step 5 — Return to Game Mode
- Double-click Return to Gaming Mode on the desktop
- The Deck reboots into the standard Steam UI
- Find Dusklight in your library
- Press A to launch
The first launch shows the Dusklight prelaunch menu. Highlight Select Disc Image, press A, and pick your disc dump from the Files dialog. Dusklight verifies the hash, shows “Disc ready.”, and the button changes to Play.
Step 6 — Configure Controls and Gyro Aim
The Deck’s default GameCube-style layout works without configuration. To customize, the verified paths are:
Enable native gyro aim (recommended)
Settings → Input → Gyro → Gyro Aim → toggle on
Then Gyro Input Method →
Sensor(this reads the Deck’s IMU directly)
Adjust Gyro Pitch Sensitivity, Gyro Yaw Sensitivity, and Gyro Deadband to taste.
Or use mouse aim instead
Settings → Input → Gyro → Gyro Input Method →
Mouse
This routes input through a virtual mouse, which Steam Input can drive from the Deck’s gyro if you want to use Steam’s gyro-to-mouse feature instead.
Trackpad-as-mouse alternative
If you prefer the right trackpad as your aiming surface, leave Gyro Aim off and use the Deck’s standard Steam Input mouse mapping.
⚠️ Use only one gyro method at a time. Native sensor + Steam Input gyro-to-mouse will fight each other.
Common Steam Deck-relevant settings
| Setting | Path |
|---|---|
| Toggle fullscreen | Settings → Video → Display → Toggle Fullscreen |
| Show FPS counter | Settings → Video → Display → Show FPS Counter |
| Unlock framerate | Settings → Video → Rendering → Unlock Framerate |
| Internal resolution | Settings → Video → Resolution → Internal Resolution |
| 4:3 aspect lock | Settings → Video → Display → Lock 4:3 Aspect Ratio |
Performance: What’s Actually Known
Two verified datapoints (as of 2026-05-13):
“Even when pushing it to 90 FPS, it will still stick below 11W battery drain.” — Steam Deck HQ, 2026-05-10
“On Steam Deck OLED, expect a locked 60 fps at the device’s native resolution with significant headroom.” — Held Games, 2026-05-11 (qualitative)
That’s it. No hours-of-battery numbers, no settings disclosed, no per-TDP FPS curve. No ETA Prime / The Phawx / Retro Game Corps Deck-specific Dusklight video has surfaced yet. We’ll update this section as more verified benchmarks appear.
What we can reasonably extrapolate (but cannot verify):
- The GameCube ran TP at 30 FPS targeting 485 MHz hardware. Modern Deck silicon is dramatically faster.
- Project’s stated framerate target: “up to 120 FPS” (Time Extension pre-release coverage). This is a design goal, not a measured ceiling on the Deck.
- Battery life will depend heavily on framerate cap, TDP setting, and refresh rate. Test what works for you and adjust.
Save Files on Steam Deck
Per the official FAQ (twilitrealm.dev/faq):
- Linux save path:
~/.local/share/TwilitRealm/Dusklight/USA/Card A/ - Replace
USAwithEURif you’re using the PAL disc - Save filename:
01-GZ2*-gczelda2.gci
If you’ve been playing TP in Dolphin on PC and want to bring your save:
- Find your Dolphin GCI on PC:
Documents/Dolphin Emulator/GC/USA/Card A/01-GZ2E01-gczelda2.gci - Copy it to your Deck (USB / cloud / SCP)
- Drop it into
~/.local/share/TwilitRealm/Dusklight/USA/Card A/ - Restart Dusklight; the save appears in the load menu
Common Issues
”Permission denied” when launching from Steam
You skipped the chmod +x step. Re-run chmod +x ~/Applications/Dusklight-v1.4.1-linux-x86_64.AppImage from Konsole.
Steam doesn’t show the executable in the file picker
Steam’s “Add Non-Steam Game” can hide files without an extension. In the file picker, set the dropdown to All Files.
Audio crackles
Try toggling the audio backend (PulseAudio ↔ PipeWire) at the Deck system level.
Game runs but the controller does nothing
Steam Input may have hijacked the controller for desktop mode. Open the in-game overlay → Controller Settings → Templates → pick Gamepad, not Desktop.
My ROM dump is rejected
Verify SHA-1 in Konsole:
sha1sum ~/Games/TwilightPrincess/your-dump.iso
Should match 75edd3ddff41f125d1b4ce1a40378f1b565519e7 (NTSC-U) or 2601822a488eeb86fb89db16ca8f29c2c953e1ca (PAL). If not, re-dump.
App tries to write to root filesystem
There was a known early Linux AppImage bug (#818) showing:
[fatal] [dusk] Unable to get PrefPath: Couldn't create directory '/TwilitRealm': 'Permission denied'
Since AppImage is now the official Linux distribution path, this has been worked around. If it still appears on v1.4.1, file an issue and clean up the orphan /TwilitRealm folder (sudo rm -rf /TwilitRealm) if it exists at root.
Final Setup Checklist
- ✅ Dusklight launches from Game Mode
- ✅ Title screen shows; audio plays
- ✅ Disc verified; status reads Disc ready.
- ✅ Gyro aim configured (native or mouse mode)
- ✅ Save tested (save in Ordon Village, restart, verify load)
Common Problems on Steam Deck
- AppImage permission-denied error → #818 fix
- Hash verification failed → fix guide
- Stuck at 30 FPS → checklist
- Dolphin save not loading → migration guide
- Save sync from Deck to PC → cross-device sync guide
- Full hub → all known issues
Useful Add-ons
- 🎨 Henriko Magnifico 4K texture pack — install guide
- 🚀 Framerate & 60 FPS, explained
- 🎲 Twilight Princess Randomizer setup
- 🆚 Why Dusklight beats Cemu on Steam Deck (Cemu has open Vulkan texture bugs on Deck)
- Best Steam Deck accessories for Zelda (affiliate)
Last updated: 2026-06-20. We update this guide as Deck-specific patches and benchmarks are published.