GNU bug report logs - #39825
[PATCH] gnu: Add warsow-qfusion.

Previous Next

Package: guix-patches;

Reported by: Pierre Neidhardt <mail <at> ambrevar.xyz>

Date: Fri, 28 Feb 2020 16:06:02 UTC

Severity: normal

Tags: patch

Done: Pierre Neidhardt <mail <at> ambrevar.xyz>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 39825 in the body.
You can then email your comments to 39825 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Fri, 28 Feb 2020 16:06:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Pierre Neidhardt <mail <at> ambrevar.xyz>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 28 Feb 2020 16:06:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Pierre Neidhardt <mail <at> ambrevar.xyz>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add warsow-qfusion.
Date: Fri, 28 Feb 2020 17:04:51 +0100
* gnu/packages/game-development.scm (warsow-qfusion): New variable.
* gnu/packages/patches/warsow-fix-bool-return-type.patch: New file.
* gnu/local.mk: Add patch.
---
 gnu/local.mk                                  |  1 +
 gnu/packages/game-development.scm             | 49 +++++++++++++++++++
 .../patches/warsow-fix-bool-return-type.patch | 24 +++++++++
 3 files changed, 74 insertions(+)
 create mode 100644 gnu/packages/patches/warsow-fix-bool-return-type.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 857345cfad..82d5490dd8 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1482,6 +1482,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/vsearch-unbundle-cityhash.patch		\
   %D%/packages/patches/vte-CVE-2012-2738-pt1.patch			\
   %D%/packages/patches/vte-CVE-2012-2738-pt2.patch			\
+  %D%/packages/patches/warsow-fix-bool-return-type.patch	\
   %D%/packages/patches/weasyprint-library-paths.patch		\
   %D%/packages/patches/websocketpp-fix-for-boost-1.70.patch	\
   %D%/packages/patches/wicd-bitrate-none-fix.patch		\
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 05e026a846..f0b1b5f066 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -2188,3 +2188,52 @@ rigid body physics library written in C.")
 developers providing an advanced true color console, input, and lots of other
 utilities frequently used in roguelikes.")
     (license license:bsd-3)))
+
+(define-public warsow-qfusion
+  (let ((commit "5ec6887887850fa9e6f0a4418ab2b776f54fb395"))
+    (package
+      (name "warsow-qfusion")
+      (version (git-version "2.1.0" "1" commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/Warsow/qfusion/")
+                      (commit commit)
+                      (recursive? #t)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0bfwyikpwgwqcli33hxscdp557li1hkwyxy069csx5dy6sfvci6q"))
+                ;; Issue reported here: https://github.com/Warsow/qfusion/issues/46
+                (patches (search-patches "warsow-fix-bool-return-type.patch"))))
+      (build-system cmake-build-system)
+      (arguments
+       `(#:tests? #f                    ; No tests.
+         #:configure-flags '("-DQFUSION_GAME=Warsow")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'change-to-build-dir
+             (lambda _
+               (chdir "source")
+               #t)))))
+      (inputs
+       `(("sdl2" ,sdl2)
+         ("libjpeg" ,libjpeg)
+         ("libpng" ,libpng)
+         ("libvorbis" ,libvorbis)
+         ("libogg" ,libogg)
+         ("libtheora" ,libtheora)
+         ("freetype" ,freetype)
+         ("mesa" ,mesa)
+         ("openal" ,openal)
+         ("zlib" ,zlib)
+         ("curl" ,curl)
+         ("qtbase" ,qtbase)
+         ("qtdeclarative" ,qtdeclarative)
+         ("uuid.h" ,util-linux)))
+      (home-page "https://github.com/Warsow/qfusion")
+      (synopsis "Warsow's fork of qfusion, the id Tech 2 derived game engine")
+      (description
+       "This package contains Warsow's fork of qfusion, the id Tech 2 derived
+game engine.  id Tech 2 is the engine originally behind Quake 2.")
+      (license license:gpl2))))
diff --git a/gnu/packages/patches/warsow-fix-bool-return-type.patch b/gnu/packages/patches/warsow-fix-bool-return-type.patch
new file mode 100644
index 0000000000..cd2c58afef
--- /dev/null
+++ b/gnu/packages/patches/warsow-fix-bool-return-type.patch
@@ -0,0 +1,24 @@
+diff --git a/source/ref/imagelib.cpp b/source/ref/imagelib.cpp
+index 33337ac..bb9a156 100644
+--- a/source/ref/imagelib.cpp
++++ b/source/ref/imagelib.cpp
+@@ -762,7 +762,7 @@ static void q_jpg_noop( j_decompress_ptr cinfo ) {
+
+ static boolean q_jpg_fill_input_buffer( j_decompress_ptr cinfo ) {
+ 	Com_DPrintf( "Premature end of jpeg file\n" );
+-	return 1;
++	return TRUE;
+ }
+
+ static void q_jpg_skip_input_data( j_decompress_ptr cinfo, long num_bytes ) {
+@@ -955,7 +955,7 @@ bool WriteJPG( const char *name, r_imginfo_t *info, int quality ) {
+ 	}
+
+ 	// start compression
+-	qjpeg_start_compress( &cinfo, true );
++	qjpeg_start_compress( &cinfo, TRUE );
+
+ 	// feed scanline data
+ 	w3 = cinfo.image_width * info->samples;
+--
+2.25.1
-- 
2.25.1





Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Sat, 29 Feb 2020 19:14:02 GMT) Full text and rfc822 format available.

Message #8 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Pierre Neidhardt <mail <at> ambrevar.xyz>
Cc: 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Sat, 29 Feb 2020 20:13:09 +0100
Hello,

Pierre Neidhardt <mail <at> ambrevar.xyz> writes:

> +(define-public warsow-qfusion

Thank you!

> +  (let ((commit "5ec6887887850fa9e6f0a4418ab2b776f54fb395"))
> +    (package
> +      (name "warsow-qfusion")
> +      (version (git-version "2.1.0" "1" commit))

You may add a comment explaining why we don't provide (outdated) stable
version.

> +      (inputs
> +       `(("sdl2" ,sdl2)
> +         ("libjpeg" ,libjpeg)
> +         ("libpng" ,libpng)
> +         ("libvorbis" ,libvorbis)
> +         ("libogg" ,libogg)
> +         ("libtheora" ,libtheora)
> +         ("freetype" ,freetype)
> +         ("mesa" ,mesa)
> +         ("openal" ,openal)
> +         ("zlib" ,zlib)
> +         ("curl" ,curl)
> +         ("qtbase" ,qtbase)
> +         ("qtdeclarative" ,qtdeclarative)
> +         ("uuid.h" ,util-linux)))

Could you re-order the inputs?

> +      (home-page "https://github.com/Warsow/qfusion")
> +      (synopsis "Warsow's fork of qfusion, the id Tech 2 derived game engine")
> +      (description
> +       "This package contains Warsow's fork of qfusion, the id Tech 2 derived
> +game engine.  id Tech 2 is the engine originally behind Quake 2.")

Even though it is spelled "id" in the repository, I think this is really
"ID".

> +      (license license:gpl2))))

AFAICT, this is gpl2+.

Otherwise, FWIW, LGTM!

Regards,

-- 
Nicolas Goaziou




Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Sat, 29 Feb 2020 21:49:01 GMT) Full text and rfc822 format available.

Message #11 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Tobias Geerinckx-Rice <me <at> tobias.gr>
To: 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Sat, 29 Feb 2020 22:48:36 +0100
[Message part 1 (text/plain, inline)]
Nicolas Goaziou 写道:
> Even though it is spelled "id" in the repository, I think this 
> is really
> "ID".

‘Id’.

Kind regards,

T G-R
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Sat, 29 Feb 2020 22:57:02 GMT) Full text and rfc822 format available.

Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Tobias Geerinckx-Rice via Guix-patches via <guix-patches <at> gnu.org>
Cc: Tobias Geerinckx-Rice <me <at> tobias.gr>, 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Sat, 29 Feb 2020 23:56:25 +0100
Hello,

Tobias Geerinckx-Rice via Guix-patches via <guix-patches <at> gnu.org>
writes:

> Nicolas Goaziou 写道:
>> Even though it is spelled "id" in the repository, I think this is
>> really
>> "ID".
>
> ‘Id’.

<nitpick>
Actually, I think we're both wrong. That should be "id Software", per
<https://en.wikipedia.org/wiki/Id_Software>
</nitpick>

Regards,

-- 
Nicolas Goaziou




Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Sat, 29 Feb 2020 22:57:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Mon, 02 Mar 2020 08:47:03 GMT) Full text and rfc822 format available.

Message #20 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Neidhardt <mail <at> ambrevar.xyz>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Mon, 02 Mar 2020 09:46:37 +0100
[Message part 1 (text/plain, inline)]
Thanks for the review!

> Even though it is spelled "id" in the repository, I think this is really
> "ID".

Actually nope :)

https://en.wikipedia.org/wiki/Id_tech

-- 
Pierre Neidhardt
https://ambrevar.xyz/
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Tue, 03 Mar 2020 10:37:02 GMT) Full text and rfc822 format available.

Message #23 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Neidhardt <mail <at> ambrevar.xyz>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: guix-devel <at> gnu.org, 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Tue, 03 Mar 2020 11:35:58 +0100
[Message part 1 (text/plain, inline)]
I'm trying to use commit c4de15df559410aff0ca6643724e24cddb0ecbbd as
suggested upstream
(https://github.com/Warsow/qfusion/issues/46#issuecomment-592940682) but
git-fetch fails with

--8<---------------cut here---------------start------------->8---
Submodule 'libsrcs' (https://github.com/Warsow/qfusion-libsrcs.git) registered for path 'libsrcs'
Submodule 'third-party/angelscript' (https://github.com/Qfusion/angelscript.git) registered for path 'third-party/angelscript'
Submodule 'third-party/libRocket' (https://github.com/Qfusion/libRocket) registered for path 'third-party/libRocket'
Submodule 'third-party/openal-soft' (https://github.com/Warsow/openal-soft.git) registered for path 'third-party/openal-soft'
Submodule 'third-party/recastnavigation' (https://github.com/Warsow/recastnavigation.git) registered for path 'third-party/recastnavigation'
Submodule 'third-party/sqlite-amalgamation' (https://github.com/Warsow/sqlite-amalgamation.git) registered for path 'third-party/sqlite-amalgamation'
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/libsrcs'...
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/third-party/angelscript'...
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/third-party/libRocket'...
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/third-party/openal-soft'...
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/third-party/recastnavigation'...
Cloning into '/gnu/store/l4bjqp1yjkx0hczz0y2i9h0gzayfdx11-warsow-qfusion-2.5-1.c4de15d-checkout/third-party/sqlite-amalgamation'...
Submodule path 'libsrcs': checked out 'd3c01feeed14aa2f24c1839fedfb43b4c38a3412'
Submodule path 'third-party/angelscript': checked out '478944145ce6d278abc2a119355c425b332482df'
error: Server does not allow request for unadvertised object 867fc72f980b40325c35d2a9182f741e8e0ca876
Fetched in submodule path 'third-party/libRocket', but it did not contain 867fc72f980b40325c35d2a9182f741e8e0ca876. Direct fetching of that commit failed.
git-fetch: '/gnu/store/zm51w1zv9zchx3n3xjw81zrjnlaswawa-git-minimal-2.25.1/bin/git submodule update --init --recursive' failed with exit code 1
--8<---------------cut here---------------end--------------->8---

Indeed, 867fc72f980b40325c35d2a9182f741e8e0ca876 does not exist in
libRocket, so I suspect it was removed, but isn't Git supposed to fetch
master?  Where did it guess this commit from.  I don't understand how
this is possible.  The .gitmodules file is

--8<---------------cut here---------------start------------->8---
[submodule "third-party/libRocket"]
	path = third-party/libRocket
	url = https://github.com/Qfusion/libRocket
[submodule "third-party/angelscript"]
	path = third-party/angelscript
	url = https://github.com/Qfusion/angelscript.git
[submodule "third-party/recastnavigation"]
	path = third-party/recastnavigation
	url = https://github.com/Warsow/recastnavigation.git
[submodule "third-party/openal-soft"]
	path = third-party/openal-soft
	url = https://github.com/Warsow/openal-soft.git
[submodule "third-party/sqlite-amalgamation"]
	path = third-party/sqlite-amalgamation
	url = https://github.com/Warsow/sqlite-amalgamation.git
[submodule "libsrcs"]
	path = libsrcs
	url = https://github.com/Warsow/qfusion-libsrcs.git
--8<---------------cut here---------------end--------------->8---

and

--8<---------------cut here---------------start------------->8---
> git submodule status --recursive
 d3c01feeed14aa2f24c1839fedfb43b4c38a3412 libsrcs (d3c01fe)
 478944145ce6d278abc2a119355c425b332482df third-party/angelscript (heads/master)
+4889e4c100920cbd0fc9004566d6380771bd77a7 third-party/libRocket (release-1.2.1-1264-g4889e4c1)
 6761218e51699f46bf25c377e65b3e9ea5e434b9 third-party/openal-soft (openal-soft-1.18.1-694-g6761218e)
 2c85309280dbc9c82029e7ab16dfb01b9235c74e third-party/recastnavigation (1.5.0-78-g2c85309)
 bc1dd8284590b5092a9bed4deb80a49e01cfb911 third-party/sqlite-amalgamation (heads/master)
--8<---------------cut here---------------end--------------->8---

I must be missing something about Git submodules...

-- 
Pierre Neidhardt
https://ambrevar.xyz/
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Tue, 03 Mar 2020 12:58:01 GMT) Full text and rfc822 format available.

Message #26 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Tobias Geerinckx-Rice <me <at> tobias.gr>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Tue, 03 Mar 2020 13:57:59 +0100
[Message part 1 (text/plain, inline)]
Nicolas Goaziou 写道:
> <nitpick>
> Actually, I think we're both wrong. That should be "id 
> Software", per
> <https://en.wikipedia.org/wiki/Id_Software>
> </nitpick>

<ahkshually>
Id read that article as well and was… surprised: Wikipedia does 
not take kindly to marketingCase™, let alone promote it.

id obviously gets ‘special’ treatment from sympathetic editors in 
a certain age bracket.  ;-)  Any other brand would be forced to 
use Regularcase.

I wrote ‘Id’ just to make clear that it's a word, not an 
abbreviation, and because GNU doesn't recognise trademarks either, 
and oh god none of this matters let's go play in the sun.

Just don't call them I.D.
</ahkshually>

Kind regards,

T G-R, now installing gzdoom again
[signature.asc (application/pgp-signature, inline)]

bug closed, send any further explanations to 39825 <at> debbugs.gnu.org and Pierre Neidhardt <mail <at> ambrevar.xyz> Request was from Pierre Neidhardt <mail <at> ambrevar.xyz> to control <at> debbugs.gnu.org. (Sat, 02 May 2020 14:03:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#39825; Package guix-patches. (Sat, 02 May 2020 14:04:02 GMT) Full text and rfc822 format available.

Message #31 received at 39825 <at> debbugs.gnu.org (full text, mbox):

From: Pierre Neidhardt <mail <at> ambrevar.xyz>
To: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Cc: guix-devel <at> gnu.org, 39825 <at> debbugs.gnu.org
Subject: Re: [bug#39825] [PATCH] gnu: Add warsow-qfusion.
Date: Sat, 02 May 2020 16:03:05 +0200
[Message part 1 (text/plain, inline)]
Somehow this issue went away by itself.

I've fixed added sound support to the package definition.

Merged with 39f1806ca1d04b9aee70e897e06466aadbbee152.

-- 
Pierre Neidhardt
https://ambrevar.xyz/
[signature.asc (application/pgp-signature, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 31 May 2020 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 5 years and 20 days ago.

Previous Next


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