Re: [PATCH 3/3] gnu: Add minetest.
Ludovic Courtès writes: > David Thompson skribis: > >> From 55e5624ec2a18c18d5d135170cd8693dbf2c8bda Mon Sep 17 00:00:00 2001 >> From: David Thompson >> Date: Fri, 5 Sep 2014 14:46:44 -0400 >> Subject: [PATCH 3/3] gnu: Add minetest. >> >> * gnu/packages/games.scm (minetest): New variable. > > LGTM, please push. I won't be pushing this one. I'm going to send 2 new patches that improve on this. :) -- David Thompson Web Developer - Free Software Foundation - http://fsf.org GPG Key: 0FF1D807 Support the FSF: https://fsf.org/donate
Re: [PATCH 3/3] gnu: Add minetest.
David Thompson skribis: > From 55e5624ec2a18c18d5d135170cd8693dbf2c8bda Mon Sep 17 00:00:00 2001 > From: David Thompson > Date: Fri, 5 Sep 2014 14:46:44 -0400 > Subject: [PATCH 3/3] gnu: Add minetest. > > * gnu/packages/games.scm (minetest): New variable. LGTM, please push. Ludo’.
Re: [PATCH 3/3] gnu: Add minetest.
Ludovic Courtès writes: > David Thompson skribis: > >> * gnu/packages/games.scm (minetest): New variable. > > [...] > >> +(arguments >> + '(#:phases (alist-cons-before >> + 'configure 'set-cpath >> + (lambda* (#:key inputs #:allow-other-keys) >> + ;; Adjust the CPATH so that cmake can find irrlicht, >> + ;; openal, and curl headers. > > Why is this needed? Doesn’t CMake use `pkg-config openal --cflags` and > similar? > Not from what I can tell. At least not the way this cmake file is written. > Perhaps ‘set-path-environment-variable’ could be used, as done for > Abbaye? > 'set-path-environment-variable' is much cleaner. Forgot about that handy procedure. >> +(description >> + "Minetest is an infinite-world block sandbox game and a game engine.") > > Please expound a bit. > Added a longer description. New patch below. >From 55e5624ec2a18c18d5d135170cd8693dbf2c8bda Mon Sep 17 00:00:00 2001 From: David Thompson Date: Fri, 5 Sep 2014 14:46:44 -0400 Subject: [PATCH 3/3] gnu: Add minetest. * gnu/packages/games.scm (minetest): New variable. --- gnu/packages/games.scm | 59 ++ 1 file changed, 59 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 3faf892..79521da 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -45,6 +45,9 @@ #:use-module (gnu packages pulseaudio) #:use-module (gnu packages linux) #:use-module (gnu packages zip) + #:use-module (gnu packages xiph) + #:use-module (gnu packages curl) + #:use-module (gnu packages lua) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake)) @@ -401,3 +404,59 @@ buffers, and audio capture.") C++.") (home-page "http://irrlicht.sourceforge.net/";) (license zlib))) + +(define-public minetest + (package +(name "minetest") +(version "0.4.10") +(source (origin + (method url-fetch) + (uri (string-append +"https://github.com/minetest/minetest/archive/"; +version ".tar.gz")) + (sha256 + (base32 +"1xxv0g83iqszjgwnbdcbsprqg76cb6jnbsh5qhm7lcwx4wy2y2k2" +(build-system cmake-build-system) +(arguments + '(#:phases (alist-cons-before + 'configure 'set-cpath + (lambda* (#:key inputs #:allow-other-keys) + ;; Adjust the CPATH so that cmake can find irrlicht, + ;; openal, and curl headers. + (set-path-environment-variable "CPATH" + '("include/AL" +"include/irrlicht" +"include/curl" +"include") + (map cdr inputs))) + %standard-phases) + #:configure-flags '("-DRUN_IN_PLACE=0" + "-DENABLE_FREETYPE=1" + "-DENABLE_GETTEXT=1") + #:tests? #f)) ; no check target +(native-inputs + `(("pkg-config" ,pkg-config))) +(inputs + `(("irrlicht" ,irrlicht) + ("libpng" ,libpng) + ("libjpeg-8" ,libjpeg-8) + ("libxxf86vm" ,libxxf86vm) + ("mesa" ,mesa) + ("libogg" ,libogg) + ("libvorbis" ,libvorbis) + ("openal" ,openal) + ("freetype" ,(@ (gnu packages fontutils) freetype)) + ("curl" ,curl) + ("luajit" ,luajit) + ("gettext" ,gnu-gettext) + ("sqlite" ,sqlite))) +(synopsis "Infinite-world block sandbox game") +(description + "Minetest is a sandbox construction game. Players can create and destroy +various types of blocks in a three-dimensional open world. This allows +forming structures in every possible creation, on multiplayer servers or as a +single player. Mods and texture packs allow players to personalize the game +in different ways.") +(home-page "http://minetest.net";) +(license lgpl2.1+))) -- 2.1.0 -- David Thompson Web Developer - Free Software Foundation - http://fsf.org GPG Key: 0FF1D807 Support the FSF: https://fsf.org/donate
Re: [PATCH 3/3] gnu: Add minetest.
David Thompson skribis: > * gnu/packages/games.scm (minetest): New variable. [...] > +(arguments > + '(#:phases (alist-cons-before > + 'configure 'set-cpath > + (lambda* (#:key inputs #:allow-other-keys) > + ;; Adjust the CPATH so that cmake can find irrlicht, > + ;; openal, and curl headers. Why is this needed? Doesn’t CMake use `pkg-config openal --cflags` and similar? Perhaps ‘set-path-environment-variable’ could be used, as done for Abbaye? > +(description > + "Minetest is an infinite-world block sandbox game and a game engine.") Please expound a bit. Thanks, Ludo’.
[PATCH 3/3] gnu: Add minetest.
* gnu/packages/games.scm (minetest): New variable. --- gnu/packages/games.scm | 58 ++ 1 file changed, 58 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 86ad436..e79e8a7 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -45,6 +45,9 @@ #:use-module (gnu packages pulseaudio) #:use-module (gnu packages linux) #:use-module (gnu packages zip) + #:use-module (gnu packages xiph) + #:use-module (gnu packages curl) + #:use-module (gnu packages lua) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake)) @@ -400,3 +403,58 @@ buffers, and audio capture.") "3D game engine.") (home-page "http://irrlicht.sourceforge.net/";) (license bsd-3))) + +(define-public minetest + (package +(name "minetest") +(version "0.4.10") +(source (origin + (method url-fetch) + (uri (string-append +"https://github.com/minetest/minetest/archive/"; +version ".tar.gz")) + (sha256 + (base32 +"1xxv0g83iqszjgwnbdcbsprqg76cb6jnbsh5qhm7lcwx4wy2y2k2" +(build-system cmake-build-system) +(arguments + '(#:phases (alist-cons-before + 'configure 'set-cpath + (lambda* (#:key inputs #:allow-other-keys) + ;; Adjust the CPATH so that cmake can find irrlicht, + ;; openal, and curl headers. + (setenv "CPATH" + (string-append +(getenv "CPATH") ":" +(assoc-ref inputs "irrlicht") +"/include/irrlicht:" +(assoc-ref inputs "openal") +"/include/AL:" +(assoc-ref inputs "curl") +"/include/curl"))) + %standard-phases) + #:configure-flags '("-DRUN_IN_PLACE=0" + "-DENABLE_FREETYPE=1" + "-DENABLE_GETTEXT=1") + #:tests? #f)) ; no check target +(native-inputs + `(("pkg-config" ,pkg-config))) +(inputs + `(("irrlicht" ,irrlicht) + ("libpng" ,libpng) + ("libjpeg-8" ,libjpeg-8) + ("libxxf86vm" ,libxxf86vm) + ("mesa" ,mesa) + ("libogg" ,libogg) + ("libvorbis" ,libvorbis) + ("openal" ,openal) + ("freetype" ,(@ (gnu packages fontutils) freetype)) + ("curl" ,curl) + ("luajit" ,luajit) + ("gettext" ,gnu-gettext) + ("sqlite" ,sqlite))) +(synopsis "Infinite-world block sandbox game") +(description + "Minetest is an infinite-world block sandbox game and a game engine.") +(home-page "http://minetest.net";) +(license lgpl2.1+))) -- 2.1.0