diff options
author | Alvar Penning <post@0x21.biz> | 2024-01-13 14:56:21 +0100 |
---|---|---|
committer | Alvar Penning <post@0x21.biz> | 2024-01-13 15:03:31 +0100 |
commit | 40cc9e497bbf7a62dcc3401198fde0e88bad4c88 (patch) | |
tree | 0f56f1580221a6da08bfd63b8c3112559538c967 /pkgs/games/openrct2 | |
parent | 69607d93079cf505adbe3abd442ba6b7940c34d4 (diff) |
openrct2: 0.4.5 -> 0.4.7
- https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.6 - https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.4.7 Updating to 0.4.6 resulted some headaches, as suddenly lots of errors about missing music objects were thrown and old maps were not loadable. This was also mentioned in #263025. Today I git bisect'ed OpenRCT2's source between 0.4.5 and 0.4.6, finding 5adbea9ac829b76507543e4c09b2000138ffbbcf as the culprit, which origins in OpenRCT2/OpenRCT2#19785. From there I got to OpenRCT2/OpenRCT2#21043 which addresses this very issue and fixes it by undoing the original change next to some later changes. This PR is now included as a patch and, et voilĂ , OpenRCT2 works again! Closes #263025.
Diffstat (limited to 'pkgs/games/openrct2')
-rw-r--r-- | pkgs/games/openrct2/default.nix | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix index e056164e279a9..c38c1ae8031d0 100644 --- a/pkgs/games/openrct2/default.nix +++ b/pkgs/games/openrct2/default.nix @@ -1,12 +1,14 @@ { lib , stdenv , fetchFromGitHub +, fetchpatch , SDL2 , cmake , curl , discord-rpc , duktape +, expat , flac , fontconfig , freetype @@ -28,48 +30,48 @@ }: let - openrct2-version = "0.4.5"; + openrct2-version = "0.4.7"; # Those versions MUST match the pinned versions within the CMakeLists.txt # file. The REPLAYS repository from the CMakeLists.txt is not necessary. - objects-version = "1.3.11"; - openmsx-version = "1.3.0"; + objects-version = "1.3.13"; + openmsx-version = "1.5"; opensfx-version = "1.0.3"; - title-sequences-version = "0.4.0"; + title-sequences-version = "0.4.6"; openrct2-src = fetchFromGitHub { owner = "OpenRCT2"; repo = "OpenRCT2"; rev = "v${openrct2-version}"; - sha256 = "sha256-TMtaEqui3gUd+j3LwF7VsHiBtbYZMu6Rvo1aMkkU9LY="; + hash = "sha256-2nSzXbZH1o+BEaxhdQTCM/u4Qbun4tqBKjQ4z7owHeg="; }; objects-src = fetchFromGitHub { owner = "OpenRCT2"; repo = "objects"; rev = "v${objects-version}"; - sha256 = "sha256-fA2Kz4GALu6IP7ulbwpAFt3dz6NCPgyB0CWy5uOLBQY="; + hash = "sha256-7RvRe7skXH5x8RbkQgtKs1YMBwq8dHInVo/4FAJwUD0="; }; openmsx-src = fetchFromGitHub { owner = "OpenRCT2"; repo = "OpenMusic"; rev = "v${openmsx-version}"; - sha256 = "sha256-bp+uwTy2ZFMCK8Dq4YVACpQSwo8v1te+NQGwdqViIjU="; + hash = "sha256-p/wlvQFfu3R+jIuCcRbTMvxt0VKGGwJw0NDIsf6URWI="; }; opensfx-src = fetchFromGitHub { owner = "OpenRCT2"; repo = "OpenSoundEffects"; rev = "v${opensfx-version}"; - sha256 = "sha256-AMuCpq1Hszi2Vikto/cX9g81LwBDskaRMTLxNzU0/Gk="; + hash = "sha256-AMuCpq1Hszi2Vikto/cX9g81LwBDskaRMTLxNzU0/Gk="; }; title-sequences-src = fetchFromGitHub { owner = "OpenRCT2"; repo = "title-sequences"; rev = "v${title-sequences-version}"; - sha256 = "sha256-anqCZkhYoaxPu3MYCYSsFFngOmPp2wnx2MGb0hj6W5U="; + hash = "sha256-HWp2ecClNM/7O3oaydVipOnEsYNP/bZnZFS+SDidPi0="; }; in stdenv.mkDerivation { @@ -78,6 +80,19 @@ stdenv.mkDerivation { src = openrct2-src; + patches = [ + # https://github.com/OpenRCT2/OpenRCT2/pull/21043 + # + # Basically <https://github.com/OpenRCT2/OpenRCT2/pull/19785> has broken + # OpenRCT2 - at least with older maps, as were used for testing - as stated + # in <https://github.com/NixOS/nixpkgs/issues/263025>. + (fetchpatch { + name = "remove-openrct2-music.patch"; + url = "https://github.com/OpenRCT2/OpenRCT2/commit/9ea13848be0b974336c34e6eb119c49ba42a907c.patch"; + hash = "sha256-2PPRqUZf4+ys89mdzp5nvdtdv00V9Vzj3v/95rmlf1c="; + }) + ]; + nativeBuildInputs = [ cmake pkg-config @@ -88,6 +103,7 @@ stdenv.mkDerivation { curl discord-rpc duktape + expat flac fontconfig freetype |