Subject: bug#28794: closed (Re: [bug#28794] [PATCH] gnu: games: Add openrct2.)

From: [email-masked] (GNU bug Tracking System)
Date: Sat, 14 Oct 2017 14:46:02 +0000

Your bug report

#28794: [PATCH] gnu: games: Add openrct2.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
28794: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=28794
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#28794] [PATCH] gnu: games: Add openrct2.
From: [email-masked] (Ludovic Courtès)
To: Rutger Helling <[email-masked]>
Cc: [email-masked]
Date: Sat, 14 Oct 2017 16:45:40 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Rutger,

Rutger Helling <[email-masked]> skribis:

> I think it makes sense to add it, but have it be the responsibility of
> the user to provide the assets, since these files can never be bundled
> in Guix. Maybe it should explicitly mention that.

[...]

> Personally I think it makes sense to provide libre engine replacements
> for games, to motivate users to use those instead of running proprietary
> code. The FSF directory even explicitly mentions OpenMW for example:
> https://directory.fsf.org/wiki/OpenMW. 

[...]

> By the way Ludo, Parabola has packaged OpenMW too. OpenRCT2 is also
> mentioned in a list of games by them (second link). 
>
> https://www.parabola.nu/packages/libre/x86_64/openmw/
> https://wiki.parabola.nu/List_of_Applications/Games 

That makes sense to me.  I hope the free project will manage to come up
with free artwork longer-term, but in the meantime, this is probably
better than nothing.

I’ve committed with the changes below (the license if GPL v3-or-later,
as stated in source file headers.)

Thanks,
Ludo’.

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 83d175d16..04b7b78d3 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -2669,10 +2669,15 @@ Transport Tycoon Deluxe.")
       `(("pkg-config", pkg-config)))
     (home-page "https://github.com/OpenRCT2/OpenRCT2")
     (synopsis "Free software re-implementation of RollerCoaster Tycoon 2")
-    (description "OpenRCT2 is an free software re-implementation of
+    (description "OpenRCT2 is a free software re-implementation of
 RollerCoaster Tycoon 2 (RCT2).  The gameplay revolves around building and
-maintaining an amusement park containing attractions, shops and facilities.")
-    (license license:gpl3)))
+maintaining an amusement park containing attractions, shops and facilities.
+
+Note that this package does @emph{not} provide the game assets (sounds,
+images, etc.)")
+    ;; See <https://github.com/OpenRCT2/OpenRCT2/wiki/Required-RCT2-files>
+    ;; regarding assets.
+    (license license:gpl3+)))
 
 (define-public pinball
   (package

Subject: [PATCH] gnu: games: Add openrct2.
From: Rutger Helling <[email-masked]>
To: [email-masked]
Date: Thu, 12 Oct 2017 10:32:06 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hey Guix, 

This patch adds OpenRCT2.

From 12255f73d23a078fc2da099f22564e20cf3c69cc Mon Sep 17 00:00:00 2001
From: Rutger Helling <[email-masked]>
Date: Thu, 12 Oct 2017 10:22:27 +0200
Subject: [PATCH] gnu: games: Add openrct2.

* gnu/packages/games.scm (openrct2): New variable.
---
 gnu/packages/games.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index f8c971f32..83d175d16 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -133,6 +133,7 @@
   #:use-module (gnu packages gnuzilla)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages networking)
+  #:use-module (gnu packages web)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system haskell)
   #:use-module (guix build-system python)
@@ -2628,6 +2629,51 @@ Transport Tycoon Deluxe.")
        ("opensfx" ,openttd-opensfx)
        ,@(package-native-inputs openttd-engine)))))
 
+(define-public openrct2
+  (package
+    (name "openrct2")
+    (version "0.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/OpenRCT2/OpenRCT2/archive/v"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "1bahkzlf9k92cc4zs4nk4wy59323kiw8d3wm0vjps3kp7iznqyjx"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;; no tests available
+       #:phases
+        (modify-phases %standard-phases
+          (add-after 'build 'fix-cmake-install-file
+            (lambda _
+              ;; The build system tries to download a file and compare hashes.
+              ;; Since we have no network, remove this so the install doesn't fail.
+              (substitute* "cmake_install.cmake"
+                (("EXPECTED_HASH SHA1=b587d83de508d0b104d14c599b76f8565900fce0")
+                "")))))))
+    (inputs `(("curl", curl)
+              ("fontconfig", fontconfig)
+              ("freetype", freetype)
+              ("jansson", jansson)
+              ("libpng", libpng)
+              ("libzip", libzip)
+              ("mesa", mesa)
+              ("openssl", openssl)
+              ("sdl2", sdl2)
+              ("speexdsp", speexdsp)
+              ("zlib", zlib)))
+    (native-inputs
+      `(("pkg-config", pkg-config)))
+    (home-page "https://github.com/OpenRCT2/OpenRCT2")
+    (synopsis "Free software re-implementation of RollerCoaster Tycoon 2")
+    (description "OpenRCT2 is an free software re-implementation of
+RollerCoaster Tycoon 2 (RCT2).  The gameplay revolves around building and
+maintaining an amusement park containing attractions, shops and facilities.")
+    (license license:gpl3)))
+
 (define-public pinball
   (package
     (name "pinball")
-- 
2.14.2