diff mbox series

[bug#64362,3/3] gnu: Add mc2mt.

Message ID 77adeda8-6ab9-19f5-4b47-bed7a9f12a42@disroot.org
State New
Headers show
Series [bug#64362,v1,1/3] gnu: Add python-nbt. | expand

Commit Message

Adam Faiz June 30, 2023, 9:34 a.m. UTC
From 0555ce12cecf1f5244d9ca973a7686b3d9d5bc3d Mon Sep 17 00:00:00 2001
Message-Id: <0555ce12cecf1f5244d9ca973a7686b3d9d5bc3d.1688116740.git.adam.faiz@disroot.org>
In-Reply-To: <cover.1688116740.git.adam.faiz@disroot.org>
References: <cover.1688116740.git.adam.faiz@disroot.org>
From: AwesomeAdam54321 <adam.faiz@disroot.org>
Date: Fri, 30 Jun 2023 16:56:23 +0800
Subject: [PATCH 3/3] gnu: Add mc2mt.

* gnu/packages/game-development.scm (mc2mt): New variable.
---
 gnu/packages/game-development.scm | 68 +++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

Comments

Liliana Marie Prikler June 30, 2023, 6:23 p.m. UTC | #1
Am Freitag, dem 30.06.2023 um 17:34 +0800 schrieb Adam Faiz:
> From 0555ce12cecf1f5244d9ca973a7686b3d9d5bc3d Mon Sep 17 00:00:00
> 2001
> Message-Id:
> <0555ce12cecf1f5244d9ca973a7686b3d9d5bc3d.1688116740.git.adam.faiz@di
> sroot.org>
> In-Reply-To: <cover.1688116740.git.adam.faiz@disroot.org>
> References: <cover.1688116740.git.adam.faiz@disroot.org>
> From: AwesomeAdam54321 <adam.faiz@disroot.org>
> Date: Fri, 30 Jun 2023 16:56:23 +0800
> Subject: [PATCH 3/3] gnu: Add mc2mt.
> 
> * gnu/packages/game-development.scm (mc2mt): New variable.
> ---
>  gnu/packages/game-development.scm | 68
> +++++++++++++++++++++++++++++++
>  1 file changed, 68 insertions(+)
> 
> diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-
> development.scm
> index 52f8a3787d..6a5656e3f3 100644
> --- a/gnu/packages/game-development.scm
> +++ b/gnu/packages/game-development.scm
> @@ -56,6 +56,7 @@ (define-module (gnu packages game-development)
>    #:use-module (guix utils)
>    #:use-module (guix build-system cmake)
>    #:use-module (guix build-system gnu)
> +  #:use-module (guix build-system pyproject)
>    #:use-module (guix build-system python)
>    #:use-module (guix build-system scons)
>    #:use-module (gnu packages)
> @@ -1744,6 +1745,73 @@ (define-public ois
>      (home-page "https://github.com/wgois/OIS")
>      (license license:zlib)))
>  
> +(define-public mc2mt
> +  (let ((commit "039dbc26466a430e03c646dc5a9bd0822637a87a")
> +        (revision "0"))
> +  (package
> +    (name "mc2mt")
> +    (version (git-version "0.1" revision commit))
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/listia/mc2mt")
> +             (commit commit)))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32
> "1vnaznwgm87x0n5dp14363p2h54lpzalynrrd6lbs6wgrqq7fq9i"))
> +       (modules '((guix build utils)))
> +       (snippet
> +        #~(begin
> +            (copy-recursively "mc2mt.py" "mc2mtlib/mc2mt.py")
> +            (substitute* "mc2mtlib/__init__.py"
> +              (("from . import minetest_world" all)
> +               (string-append "from . import mc2mt\n"
> +                              all)))
> +            (substitute* "mc2mtlib/argument_parser.py"
> +              (("mineclone2") "mineclone"))
> +            (substitute* "mc2mtlib/mc2mt.py"
> +              (("if __name__ == '__main__':")
> +               "def mc2mt():")
> +              (("(from mc2mtlib import )\\*" all import)
> +               (string-append
> +                import "argument_parser\n"
> +                import "minetest_world\n"
> +                import "blob_writer\n"
> +                import "block_functions\n"
> +                import "block_conversion\n"
> +                import "section_conversion\n\n"
> +                "parse_args = argument_parser.parser.parse_args")))
> +            (with-output-to-file "MANIFEST.in"
> +              (lambda _
> +                (format #t
> +                        "\
> +include mc2mtlib/mods/*.json~%")))
> +            (with-output-to-file "pyproject.toml"
> +              (lambda _
> +                (format #t
> +                        "\
> +[build-system]~@
> +requires = ['setuptools']~@
> +build-backend = 'setuptools.build_meta'~@
> +~@
> +[project]~@
> +name = 'mc2mt'~@
> +version = '0.1'~@
> +dependencies = ['anvil-parser']~@
> +~@
> +[project.scripts]~@
> +mc2mt = 'mc2mtlib:mc2mt.mc2mt'~%")))))))
This snippet looks like you really want to write a patch or two.
> +    (build-system pyproject-build-system)
> +    (propagated-inputs (list python-anvil-parser))
> +    (arguments
> +     (list #:tests? #f)) ; no tests
> +    (synopsis "Minecraft to Minetest world converter")
> +    (description "@code{mc2mt} is a Minecraft to Minetest world
> converter.
> +It can convert worlds from Minecraft 1.9 and later.")
> +    (home-page "https://github.com/listia/mc2mt")
> +    (license license:expat))))
> +
I think we should tone down on the usage of "Minecraft" in synopses and
descriptions.  In particular for the dependencies it ought to describe
the file formats without referring to the program that produces them.

Cheers
Adam Faiz July 1, 2023, 3:20 a.m. UTC | #2
On 7/1/23 02:23, Liliana Marie Prikler wrote:
> Am Freitag, dem 30.06.2023 um 17:34 +0800 schrieb Adam Faiz:
> This snippet looks like you really want to write a patch or two.
You're right, I should have done it as a patch, but I didn't because I don't know how to use
commit message templates for Guix commits.
I always check similiar commits and paste the commit message as a template which is tedious.

>> +    (build-system pyproject-build-system)
>> +    (propagated-inputs (list python-anvil-parser))
>> +    (arguments
>> +     (list #:tests? #f)) ; no tests
>> +    (synopsis "Minecraft to Minetest world converter")
>> +    (description "@code{mc2mt} is a Minecraft to Minetest world
>> converter.
>> +It can convert worlds from Minecraft 1.9 and later.")
>> +    (home-page "https://github.com/listia/mc2mt")
>> +    (license license:expat))))
>> +
> I think we should tone down on the usage of "Minecraft" in synopses and
> descriptions.  In particular for the dependencies it ought to describe
> the file formats without referring to the program that produces them.
Alright.

> Cheers
Liliana Marie Prikler July 1, 2023, 5:31 a.m. UTC | #3
Am Samstag, dem 01.07.2023 um 11:20 +0800 schrieb Adam Faiz:
> On 7/1/23 02:23, Liliana Marie Prikler wrote:
> > Am Freitag, dem 30.06.2023 um 17:34 +0800 schrieb Adam Faiz:
> > This snippet looks like you really want to write a patch or two.
> You're right, I should have done it as a patch, but I didn't because
> I don't know how to use
> commit message templates for Guix commits.
> I always check similiar commits and paste the commit message as a
> template which is tedious.
For a patch, add

* gnu/packages/patches/my-patch.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.

Cheers
diff mbox series

Patch

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 52f8a3787d..6a5656e3f3 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -56,6 +56,7 @@  (define-module (gnu packages game-development)
   #:use-module (guix utils)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system pyproject)
   #:use-module (guix build-system python)
   #:use-module (guix build-system scons)
   #:use-module (gnu packages)
@@ -1744,6 +1745,73 @@  (define-public ois
     (home-page "https://github.com/wgois/OIS")
     (license license:zlib)))
 
+(define-public mc2mt
+  (let ((commit "039dbc26466a430e03c646dc5a9bd0822637a87a")
+        (revision "0"))
+  (package
+    (name "mc2mt")
+    (version (git-version "0.1" revision commit))
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/listia/mc2mt")
+             (commit commit)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1vnaznwgm87x0n5dp14363p2h54lpzalynrrd6lbs6wgrqq7fq9i"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin
+            (copy-recursively "mc2mt.py" "mc2mtlib/mc2mt.py")
+            (substitute* "mc2mtlib/__init__.py"
+              (("from . import minetest_world" all)
+               (string-append "from . import mc2mt\n"
+                              all)))
+            (substitute* "mc2mtlib/argument_parser.py"
+              (("mineclone2") "mineclone"))
+            (substitute* "mc2mtlib/mc2mt.py"
+              (("if __name__ == '__main__':")
+               "def mc2mt():")
+              (("(from mc2mtlib import )\\*" all import)
+               (string-append
+                import "argument_parser\n"
+                import "minetest_world\n"
+                import "blob_writer\n"
+                import "block_functions\n"
+                import "block_conversion\n"
+                import "section_conversion\n\n"
+                "parse_args = argument_parser.parser.parse_args")))
+            (with-output-to-file "MANIFEST.in"
+              (lambda _
+                (format #t
+                        "\
+include mc2mtlib/mods/*.json~%")))
+            (with-output-to-file "pyproject.toml"
+              (lambda _
+                (format #t
+                        "\
+[build-system]~@
+requires = ['setuptools']~@
+build-backend = 'setuptools.build_meta'~@
+~@
+[project]~@
+name = 'mc2mt'~@
+version = '0.1'~@
+dependencies = ['anvil-parser']~@
+~@
+[project.scripts]~@
+mc2mt = 'mc2mtlib:mc2mt.mc2mt'~%")))))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-anvil-parser))
+    (arguments
+     (list #:tests? #f)) ; no tests
+    (synopsis "Minecraft to Minetest world converter")
+    (description "@code{mc2mt} is a Minecraft to Minetest world converter.
+It can convert worlds from Minecraft 1.9 and later.")
+    (home-page "https://github.com/listia/mc2mt")
+    (license license:expat))))
+
 (define-public mygui
   (package
     (name "mygui")