Jump to content

Gaming: Difference between revisions

From Official NixOS Wiki
imported>Artturin
improve links
Arborodin (talk | contribs)
No edit summary
 
(41 intermediate revisions by 19 users not shown)
Line 1: Line 1:
This page lists games and reports on their successful execution on NixOS.


Specific execution mode information can be found on these dedicated pages:
== Emulating and launchers ==
* [[Steam]]
* [[Playstation2]]


Games can be run by different applications. Some are able to include libraries from different platforms.


== List of games ==
{| class="wikitable sortable"
|+
! scope="col" | Application
! scope="col" | Platform
! scope="col" | Description
! scope="col" | nixpkgs
|-
| [[Steam]]
| Steam
| Stable support for Windows games. Linux games often incompatible due to interoperating differences.
| <code>steam</code> <code>steam-run</code> <code>steam-runtime</code> <code>steam-original</code> <code>steam-unwrapped</code> <code>steam-small</code>
|-
| [[Lutris]]
| Epic Games, EA App, Flatpak, GOG, Humble Bundle, Steam, Ubisoft Connect, Wine
|
| <code>lutris</code> <code>lutris-free</code> <code>lutris-unwrapped</code>
|-
| [https://github.com/legendary-gl/legendary Legendary] & [https://github.com/RareDevs/Rare Rare]
| Epic Games
| Rare is a GUI for Legendary.
| <code>legendary-gl</code> <code>rare</code>
|-
| [[Heroic Games Launcher|Heroic]]
| Epic Games, GOG, Prime Gaming, Wine
| Supports gamepad navigation. Uses Legendary unlike Lutris.
| <code>heroic</code> <code>heroic-unwrapped</code>
|-
| Itch.io
| Itch.io
|
| <code>itch</code>
|-
| PPSSPP
| PSP emulation
|
| <code>ppsspp</code>
|-
| [[Playstation2|PCSX2]]
| PS2 emulation
|
|
|-
| RPCS3
| PS3 emulation
| Contains unfree blobs (PS3 firmware).
| <code>rpcs3</code>
|-
| [[RetroArch]]
| Retro games emulation
|
|
|-
| [[Wine]] & [[Bottles]]
| Windows emulation and software management
|
| <code>wineWow64Packages</code> <code>winetricks</code> <code>bottles</code>
|-
| Dosbox
| DOS emulation
|
| <code>dosbox</code>
|-
|}


== List of games in Nixpkgs ==


{| class="wikitable"
{| class="wikitable sortable"
|+ HB=[https://www.humblebundle.com/ humblebundle.com], Gog=[https://www.gog.com/ gog.com]
|+
! scope="col" | Name
! scope="col" | Category
! scope="col" | Description
! scope="col" | nixpkgs
|-
| [https://play0ad.com/ 0 A.D.]
| Strategy, Historical
| Historical real-time strategy game.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/0ad/default.nix available]
|-
| [https://www.armagetronad.org/ Armagetron Advanced]
| Arcade, Racing
| A multiplayer Tron-like lightcycle racing game.
| [https://github.com/NixOS/nixpkgs/pull/263675 available]
|-
| [https://www.wesnoth.org/ Battle for Wesnoth]
| Strategy, Turn-based
| Turn-based strategy game with fantasy themes.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/wesnoth/default.nix available]
|-
| [https://cataclysmdda.org/ Cataclysm: Dark Days Ahead]
| Survival, Rogue-like
| Post-apocalyptic survival game.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/cataclysm-dda/default.nix available]
|-
| [https://chromium-bsu.sourceforge.io/ Chromium B.S.U.]
| Arcade, Space Shooter
| Fast paced, arcade-style, top-scrolling space shooter.
| available
|-
| [https://crawl.develz.org/ Dungeon Crawl]
| Rogue-like, Adventure, Turn-based
| Open-source, single-player, role-playing roguelike game.
| available
|-
| [https://www.bay12games.com/dwarves/ Dwarf Fortress]
| Simulation, Management, Rogue-like, Sandbox
| Single-player fantasy game with a randomly generated adventure world.
| available
|-
| [https://endless-sky.github.io/ Endless Sky]
| Space simulation, RPG
| Explore a universe with different factions and ships.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/endless-sky/default.nix available]
|-
| [https://freeciv.org/ FreeCiv]
| Strategy, Turn-based
| Civilization-building strategy game.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/freeciv/default.nix available]
|-
| [https://www.gnu.org/software/freedink/ FreeDink]
| Adventure, RPG
| Free, portable and enhanced version of the Dink Smallwood game engine.
| available
|-
| [https://freedoom.github.io/ FreeDoom]
| FPS
| Free alternative to the Doom series.
| '''''unavailable'''''
|-
| [https://github.com/ZDoom/gzdoom GZDoom]
| FPS
| A feature-centric port for all Doom engine games, based on ZDoom, adding an OpenGL renderer and powerful scripting capabilities.
| [https://github.com/NixOS/nixpkgs/tree/nixos-24.05/pkgs/games/doom-ports/gzdoom available]
|-
| [https://sourceforge.net/projects/lincity/ LinCity]
| Simulation, Management
| City simulation game.
| available
|-
| [https://github.com/lincity-ng/lincity-ng LinCity-NG]
| Simulation, Management
| City simulation game.
| available
|-
| [https://luanti.org Luanti]
| Sandbox
| An open source voxel game engine.
| available
|-
| [https://mindustrygame.github.io/ Mindustry]
| Strategy, Sandbox
| Sandbox tower defense game.
| [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games/mindustry available]
|-
| [https://nethack.org/ NetHack]
| Rogue-like, RPG
| Rogue-like game.
| available
|-
| [https://openmw.org/ OpenMW]
| RPG, Open world, Action-adventure
| Unofficial open source engine reimplementation of the game Morrowind.
| available
|-
| [https://www.openra.net/ OpenRA]
| Strategy, RTS
| Open-source implementation of Command & Conquer.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/openra/default.nix available]
|-
| [https://www.openttd.org/ OpenTTD]
| Simulation, Management
| Business simulation game based on Transport Tycoon Deluxe.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/openttd/default.nix available]
|-
| [https://shatteredpixel.com/ Shattered Pixel Dungeon]
| Rogue-like, RPG
| Rogue-like dungeon crawler with pixel graphics.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/shattered-pixel-dungeon/default.nix available]
|-
| [https://www.chiark.greenend.org.uk/~sgtatham/puzzles/ Simon Tatham's Portable Puzzle Collection]
| Puzzle
| Simon Tatham's portable puzzle collection.
| available
|-
| [https://www.supertux.org/ Super Tux]
| Platformer, Side-scroller
| Classic 2D jump'n run side-scroller game.
| available
|-
| [https://supertuxkart.net/de/Main_Page SuperTuxKart]
| Arcade, Racing
| Kart racing game (like Super Mario Kart) featuring Tux and friends.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/super-tux-kart/default.nix available]
|-
| [https://te4.org/ Tales of Maj'Eyal (ToME 4)]
| Rogue-like, RPG, Turn-based
| Rogue-like focused on exploration of procedurally generated dungeons.
| available
|-
|-
! scope="col" | Name
| [https://www.thedarkmod.com/main/ The Dark Mod]
! scope="col" | Version
| Stealth, FPS
! scope="col" | Mode
| Stealth game inspired by the Thief series.
! scope="col" | Note
| [https://github.com/NixOS/nixpkgs/pull/356578 pending pull request]
|-
|-
! scope="row"| Braid
| [https://powdertoy.co.uk/ The Powder Toy]
| BraidSetup-2015-06-11.sh (HB)
| Sandbox
| [[Steam#FHS environment only (aka GOG/Humble)|steam-run-native]]
| Classic 'falling sand' physics sandbox game.Classic 2D jump'n run sidescroller game.
| I could play a few levels without problem
| available
|-
|-
! scope="row"| Project Hospital
| [https://www.veloren.net/ Veloren]
| project_hospital_1_2_21186_40814.sh (Gog)
| RPG, Sandbox
| [[Steam#FHS environment only (aka GOG/Humble)|steam-run-native]]
| Multiplayer voxel RPG set in a procedurally generated world.
| Everything is OK
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/ve/veloren/package.nix available]
|-
|-
! scope="row"| State of Mind
| [https://xonotic.org/ Xonotic]
| 1.2.24280
| FPS, Arena shooter
| [[Steam|Pure Steam]]
| Fast-paced multiplayer shooter.
| Everything is OK
| [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games/xonotic available]
|-
|-
! scope="row"| Vintage Story
| vs_archive_1.14.10.tar.gz
| [[Steam#FHS environment only (aka GOG/Humble)|steam-run-native]]
| <syntaxhighlight lang="sh">steam-run mono Vintagestory.exe</syntaxhighlight>
|}
|}
== Installing games ==
=== Workarounds ===
Games that aren't yet available in nixpkgs can be played by other means, including but not limited to:
* <code>steam-run</code> as described in [[Steam]] or by installing it then running <code>steam-run $GAME</code> or <code>steam-run ./$GAME</code>.
* <code>programs.nix-ld = { enable = true; libraries = pkgs.steam-run.fhsenv.args.multiPkgs pkgs; };</code> to run nearly any binary by including all of the libraries used by Steam. [https://old.reddit.com/r/NixOS/comments/1d1nd9l/walking_through_why_precompiled_hello_world/ (Source)]
* <code>appimage-run</code> as described in [[Appimage]].
* [[Distrobox]] to virtualize an OS that has a package for your game.


=== Renowned Explorers: International Society ===
=== Renowned Explorers: International Society ===
Tested with version <code>renowned_explorers_international_society_522_26056.sh</code> from gog.com. It can be played with <code>steam-run</code>, but it needs some libraries that are not normally included in Steam's FHS environment. One way to solve this is to add an overlay:
Tested with version <code>renowned_explorers_international_society_522_26056.sh</code> from gog.com. It can be played with <code>steam-run</code>, but it needs some libraries that are not normally included in Steam's FHS environment. One way to solve this is to add an overlay:
<syntaxHighlight>
<syntaxHighlight lang=nix>
   nixpkgs.overlays = [
   nixpkgs.overlays = [
     (self: super: {
     (self: super: {
Line 60: Line 258:
</syntaxHighlight>
</syntaxHighlight>
Adding <code>libxkbcommon</code>, <code>mesa</code>, and <code>wayland</code> is straightforward. The game expects the shared library <code>sdnio.so.6.1</code> to exist, so we need to create a symbolic link after the installation of <code>sndio</code>.
Adding <code>libxkbcommon</code>, <code>mesa</code>, and <code>wayland</code> is straightforward. The game expects the shared library <code>sdnio.so.6.1</code> to exist, so we need to create a symbolic link after the installation of <code>sndio</code>.
== See also ==
* [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games Games in Nixpkgs]
* [https://github.com/fufexan/nix-gaming Gaming on Nix (by fufexan)]
* [https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=game Search in nixpkgs by "game" keyword]
* [https://www.reddit.com/r/linux_gaming/wiki/freegames/ Linux Gaming Reddit wiki]
* [[wikipedia:List_of_open-source_video_games|List of open-source video games (en.wikipedia)]]
* [https://trilarion.github.io/opensourcegames/games/top.html List of top rated open-source games]
* [https://github.com/bobeff/open-source-games List of open-source games (by bobeff)]
* [https://libregamewiki.org/List_of_games List of libre games]
* [https://lgames.sourceforge.io/about.php LGames website]
* [[wikipedia:Porting|Porting (en.wikipedia)]]
* [https://osgameclones.com/ Open-Source Game Clones website]
* [[GameMode|NixOS Wiki GameMode page]]
* [[Chess|NixOS Wiki Chess page]]
[[Category:Gaming]]
[[Category:Applications]]
[[Category:Lists]]

Latest revision as of 08:50, 27 August 2026

Emulating and launchers

Games can be run by different applications. Some are able to include libraries from different platforms.

Application Platform Description nixpkgs
Steam Steam Stable support for Windows games. Linux games often incompatible due to interoperating differences. steam steam-run steam-runtime steam-original steam-unwrapped steam-small
Lutris Epic Games, EA App, Flatpak, GOG, Humble Bundle, Steam, Ubisoft Connect, Wine lutris lutris-free lutris-unwrapped
Legendary & Rare Epic Games Rare is a GUI for Legendary. legendary-gl rare
Heroic Epic Games, GOG, Prime Gaming, Wine Supports gamepad navigation. Uses Legendary unlike Lutris. heroic heroic-unwrapped
Itch.io Itch.io itch
PPSSPP PSP emulation ppsspp
PCSX2 PS2 emulation
RPCS3 PS3 emulation Contains unfree blobs (PS3 firmware). rpcs3
RetroArch Retro games emulation
Wine & Bottles Windows emulation and software management wineWow64Packages winetricks bottles
Dosbox DOS emulation dosbox

List of games in Nixpkgs

Name Category Description nixpkgs
0 A.D. Strategy, Historical Historical real-time strategy game. available
Armagetron Advanced Arcade, Racing A multiplayer Tron-like lightcycle racing game. available
Battle for Wesnoth Strategy, Turn-based Turn-based strategy game with fantasy themes. available
Cataclysm: Dark Days Ahead Survival, Rogue-like Post-apocalyptic survival game. available
Chromium B.S.U. Arcade, Space Shooter Fast paced, arcade-style, top-scrolling space shooter. available
Dungeon Crawl Rogue-like, Adventure, Turn-based Open-source, single-player, role-playing roguelike game. available
Dwarf Fortress Simulation, Management, Rogue-like, Sandbox Single-player fantasy game with a randomly generated adventure world. available
Endless Sky Space simulation, RPG Explore a universe with different factions and ships. available
FreeCiv Strategy, Turn-based Civilization-building strategy game. available
FreeDink Adventure, RPG Free, portable and enhanced version of the Dink Smallwood game engine. available
FreeDoom FPS Free alternative to the Doom series. unavailable
GZDoom FPS A feature-centric port for all Doom engine games, based on ZDoom, adding an OpenGL renderer and powerful scripting capabilities. available
LinCity Simulation, Management City simulation game. available
LinCity-NG Simulation, Management City simulation game. available
Luanti Sandbox An open source voxel game engine. available
Mindustry Strategy, Sandbox Sandbox tower defense game. available
NetHack Rogue-like, RPG Rogue-like game. available
OpenMW RPG, Open world, Action-adventure Unofficial open source engine reimplementation of the game Morrowind. available
OpenRA Strategy, RTS Open-source implementation of Command & Conquer. available
OpenTTD Simulation, Management Business simulation game based on Transport Tycoon Deluxe. available
Shattered Pixel Dungeon Rogue-like, RPG Rogue-like dungeon crawler with pixel graphics. available
Simon Tatham's Portable Puzzle Collection Puzzle Simon Tatham's portable puzzle collection. available
Super Tux Platformer, Side-scroller Classic 2D jump'n run side-scroller game. available
SuperTuxKart Arcade, Racing Kart racing game (like Super Mario Kart) featuring Tux and friends. available
Tales of Maj'Eyal (ToME 4) Rogue-like, RPG, Turn-based Rogue-like focused on exploration of procedurally generated dungeons. available
The Dark Mod Stealth, FPS Stealth game inspired by the Thief series. pending pull request
The Powder Toy Sandbox Classic 'falling sand' physics sandbox game.Classic 2D jump'n run sidescroller game. available
Veloren RPG, Sandbox Multiplayer voxel RPG set in a procedurally generated world. available
Xonotic FPS, Arena shooter Fast-paced multiplayer shooter. available

Installing games

Workarounds

Games that aren't yet available in nixpkgs can be played by other means, including but not limited to:

  • steam-run as described in Steam or by installing it then running steam-run $GAME or steam-run ./$GAME.
  • programs.nix-ld = { enable = true; libraries = pkgs.steam-run.fhsenv.args.multiPkgs pkgs; }; to run nearly any binary by including all of the libraries used by Steam. (Source)
  • appimage-run as described in Appimage.
  • Distrobox to virtualize an OS that has a package for your game.

Renowned Explorers: International Society

Tested with version renowned_explorers_international_society_522_26056.sh from gog.com. It can be played with steam-run, but it needs some libraries that are not normally included in Steam's FHS environment. One way to solve this is to add an overlay:

  nixpkgs.overlays = [
    (self: super: {
      steam-run = (super.steam.override {
        extraLibraries = pkgs: with pkgs;
          [
            libxkbcommon
            mesa
            wayland
            (sndio.overrideAttrs (old: {
              postFixup = old.postFixup + ''
                ln -s $out/lib/libsndio.so $out/lib/libsndio.so.6.1
              '';
            }))
          ];
      }).run;
    })
  ];

Adding libxkbcommon, mesa, and wayland is straightforward. The game expects the shared library sdnio.so.6.1 to exist, so we need to create a symbolic link after the installation of sndio.

See also