Jump to content

Gaming: Difference between revisions

From Official NixOS Wiki
Golbinex (talk | contribs)
Add Luanti
Arborodin (talk | contribs)
No edit summary
 
(16 intermediate revisions by 4 users not shown)
Line 1: Line 1:


== Open source games and their status on NixOS ==
== Emulating and launchers ==
 
Games can be run by different applications. Some are able to include libraries from different platforms.
 
{| 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 sortable"
{| class="wikitable sortable"
|+
|+
!Name
! scope="col" | Name
!Category
! scope="col" | Category
!nixpkg status
! scope="col" | Description
!Short Description
! scope="col" | nixpkgs
|-
|-
|[https://www.thedarkmod.com/main/ The Dark Mod]
| [https://play0ad.com/ 0 A.D.]
|Stealth, FPS
| Strategy, Historical
|[https://github.com/NixOS/nixpkgs/pull/356578 pending pull request]
| Historical real-time strategy game.
|Stealth game inspired by the Thief series.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/0ad/default.nix available]
|-
|-
|[https://endless-sky.github.io/ Endless Sky]
| [https://www.armagetronad.org/ Armagetron Advanced]
|Space simulation, RPG
| Arcade, Racing
|In nixpkgs
| A multiplayer Tron-like lightcycle racing game.
|Explore a universe with different factions and ships.
| [https://github.com/NixOS/nixpkgs/pull/263675 available]
|-
|-
|[https://www.veloren.net/ Veloren]
| [https://www.wesnoth.org/ Battle for Wesnoth]
|RPG, Sandbox
| Strategy, Turn-based
|In nixpkgs
| Turn-based strategy game with fantasy themes.
|Multiplayer voxel RPG set in a procedurally generated world.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/wesnoth/default.nix available]
|-
|-
|[https://www.armagetronad.org/ Armagetron Advanced]
| [https://cataclysmdda.org/ Cataclysm: Dark Days Ahead]
|Arcade, Racing
| Survival, Rogue-like
|In nixpkgs
| Post-apocalyptic survival game.
|A multiplayer Tron-like lightcycle racing game.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/cataclysm-dda/default.nix available]
|-
|-
|[https://play0ad.com/ 0 A.D.]
| [https://chromium-bsu.sourceforge.io/ Chromium B.S.U.]
|Strategy, Historical
| Arcade, Space Shooter
|In nixpkgs
| Fast paced, arcade-style, top-scrolling space shooter.
|Historical real-time strategy game.
| available
|-
|-
|[https://supertuxkart.net/de/Main_Page SuperTuxKart]
| [https://crawl.develz.org/ Dungeon Crawl]
|Arcade, Racing
| Rogue-like, Adventure, Turn-based
|In nixpkgs
| Open-source, single-player, role-playing roguelike game.
|Kart racing game (like Super Mario Kart) featuring Tux and friends.
| available
|-
|-
|[https://www.openra.net/ OpenRA]
| [https://www.bay12games.com/dwarves/ Dwarf Fortress]
|Strategy, RTS
| Simulation, Management, Rogue-like, Sandbox
|In nixpkgs
| Single-player fantasy game with a randomly generated adventure world.
|Open-source implementation of Command & Conquer.
| available
|-
|-
|[https://freeciv.org/ FreeCiv]
| [https://endless-sky.github.io/ Endless Sky]
|Strategy, Turn-based
| Space simulation, RPG
|In Nixpkgs
| Explore a universe with different factions and ships.
|Civilization-building strategy game.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/endless-sky/default.nix available]
|-
|-
|[https://www.gnu.org/software/freedink/ FreeDink]
| [https://freeciv.org/ FreeCiv]
|Adventure, RPG
| Strategy, Turn-based
|In Nixpkgs
| Civilization-building strategy game.
|Free, portable and enhanced version of the Dink Smallwood game engine
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/freeciv/default.nix available]
|-
|-
|[https://www.openttd.org/ OpenTTD]
| [https://www.gnu.org/software/freedink/ FreeDink]
|Simulation, Management
| Adventure, RPG
|In nixpkgs
| Free, portable and enhanced version of the Dink Smallwood game engine.
|Business simulation game based on Transport Tycoon Deluxe.
| available
|-
|-
|[https://www.wesnoth.org/ Battle for Wesnoth]
| [https://freedoom.github.io/ FreeDoom]
|Strategy, Turn-based
| FPS
|In nixpkgs
| Free alternative to the Doom series.
|Turn-based strategy game with fantasy themes.
| '''''unavailable'''''
|-
|-
|[https://freedoom.github.io/ FreeDoom]
| [https://github.com/ZDoom/gzdoom GZDoom]
|FPS
| FPS
|'''''Not in nixpkgs'''''
| A feature-centric port for all Doom engine games, based on ZDoom, adding an OpenGL renderer and powerful scripting capabilities.
|Free alternative to the Doom series.
| [https://github.com/NixOS/nixpkgs/tree/nixos-24.05/pkgs/games/doom-ports/gzdoom available]
|-
|-
|[https://xonotic.org/ Xonotic]
| [https://sourceforge.net/projects/lincity/ LinCity]
|FPS, Arena shooter
| Simulation, Management
|In nixpkgs
| City simulation game.
|Fast-paced multiplayer shooter.
| available
|-
|-
|[https://sourceforge.net/projects/lincity/ LinCity]
| [https://github.com/lincity-ng/lincity-ng LinCity-NG]
|Simulation, Management
| Simulation, Management
|In nixpkgs
| City simulation game.
|City simulation game
| available
|-
|-
|[https://github.com/lincity-ng/lincity-ng LinCity-NG]
| [https://luanti.org Luanti]
|Simulation, Management
| Sandbox
|In nixpkgs
| An open source voxel game engine.
|City simulation game
| available
|-
|-
|[https://mindustrygame.github.io/ Mindustry]
| [https://mindustrygame.github.io/ Mindustry]
|Strategy, Sandbox
| Strategy, Sandbox
|In nixpkgs
| Sandbox tower defense game.
|Sandbox tower defense game.
| [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games/mindustry available]
|-
|-
|[https://nethack.org/ NetHack]
| [https://nethack.org/ NetHack]
|Rogue-like, RPG
| Rogue-like, RPG
|In nixpkgs
| Rogue-like game.
|Rogue-like game
| available
|-
|-
|[https://cataclysmdda.org/ Cataclysm: Dark Days Ahead]
| [https://openmw.org/ OpenMW]
|Survival, Rogue-like
| RPG, Open world, Action-adventure
|In nixpkgs
| Unofficial open source engine reimplementation of the game Morrowind.
|Post-apocalyptic survival game.
| available
|-
|-
|[https://shatteredpixel.com/ Shattered Pixel Dungeon]
| [https://www.openra.net/ OpenRA]
|Rogue-like, RPG
| Strategy, RTS
|In nixpkgs
| Open-source implementation of Command & Conquer.
|Rogue-like dungeon crawler with pixel graphics.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/openra/default.nix available]
|-
|-
|[https://www.chiark.greenend.org.uk/~sgtatham/puzzles/ Simon Tatham's Portable Puzzle Collection]
| [https://www.openttd.org/ OpenTTD]
|Puzzle
| Simulation, Management
|In nixpkgs
| Business simulation game based on Transport Tycoon Deluxe.
|Simon Tatham's portable puzzle collection
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/openttd/default.nix available]
|-
|-
|[https://luanti.org Luanti]
| [https://shatteredpixel.com/ Shattered Pixel Dungeon]
|Sandbox
| Rogue-like, RPG
|In nixpkgs
| Rogue-like dungeon crawler with pixel graphics.
|An open source voxel game engine.
| [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]
== Other resources ==
| Puzzle
 
| Simon Tatham's portable puzzle collection.
* [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games List of existing games in nixpkgs]
| available
* [https://osgameclones.com/ Open Source Game Clones]
|-
* [https://github.com/bobeff/open-source-games open-source-games list on Github by bobeff]
| [https://www.supertux.org/ Super Tux]
* [https://trilarion.github.io/opensourcegames/games/top.html 100 highest rated (by stars on Github) playable open source games]
| Platformer, Side-scroller
* [[wikipedia:List_of_open-source_video_games|List of open-source video games (en.wikipedia)]]
| Classic 2D jump'n run side-scroller game.
* [https://github.com/topics/open-source-game Topic "open-source-game" on github]  
| available
 
|-
== Game starters ==
| [https://supertuxkart.net/de/Main_Page SuperTuxKart]
Games can be run by different applications. Some are able to include libraries from different plattforms.
| Arcade, Racing
{| class="wikitable"
| 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]
!Application
!Platform
!Remarks
|-
|-
|[[Steam]]
| [https://te4.org/ Tales of Maj'Eyal (ToME 4)]
|Steam
| Rogue-like, RPG, Turn-based
|Windows games work fine. Linux games are often incompatible due to how NixOS works.
| Rogue-like focused on exploration of procedurally generated dungeons.
| available
|-
|-
|[[Lutris]]
| [https://www.thedarkmod.com/main/ The Dark Mod]
|GOG, Humble Bundle, Epic, EA App, Ubisoft Connect, Steam, Flatpak, Wine
| Stealth, FPS
|
| Stealth game inspired by the Thief series.
| [https://github.com/NixOS/nixpkgs/pull/356578 pending pull request]
|-
|-
|[[Heroic Games Launcher|Heroic]]
| [https://powdertoy.co.uk/ The Powder Toy]
|Epic, GOG, Prime Gaming, Wine
| Sandbox
|
| Classic 'falling sand' physics sandbox game.Classic 2D jump'n run sidescroller game.
| available
|-
|-
|[[Wine]]
| [https://www.veloren.net/ Veloren]
|Windows applications/games
| RPG, Sandbox
|often easier to use Lutris install scripts for wine applications/games
| Multiplayer voxel RPG set in a procedurally generated world.
| [https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/ve/veloren/package.nix available]
|-
|-
|nixpgs
| [https://xonotic.org/ Xonotic]
|Linux games
| FPS, Arena shooter
|There are several games in nixpgs. You can install them directly, e.g. vintagestory, flightgear, lots of racing games.
| Fast-paced multiplayer shooter.
| [https://github.com/NixOS/nixpkgs/tree/master/pkgs/games/xonotic available]
|-
|-
|[[Dosbox]]
|DOS applications/games
|
|}
|}


== 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.


== List of games ==
=== 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 lang=nix>
<syntaxHighlight lang=nix>
Line 181: Line 259:
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:Gaming]]
[[Category:Applications]]
[[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