GNU bug report logs - #70106
[PATCH] gnu: Add the-powder-toy.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Timotej Lazar <timotej.lazar@HIDDEN>; Keywords: patch; dated Sun, 31 Mar 2024 14:26:01 UTC; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 31 Mar 2024 14:25:06 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Mar 31 10:25:06 2024
Received: from localhost ([127.0.0.1]:48186 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1rqw7O-000245-3v
	for submit <at> debbugs.gnu.org; Sun, 31 Mar 2024 10:25:06 -0400
Received: from lists.gnu.org ([2001:470:142::17]:43656)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <timotej.lazar@HIDDEN>) id 1rqw7M-00023W-8X
 for submit <at> debbugs.gnu.org; Sun, 31 Mar 2024 10:25:04 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <timotej.lazar@HIDDEN>)
 id 1rqw7D-000464-1r
 for guix-patches@HIDDEN; Sun, 31 Mar 2024 10:24:55 -0400
Received: from static.51.243.21.65.clients.your-server.de ([65.21.243.51]
 helo=araneo.si)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <timotej.lazar@HIDDEN>)
 id 1rqw7B-0006Z7-1Y
 for guix-patches@HIDDEN; Sun, 31 Mar 2024 10:24:54 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=20230811; bh=5SyIgdB6dqQ
 o3WkQnTNR/io7FE3ee6uBGAiQ2UUIUpk=; h=date:subject:cc:to:from; 
 d=araneo.si;
 b=nRg/IgLomKYI+w42r/6Rz3CB4zgZQOFPo2of71EHn1i5lp3vsNZt6o/
 w5plRHCKI1GeNEdQcyqLF4tVwWFtZed+hzfsddjsJ+Lf1CpARdV6sNcTdluwIwfuSuZv0+
 nnCyHNVGCG/O5A9e+eDd+wKlQyRmghzNMQsSWFlKFSbFtw=
Received: by araneo.si (OpenSMTPD) with ESMTPSA id 54a97ffb
 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); 
 Sun, 31 Mar 2024 14:24:48 +0000 (UTC)
From: Timotej Lazar <timotej.lazar@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH] gnu: Add the-powder-toy.
Date: Sun, 31 Mar 2024 16:15:13 +0200
Message-ID: <e6d963ade854ebb91cc8a7f5adaf94b891dd5b3a.1711894513.git.timotej.lazar@HIDDEN>
X-Mailer: git-send-email 2.41.0
MIME-Version: 1.0
X-Debbugs-Cc: Adam Faiz <adam.faiz@HIDDEN>, Liliana Marie Prikler <liliana.prikler@HIDDEN>, 宋文武 <iyzsong@HIDDEN>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=65.21.243.51;
 envelope-from=timotej.lazar@HIDDEN; helo=araneo.si
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
Cc: Timotej Lazar <timotej.lazar@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

* gnu/packages/games.scm (the-powder-toy): New variable.

Change-Id: I4c11fa48ef2b92222029e082d472c8157eb1f25f
---
This adds the Powder Toy 2D physics simulation game. Most of the package
deals with installing resources because the install target doesn’t. The
desktop and related files seem to function OK after installation.

Thanks!

 gnu/packages/games.scm | 82 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 82 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 223449af17..02c1b9df96 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -165,6 +165,7 @@ (define-module (gnu packages games)
   #:use-module (gnu packages icu4c)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages inkscape)
   #:use-module (gnu packages javascript)
   #:use-module (gnu packages less)
   #:use-module (gnu packages lesstif)
@@ -7895,6 +7896,87 @@ (define-public the-butterfly-effect
     (license (list license:gpl2 license:public-domain license:expat
                    license:cc-by-sa3.0 license:gpl3+ license:wtfpl2))))
 
+(define-public the-powder-toy
+  (package
+    (name "the-powder-toy")
+    (version "98.0.363")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/The-Powder-Toy/The-Powder-Toy")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "01phwjv9wj28fs87h6m3fzhsjldp87j5h3zajamlrvf28ck34gwm"))))
+    (build-system meson-build-system)
+    (arguments
+     (list #:configure-flags
+           #~(list "-Dcan_install=no" ; don’t set up file associations at runtime
+                   "-Dignore_updates=true" ; don’t notify about updates
+                   "-Drender_icons_with_inkscape=enabled" ; regenerate icons during build
+                   (string-append"-Dworkaround_elusive_bzip2_lib_dir="
+                                 #$(this-package-input "bzip2") "/lib")
+                   (string-append"-Dworkaround_elusive_bzip2_include_dir="
+                                 #$(this-package-input "bzip2") "/include"))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'fix-xdg-open-path
+                 (lambda* (#:key inputs #:allow-other-keys)
+                   (substitute* "src/common/platform/Linux.cpp"
+                     (("xdg-open") (search-input-file inputs "bin/xdg-open")))))
+               (add-after 'install 'install-resources
+                 (lambda _
+                   (let* ((app-id "uk.co.powdertoy.tpt")
+                          (mimetype "application-vnd.powdertoy.save")
+                          (share (string-append #$output "/share"))
+                          (icons (string-append share "/icons/hicolor"))
+                          (icons/png (string-append icons "/256x256"))
+                          (icons/svg (string-append icons "/scalable"))
+                          (apps (string-append share "/applications"))
+                          (man (string-append share "/man/man6"))
+                          (metainfo (string-append share "/metainfo"))
+                          (mime (string-append share "/mime/packages")))
+                     ;; SVG icons.
+                     (mkdir-p (string-append icons/svg "/apps"))
+                     (mkdir-p (string-append icons/svg "/mimetypes"))
+                     (copy-file "../source/resources/icon_exe.svg"
+                                (string-append icons/svg "/apps/powdertoy-powder.svg"))
+                     (copy-file "../source/resources/icon_cps.svg"
+                                (string-append icons/svg "/mimetypes/" mimetype ".svg"))
+                     ;; PNG icons.
+                     (mkdir-p (string-append icons/png "/apps"))
+                     (mkdir-p (string-append icons/png "/mimetypes"))
+                     (copy-file "resources/icon_exe.png"
+                                (string-append icons/png "/apps/powdertoy-powder.png"))
+                     (copy-file "resources/icon_cps.png"
+                                (string-append icons/png "/mimetypes/" mimetype ".png"))
+                     ;; Resources.
+                     (for-each mkdir-p (list man apps metainfo mime))
+                     (copy-file "../source/resources/powder.man"
+                                (string-append man "/powder.6"))
+                     (copy-file "resources/powder.desktop"
+                                (string-append apps "/" app-id ".desktop"))
+                     (copy-file "resources/appdata.xml"
+                                (string-append metainfo "/" app-id ".appdata.xml"))
+                     (copy-file "../source/resources/save.xml"
+                                (string-append mime "/powdertoy-save.xml"))))))))
+    (inputs
+     (list bzip2 curl fftwf jsoncpp libpng luajit sdl2 xdg-utils zlib))
+    (native-inputs
+     (list inkscape pkg-config))
+    (home-page "https://powdertoy.co.uk")
+    (synopsis "2D physics sandbox game")
+    (description
+     "The Powder Toy simulates air pressure and velocity, heat, gravity and a
+countless number of interactions between different substances.  The game
+provides various building materials, liquids, gases and electronic components
+used to construct complex machines, realistic terrains and almost anything
+else.  Scripting and plugins are supported through a Lua API.")
+    (license (list license:asl2.0 ; src/bson
+                   license:expat ; src/lua/LuaBit.*
+                   license:gpl3+))))
+
 (define-public pioneer
   (package
     (name "pioneer")

base-commit: d747d9e2dd273ce90a441d0e4428d15a8286e465
-- 
2.41.0





Acknowledgement sent to Timotej Lazar <timotej.lazar@HIDDEN>:
New bug report received and forwarded. Copy sent to adam.faiz@HIDDEN, liliana.prikler@HIDDEN, iyzsong@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to adam.faiz@HIDDEN, liliana.prikler@HIDDEN, iyzsong@HIDDEN, guix-patches@HIDDEN:
bug#70106; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sun, 31 Mar 2024 14:30:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.