Subject: Re: [bug#34523] Add tetrinet

From: <[email-masked]>
Date: Sun, 30 Jun 2019 10:33:27 +0100 (BST)

On Wed, 10 Apr 2019 14:07:16 +0100 (BST), <[email-masked]> wrote:

> I've attached a patch with an updated source url pointing to the git repository which is served via https.

Since this patch no longer applies, I have attached an updated patch that applies to the guix repository.

From 62f05ce32274d20cddbf6e28649bac1055080292 Mon Sep 17 00:00:00 2001
From: Pkill -9 <[email-masked]>
Date: Sun, 30 Jun 2019 10:29:33 +0100
Subject: [PATCH] gnu: Add tetrinet.

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

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index a5aaf56fb2..0a516d50da 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -43,6 +43,7 @@
 ;;; Copyright © 2019 Jesse Gibbons <[email-masked]>
 ;;; Copyright © 2019 Dan Frumin <[email-masked]>
 ;;; Copyright © 2019 Guillaume Le Vaillant <[email-masked]>
+;;; Copyright © 2019 Pkill -9 <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -7631,3 +7632,45 @@ remake of that series or any other game.")
 the AlphaGo Zero paper.  The current best network weights file for the engine
 can be downloaded from @url{https://zero.sjeng.org/best-network}.")
    (license license:gpl3+)))
+
+(define-public tetrinet
+  (package
+    (name "tetrinet")
+    (version "0.11")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://repo.or.cz/tetrinet.git")
+             (commit "REL_0_11")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1zxd78kwc3p4f10r64z9cqjq77shgyinyrigcx1zn0l4d7qsxg6m"))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("ncurses" ,ncurses)))
+    (arguments
+     `(#:tests? #f ; no tests
+       #:make-flags '("CC=gcc")
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure) ; no configure script.
+                  (add-after 'unpack 'fix-install-dir
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out (assoc-ref outputs "out")))
+                        (mkdir-p (string-append out "/bin"))
+                        (substitute* "Makefile"
+                          (("/usr/games") (string-append out "/bin"))))))
+                  (add-after 'install 'install-documentation
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out"))
+                             (doc (string-append out "/share/doc/" ,name "-" ,version)))
+                        (for-each (lambda (file)
+                                    (install-file file doc))
+                                  (list "README" "tetrinet.txt"))
+                        #t))))))
+    (home-page "http://tetrinet.or.cz")
+    (synopsis "Multiplayer tetris game")
+    (description "TetriNET is a console multiplayer online Tetris game for
+up to six people.  This package includes the server.")
+    (license license:public-domain)))
-- 
2.21.0