From d6942e22f1944802b85cc40515b27cfcc9ae22a1 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 21 Feb 2023 21:13:13 +0100 Subject: [PATCH] openloco: init at 23.02 --- pkgs/games/openloco/default.nix | 57 +++++++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 59 insertions(+) create mode 100644 pkgs/games/openloco/default.nix diff --git a/pkgs/games/openloco/default.nix b/pkgs/games/openloco/default.nix new file mode 100644 index 000000000000..c884c39dafa2 --- /dev/null +++ b/pkgs/games/openloco/default.nix @@ -0,0 +1,57 @@ +{ lib +, stdenv +, fetchFromGitHub +, SDL2 +, cmake +, libpng +, libzip +, openal +, pkg-config +, span-lite +, yaml-cpp +}: + +stdenv.mkDerivation rec { + pname = "openloco"; + version = "23.02"; + + src = fetchFromGitHub { + owner = "OpenLoco"; + repo = "OpenLoco"; + rev = "v${version}"; + hash = "sha256-35g7tnKez4tnTdZzavfU+X8f3btFG6EbLkU+cqL6Qek="; + }; + + # the upstream build process determines the version tag from git; since we + # are not using a git checkout, we patch it manually + postPatch = '' + sed -i '/#define NAME "OpenLoco"/a#define OPENLOCO_VERSION_TAG "${version}"' src/OpenLoco/src/Version.cpp + ''; + + NIX_CFLAGS_COMPILE = "-Wno-error=null-dereference"; + + cmakeFlags = [ + "-DOPENLOCO_BUILD_TESTS=NO" + ]; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + buildInputs = [ + SDL2 + libpng + libzip + openal + yaml-cpp + span-lite + ]; + + meta = { + description = "An open source re-implementation of Chris Sawyer's Locomotion"; + homepage = "https://github.com/OpenLoco/OpenLoco"; + license = lib.licenses.mit; + platforms = lib.platforms.linux; + maintainers = with lib.maintainers; [ icewind1991 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f9b87077f817..7694108b4829 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -35545,6 +35545,8 @@ with pkgs; openjk = callPackage ../games/openjk { }; + openloco = pkgsi686Linux.callPackage ../games/openloco { }; + openmw = libsForQt5.callPackage ../games/openmw { }; openmw-tes3mp = libsForQt5.callPackage ../games/openmw/tes3mp.nix { };