title: “How to Install Celeste on Linux (and Why It Runs Better Here Than You Think)”
tags:
- Celeste
- Linux Gaming
- Steam
- Proton
- Platformer
-
Indie
If you switched to Linux in the last few years and worried your platformer habit was doomed, Celeste is the game to install first. It’s a precision platformer from Maddy Makes Games (Matt Thorson, Noel Berry, Lena Raine), it has a native Linux build out of the box, the controller support is excellent, and on Steam Deck it sits comfortably at 60 fps without you touching anything. The whole setup takes about 90 seconds once Steam is running.
Below is the full walkthrough: install Steam, install Celeste, configure a controller if you have one, tweak the launcher, fix the few small Linux quirks that have been reported since launch, and what to do about Steam Cloud saves. There’s also a short “what’s running under the hood” section at the end for the people who care that Celeste is built on FNA (the open-source reimplementation of Microsoft XNA) and MonoGame, both of which port to Linux essentially for free.
Basic info
| Item | Details |
|---|---|
| Game | Celeste (蔚蓝) |
| Engine | FNA + MonoGame (XNA-derived) |
| Steam App ID | 504230 |
| Release date | January 25, 2018 |
| Price | $19.99 (frequently on sale for $1.99–$4.99) |
| Platforms | Windows, macOS, Linux (native), Steam Deck Verified |
| Reviews | 96% Overwhelmingly Positive (143k+ reviews on Steam) |
| Controller support | Full (Xbox, DualShock 4/5, Switch Pro, generic HID) |
| Rating | PEGI 7 / ESRB E10+ |
The trailer, store page, and Linux-specific discussion threads all live at store.steampowered.com/app/504230/Celeste. The official site (with the soundtrack downloads and dev blog) is celestegame.com.

What you’ll need
Hardware-wise, Celeste is the rare game that runs on literally anything with a screen made in the last fifteen years:
- CPU: any dual-core x86_64 or aarch64 chip from the last decade
- RAM: 256 MB to 1 GB depending on resolution
- GPU: anything with OpenGL 3.0+ support. Mesa on AMD/Intel, the proprietary NVIDIA driver, or the open
nvidiadriver all work. - Storage: 1.2 GB free
- Controller (strongly recommended): a DualShock 4, DualSense, Xbox One/Series, Switch Pro, or Steam Controller. Keyboard works fine, but Celeste was designed around an analog stick and a comfortable shoulder button.
Software prerequisites:
-
A working Linux desktop: Ubuntu 22.04+, Fedora 38+, Arch, Nobara, Pop!_OS, SteamOS — anything modern will do.
-
Vulkan drivers for the Steam client itself (Celeste itself is OpenGL only, but Steam wants Vulkan):
# Debian / Ubuntu sudo apt install libvulkan1 mesa-vulkan-drivers vulkan-tools # Fedora sudo dnf install vulkan-loader mesa-vulkan-drivers vulkan-tools # Arch sudo pacman -S vulkan-icd-loader mesa-vulkan-drivers vulkan-tools -
Steam (installation steps below).
Install — the fast path
If Steam is already installed, skip to step 3.
1. Install Steam on your distro
On Debian / Ubuntu / Linux Mint / Pop!_OS / Zorin:
# Enable multilib for 32-bit libraries Steam still ships
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install steamOn Fedora / Nobara:
sudo dnf install steamOn Arch / Manjaro / EndeavourOS:
sudo pacman -S steamThe Steam snap and Flatpak (flathub install com.valvesoftware.Steam) also work; the Flatpak version is the cleanest option if you don’t want to fight with the i386 multilib libraries.
2. First-time Steam setup
Launch Steam. If you’re on Ubuntu 22.04+ or any distro that defaults to Wayland, you may want to force Steam into X11 mode for older games:
# Launch Steam on X11 (more compatible with Proton-era titles)
steam-runtime -session=steamOr from a desktop shortcut: env STEAM_RUNTIME=1 steam works in most launchers.
In Steam:
- Sign in to your account.
- Settings → Compatibility: enable “Enable Steam Play for supported titles” and “Enable Steam Play for all other titles”. Pick Proton Experimental as the default tool.
- Settings → Controller: enable “Generic Gamepad Configuration Support” if your controller isn’t an Xbox/PS/Switch model. For Xbox, DualShock 4, and DualSense you usually don’t need to touch this — Steam recognizes them automatically.
3. Install Celeste
In the Steam client:
- Search for “Celeste” in the Store, or open store.steampowered.com/app/504230/Celeste in your browser and click “Add to Cart”.
- Buy it. Even at full price ($19.99) it’s a bargain; the sale price of $4.99 shows up multiple times per year.
- In your Library, right-click Celeste → Properties → Compatibility → confirm it says “Force the use of a specific Steam Play compatibility tool” and the dropdown shows Proton Experimental or Proton 9.x. You usually don’t need to set this manually because Celeste has a native Linux build, but having it explicit prevents Steam from accidentally trying Proton translation.
- Click Install. The download is ~600 MB.
- Hit Play.
That’s it. The launcher opens, you press any button, the title screen appears, and you’re climbing the mountain.
4. Configure your controller (if needed)
Most controllers Just Work on Linux via Steam Input. If yours doesn’t:
- Plug the controller in (USB or Bluetooth).
- Steam → Settings → Controller → General Controller Settings.
- Check the boxes matching your controller: Xbox configuration support, PlayStation configuration support, Switch Pro configuration support, and Generic Gamepad Configuration Support (the catch-all for unknown devices).
- Back in your library, right-click Celeste → Properties → Controller → choose your controller’s layout (Default is fine for most).
A specific Celeste quirk reported on the Steam forums back at launch: some DualShock 4 users had only the left thumbstick working in-game while menus worked fine. The fix was to restart the game once. If you hit the same symptom, exit and re-launch — it never recurs.
5. Steam Cloud saves (optional)
Celeste supports Steam Cloud. Your save files sync automatically between Linux, Windows, and macOS installs of the game as long as you’re signed in to the same Steam account. If you ever want to back up saves manually:
# Save files for Celeste on Linux
~/.local/share/Steam/steamuserdata/<your_steam_id>/504230/Where <your_steam_id> is your 17-digit SteamID64 — find it at store.steampowered.com/account under “Your Steam ID”.
Two small Linux quirks worth knowing about
Audio crackle on first launch (PulseAudio)
A handful of users, mostly on Ubuntu/Pop!_OS with PulseAudio, have reported audio crackle or stutter on the first 30 seconds of gameplay. The fix is to enable X11+ALSA audio backend in the game — but Celeste doesn’t expose this in the in-game settings, so you need to do it once via Steam launch options:
- Right-click Celeste in your library → Properties → General → Launch Options.
- Paste:
%command% --audio-driver ALSA - Close the dialog and launch.
If ALSA breaks your audio entirely, revert by clearing the launch option and the game falls back to PulseAudio (or PipeWire-Pulse, which is what modern Fedora/Ubuntu with PipeWire uses).
Resolution and fullscreen on Wayland
Celeste’s launcher defaults to Borderless Fullscreen at your desktop resolution. On Wayland this can occasionally behave oddly on multi-monitor setups. Two workarounds:
- Launch from an X11 session (most desktops let you log out and choose “GNOME on Xorg” / “KDE on X11” at the login screen).
- In Celeste’s in-game settings, switch to Windowed Borderless and manually set a 1280×720 or 1920×1080 resolution. Once locked in, Wayland handles it cleanly.
What about Steam Deck?
Steam Deck Verified since launch day. Celeste runs at a locked 60 fps on the Deck with the built-in controls mapped perfectly — the right trackpad to dash, A to jump, the shoulder buttons for menus. You install Celeste on Deck the same way you install any Steam game, and the Proton layer is bypassed entirely because Celeste ships a native Linux binary.
If you’re chasing the all-B-sides + all-strawberries + all-cassettes + all-heart-gems completionist challenges, the Deck is one of the better ways to grind those out — the suspend/resume anywhere feature is a godsend for a game with checkpoints as tight as Celeste.
What’s running under the hood (optional reading)
Celeste was built on FNA, an open-source reimplementation of Microsoft’s XNA framework. XNA itself was discontinued in 2014, but because FNA is a clean-room reimplementation with the same API surface, almost any XNA-era game can be ported to Linux essentially for free. Celeste uses FNA together with MonoGame (a similar but more featureful .NET-friendly fork) for the higher-level game code.
Why this matters for you as a Linux gamer: FNA games almost always have native Linux builds. The list includes Celeste, Fez, Axiom Verge, Bastion, Transistor, Owl Boy, and a long tail of indie hits. If you see “FNA” in a game’s engine credits, you can be confident the Linux build is going to work, work well, and get fixed when it breaks — because FNA’s maintainers (mostly Ethan Lee / flibitijibibo) actively support Linux.
The Linux port of Celeste specifically was done by Noel Berry himself as part of the original 2018 release. It uses OpenGL 3.0, SDL2, and the standard FNA audio backends (ALSA, PulseAudio, OSS). It does not require Vulkan, doesn’t use DXVK, and doesn’t run through any translation layer — it’s a native ELF binary that Valve’s Steam runtime ships alongside the Windows and macOS versions.
Where to go after you beat the main story
A few things to know so you don’t think you’re “done” after the credits:
- Chapter 9 B-side: brutal difficulty. The whole game’s mechanics, but every screen is a wall. Allow a week of attempts per chapter.
- Chapter 8 / “The Summit”: has a hidden Farewell epilogue that’s longer than the entire main story. Most players consider it the actual ending.
- Assist Mode: accessible from the title screen. Lets you slow down gameplay, give yourself infinite dashes, or even make the game invulnerable. The devs built it in from day one specifically so people who couldn’t otherwise finish the game could enjoy the story.
- Strawberries, Cassettes, Hearts: collectibles scattered through every chapter. Not required, but the gameplay meta-achievement of getting all of them is a big part of the community.
When you’re done with everything Celeste has to offer — usually 60–120 hours later, depending on how deep you go — the next precision platformers worth your time are Hollow Knight (native Linux), Celeste 2 / Earthblade (Matt Thorson’s next game, announced 2023 but not yet released), and Dead Cells (native Linux). All three of those are covered in the companion article, “Linux 游戏大盘点:13 款在 Linux 上跑得起来的必玩游戏“.
Verdict
Celeste is the canonical example of an indie game that got Linux right from day one and didn’t need Proton to get there. Install Steam, install Celeste, plug in a controller, play. The total time from a fresh Linux install to climbing the mountain is under five minutes.
If you’ve been holding off on Linux because you thought your favorite games wouldn’t run, this is the one to break the seal.
Comments