[bug#69610,v3,3/3] gnu: Add sosage.

Message ID 0e9a21e4-d99b-4360-8167-cf5b9c9ebc8f@disroot.org
State New
Headers
Series None |

Commit Message

Adam Faiz Feb. 14, 2025, 8:27 a.m. UTC
  From 6bc9e728c3dea4618baf1a247dbe0018f4949d6c Mon Sep 17 00:00:00 2001
Message-ID: <6bc9e728c3dea4618baf1a247dbe0018f4949d6c.1739521278.git.adam.faiz@disroot.org>
In-Reply-To: <2d8957a642d759536cceeea5dff7a41405328e0f.1739521278.git.adam.faiz@disroot.org>
References: <2d8957a642d759536cceeea5dff7a41405328e0f.1739521278.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Thu, 7 Mar 2024 12:59:28 +0800
Subject: [PATCH v3 3/3] gnu: Add sosage.

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

Patch

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 144168fc1c..231aa12133 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -3283,6 +3283,63 @@  (define-public superfluous-returnz-data
     (home-page "https://studios.ptilouk.net/superfluous-returnz/")
     (license license:cc-by-sa4.0)))
 
+(define-public sosage
+  (package
+    (name "sosage")
+    (version "1.6.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://framagit.org/Gee/sosage")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0xgk3r18aj9xvrrqr9qdrr6800hkv6lhfcnmm5z21g8kbfh9x4jm"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            (for-each delete-file (find-files "." "\\.jar$"))
+
+            ;; The files in 'Third_party' aren't actually bundled libraries,
+            ;; but are wrappers around the system libraries.
+            ;; Move them to the 'Utils' directory, to make that clear.
+            (for-each (lambda (file)
+                        (install-file file "include/Sosage/Utils"))
+                      (find-files "include/Sosage/Third_party" "\\.h$"))
+            (for-each (lambda (file)
+                        (install-file file "src/Sosage/Utils"))
+                      (find-files "src/Sosage/Third_party" "\\.cpp$"))
+            (for-each delete-file-recursively '("include/Sosage/Third_party"
+                                                "src/Sosage/Third_party"))
+            (substitute* (find-files ".")
+              (("Third_party") "Utils"))))))
+    (build-system cmake-build-system)
+    (arguments
+     (list #:tests? #f ; no tests
+           #:configure-flags
+           #~(list
+              (string-append "-DSOSAGE_DATA_FOLDER="
+                             #$(this-package-input "superfluous-returnz-data")))))
+    (inputs
+     (list libyaml
+           lz4
+           sdl2
+           sdl2-mixer-x
+           sdl2-ttf
+           superfluous-returnz-data))
+    (synopsis "Superfluous Returnz")
+    (description
+     "The action takes place in Fochougny, a very quiet French village
+where the billionaire Harpagon Lonion lives.
+He regularly dresses up as Superfluous, a very useless superhero in such a
+peaceful countryside.
+
+Helped by his assistant Sophie, he will try to put his hands on the mysterious
+apple thief who terrorizes the orchards of Fochougny.")
+    (home-page "https://studios.ptilouk.net/superfluous-returnz/")
+    (license license:expat)))
+
 (define-public superstarfighter
   (package
     (name "superstarfighter")