From unknown Sun Jun 22 11:39:21 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#35411 <35411@debbugs.gnu.org> To: bug#35411 <35411@debbugs.gnu.org> Subject: Status: [PATCH] Add hedgewars Reply-To: bug#35411 <35411@debbugs.gnu.org> Date: Sun, 22 Jun 2025 18:39:21 +0000 retitle 35411 [PATCH] Add hedgewars reassign 35411 guix-patches submitter 35411 Nicolas Goaziou severity 35411 normal tag 35411 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 24 04:13:23 2019 Received: (at submit) by debbugs.gnu.org; 24 Apr 2019 08:13:23 +0000 Received: from localhost ([127.0.0.1]:54970 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJD1u-0007FK-Su for submit@debbugs.gnu.org; Wed, 24 Apr 2019 04:13:23 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43518) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJD1s-0007F5-6Y for submit@debbugs.gnu.org; Wed, 24 Apr 2019 04:13:21 -0400 Received: from lists.gnu.org ([209.51.188.17]:50126) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hJD1n-00078c-20 for submit@debbugs.gnu.org; Wed, 24 Apr 2019 04:13:15 -0400 Received: from eggs.gnu.org ([209.51.188.92]:57733) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hJD1l-0003W8-Bl for guix-patches@gnu.org; Wed, 24 Apr 2019 04:13:14 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_LOW, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hJCof-0003EE-1M for guix-patches@gnu.org; Wed, 24 Apr 2019 03:59:42 -0400 Received: from relay5-d.mail.gandi.net ([217.70.183.197]:36361) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hJCoe-0003Cu-NB for guix-patches@gnu.org; Wed, 24 Apr 2019 03:59:40 -0400 X-Originating-IP: 185.131.40.67 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay5-d.mail.gandi.net (Postfix) with ESMTPSA id 680BB1C000B for ; Wed, 24 Apr 2019 07:59:38 +0000 (UTC) From: Nicolas Goaziou To: guix-patches@gnu.org Subject: [PATCH] Add hedgewars Date: Wed, 24 Apr 2019 09:59:37 +0200 Message-ID: <87y33zrfyu.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 217.70.183.197 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) --=-=-= Content-Type: text/plain Hello, The following patch adds hedgewars game. It requires sdl2-net package, which I submitted in a pending patch (see bug#35391). Feedback welcome. Regards, -- Nicolas Goaziou --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-gnu-Add-hedgewars.patch Content-Description: Add hedgewars >From f17328d8810b31653f3007bb4a4950822328a2e5 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 24 Apr 2019 09:52:52 +0200 Subject: [PATCH] gnu: Add hedgewars. * gnu/packages/games.scm (hedgewars): New variable. --- gnu/packages/games.scm | 104 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index da917e2870..d51ecc60fa 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6998,3 +6998,107 @@ pursue their favorite interesting flight simulation idea, and last but certainly not least as a fun, realistic, and challenging desktop flight simulator.") (license license:gpl2+))) + +(define-public hedgewars + (package + (name "hedgewars") + (version "0.9.25") + (source (origin + (method hg-fetch) + (uri (hg-reference + (url "https://hg.hedgewars.org/hedgewars/") + (changeset (string-append version "-release")))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "00rckhalhw596x7zpb7rwg9663019xbg1zafcxfnj4x3dg435rl5")))) + (build-system cmake-build-system) + (arguments + ;; XXX: Engine is written as Pascal source code, requiring Free Pascal + ;; Compiler, which we haven't packaged yet. With the flag below, we use + ;; a Pascal to C translator and Clang instead. + `(#:configure-flags (list "-DBUILD_ENGINE_C=ON") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-failing-test + ;; XXX: Remove single failing test. + (lambda _ + (delete-file "tests/lua/staticmines.lua") + #t)) + (add-after 'unpack 'fix-compiler + ;; XXX: Flag BUILD_ENGINE_C, as set above, implies using Clang to + ;; compile files. However, using `clang' globally leads to the + ;; following issue: + ;; "qtbase-5.11.3/include/qt5/QtCore/qglobal.h:45:12: fatal error: + ;; 'type_traits' file not found". + ;; + ;; Therefore, we make sure to use `c++' everywhere but in the + ;; engine. + (lambda _ + (substitute* "project_files/hwc/CMakeLists.txt" + (("find_package\\(SDL2_ttf 2 REQUIRED\\)" all) + (string-append all "\n" + "set(CMAKE_C_COMPILER ${CLANG_EXECUTABLE})\n" + "set(CMAKE_CXX_COMPILER ${CLANG_EXECUTABLE})"))) + (substitute* "CMakeLists.txt" + (("set\\(CMAKE_C(XX)?_COMPILER \\$\\{CLANG_EXECUTABLE\\}\\)") "")) + #t)) + (replace 'check + (lambda _ + (invoke "ctest")))))) + (inputs + `(("clang" ,clang) + ("ffmpeg" ,ffmpeg) + ("freeglut" ,freeglut) + ("ghc" ,ghc) + ("ghc-entropy" ,ghc-entropy) + ("ghc-hslogger" ,ghc-hslogger) + ("ghc-network" ,ghc-network) + ("ghc-random" ,ghc-random) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-sandi" ,ghc-sandi) + ("ghc-sha" ,ghc-sha) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-vector" ,ghc-vector) + ("ghc-zlib" ,ghc-zlib) + ("glew" ,glew) + ("libpng" ,libpng) + ("lua" ,lua-5.1) + ("physfs" ,physfs) + ("qtbase" ,qtbase) + ("sdl" ,(sdl-union + (list sdl2 sdl2-mixer sdl2-net sdl2-ttf sdl2-image))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (home-page "https://hedgewars.org/") + (synopsis "Funny turn-based artillery game, featuring fighting hedgehogs!") + (description + "Each player controls a team of several hedgehogs. During the course of +the game, players take turns with one of their hedgehogs. They then use +whatever tools and weapons are available to attack and kill the opponents' +hedgehogs, thereby winning the game. + +Hedgehogs may move around the terrain in a variety of ways, normally by +walking and jumping but also by using particular tools such as the ``Rope'' or +``Parachute'', to move to otherwise inaccessible areas. Each turn is +time-limited to ensure that players do not hold up the game with excessive +thinking or moving. A large variety of tools and weapons are available for +players during the game: Grenade, Cluster Bomb, Bazooka, UFO, Homing Bee, +Shotgun, Desert Eagle, Fire Punch, Baseball Bat, Dynamite, Mine, Rope, +Pneumatic pick, Parachute. Most weapons, when used, cause explosions that +deform the terrain, removing circular chunks. + +The landscape is an island floating on a body of water, or a restricted cave +with water at the bottom. A hedgehog dies when it enters the water (either by +falling off the island, or through a hole in the bottom of it), it is thrown +off either side of the arena or when its health is reduced, typically from +contact with explosions, to zero (the damage dealt to the attacked hedgehog or +hedgehogs after a player's or CPU turn is shown only when all movement on the +battlefield has ceased).") + ;; Software as a whole is licensed under GPL-2 terms. Artwork and + ;; scripts are distributed under various terms. + (license (list license:gpl2 + license:bsd-2 license:bsd-3 license:cc-by3.0 license:cc0 + license:expat license:fdl-1.3+ license:public-domain + license:zlib)))) -- 2.21.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 24 06:43:04 2019 Received: (at 35411) by debbugs.gnu.org; 24 Apr 2019 10:43:04 +0000 Received: from localhost ([127.0.0.1]:55105 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJFMl-0004Xy-OO for submit@debbugs.gnu.org; Wed, 24 Apr 2019 06:43:03 -0400 Received: from sender4-of-o53.zoho.com ([136.143.188.53]:21393) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJFMj-0004XX-Gm for 35411@debbugs.gnu.org; Wed, 24 Apr 2019 06:43:02 -0400 ARC-Seal: i=1; a=rsa-sha256; t=1556102556; cv=none; d=zoho.com; s=zohoarc; b=NwpItg4Y0hBZS7LNSeeZG6pVmrBtRDPkF1TXMS6mDiLHnzEsBvlt9/baeb71FOOxj3al5V6feOCt5QWZELiHYMC+SSjpom/u7PcJOuPex6p3wbT3+LtKhewvGR5oNe/ITHULzO2lV7ZbA3Rq6sj3HwcW3tbY8DEGJD5xD9agOgw= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1556102556; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To:ARC-Authentication-Results; bh=7wdSorfVe33+0fNsSVROcJ1BzCCUPnro680hQoRWbnw=; b=VQvYLa0A6tt75OWfCrGP4zNhGUqkt6bYjULhwWCrneFfIpWyRH/wxqx4YP9hp/kToybn/lLPco9nHieIzF+NkNc5vgfRS+9etWxdNtjfHnT5HOtUF+1qdk/QM4X+LFRpxAOjRdz9j19QSqf0wnOVoSjwFUiF6B6ZLkjv4SATqrs= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1556102556; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:To:Cc:Subject:In-reply-to:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding; l=684; bh=7wdSorfVe33+0fNsSVROcJ1BzCCUPnro680hQoRWbnw=; b=Z5R2hrku5Ekd/2ZZXNndaE5jt+N+Qa3GTH143+lHIWmgh77K4nxz+Q+MRBP5Cz0L fN+v8BY4UclH9GOfTSmQUYU5iGmVvgnftV/ai+4izM5lxQweWURRedFNDo5fYs0AcSs PQe6EjdE9n0f0ulUM0qaOuMIPBExrustrxi7/NZM= Received: from localhost (p54AD4EB4.dip0.t-ipconnect.de [84.173.78.180]) by mx.zohomail.com with SMTPS id 1556102552593136.0070735087562; Wed, 24 Apr 2019 03:42:32 -0700 (PDT) References: <87y33zrfyu.fsf@nicolasgoaziou.fr> User-agent: mu4e 1.0; emacs 26.1 From: Ricardo Wurmus To: Nicolas Goaziou Subject: Re: [bug#35411] [PATCH] Add hedgewars In-reply-to: <87y33zrfyu.fsf@nicolasgoaziou.fr> X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC Date: Wed, 24 Apr 2019 12:42:28 +0200 Message-ID: <87mukf65wr.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35411 Cc: 35411@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Nicolas, > The following patch adds hedgewars game. It requires sdl2-net package, > which I submitted in a pending patch (see bug#35391). Thank you. > + ;; XXX: Engine is written as Pascal source code, requiring Free Pas= cal > + ;; Compiler, which we haven't packaged yet. With the flag below, w= e use > + ;; a Pascal to C translator and Clang instead. I tried to package Free Pascal a long time ago, but the compiler is written in Pascal and the GNU Pascal compiler which I tried to use for bootstrapping could not be built=E2=80=A6 What is this Pascal to C translator? Does this mean that we=E2=80=99re usi= ng generated C files here? -- Ricardo From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 24 07:49:15 2019 Received: (at 35411) by debbugs.gnu.org; 24 Apr 2019 11:49:15 +0000 Received: from localhost ([127.0.0.1]:55202 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJGOp-0008C0-37 for submit@debbugs.gnu.org; Wed, 24 Apr 2019 07:49:15 -0400 Received: from relay9-d.mail.gandi.net ([217.70.183.199]:46959) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJGOn-0008Bq-AF for 35411@debbugs.gnu.org; Wed, 24 Apr 2019 07:49:14 -0400 X-Originating-IP: 185.131.40.67 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay9-d.mail.gandi.net (Postfix) with ESMTPSA id 0B969FF803; Wed, 24 Apr 2019 11:49:10 +0000 (UTC) From: Nicolas Goaziou To: Ricardo Wurmus Subject: Re: [bug#35411] [PATCH] Add hedgewars References: <87y33zrfyu.fsf@nicolasgoaziou.fr> <87mukf65wr.fsf@elephly.net> Date: Wed, 24 Apr 2019 13:49:09 +0200 In-Reply-To: <87mukf65wr.fsf@elephly.net> (Ricardo Wurmus's message of "Wed, 24 Apr 2019 12:42:28 +0200") Message-ID: <87sgu7r5ca.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 35411 Cc: 35411@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Hello, Ricardo Wurmus writes: >> + ;; XXX: Engine is written as Pascal source code, requiring Free Pa= scal >> + ;; Compiler, which we haven't packaged yet. With the flag below, = we use >> + ;; a Pascal to C translator and Clang instead. > > I tried to package Free Pascal a long time ago, but the compiler is > written in Pascal and the GNU Pascal compiler which I tried to use for > bootstrapping could not be built=E2=80=A6 Ditto. According to http://www.stack.nl/~marcov/buildfaq.pdf (section 1.2.5), bootstrapping from source is vain. > What is this Pascal to C translator? Does this mean that we=E2=80=99re u= sing > generated C files here? It is a Haskell program, named pas2c, bundled with hedgewars. See . AFAIU, it turns ".pas" files into ".c", and the build process compiles those. IOW, it looks good enough. Regards, --=20 Nicolas Goaziou From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 24 11:22:28 2019 Received: (at 35411) by debbugs.gnu.org; 24 Apr 2019 15:22:28 +0000 Received: from localhost ([127.0.0.1]:56210 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJJjA-00053h-3c for submit@debbugs.gnu.org; Wed, 24 Apr 2019 11:22:28 -0400 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21295) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJJj7-00053T-Q1 for 35411@debbugs.gnu.org; Wed, 24 Apr 2019 11:22:26 -0400 ARC-Seal: i=1; a=rsa-sha256; t=1556119323; cv=none; d=zoho.com; s=zohoarc; b=OHPb65zssb+wbN/QiohKUDL4K+wL78Lvv4Q71Uy3cprTVcVR7p4KV/tiHzghsOniMhZWJVV4IDtzTYIVzZ7R8TdEbsFuKk2wRDmvJA+E7BlOa3fJyeUOirDKjdXIKafCn736xduiMgBB/qPjp7rqCQ0zZCK7K/DscuqXZi4IOZ4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1556119323; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To:ARC-Authentication-Results; bh=YPgzNrdcwgHjf991bbkV+MK2ezS2Pz5/Oib8MJ1wVNg=; b=dStT9Mnwql5kfFGIMRJ0lqnwRv5iUdJsFCWcFHearGLZveMt+5fmBhByzbVTxfyuv9iNhN+ZQOIKnOrdR6vrZzhIOvNZCthbfXBryibQ1d5Xys8HXGRekr8ku8kpfJ+dmH/ByQw8OAK7XVWQU74ODC4Sdo624nVooPYlWH3Z9qg= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass header.i=elephly.net; spf=pass smtp.mailfrom=rekado@elephly.net; dmarc=pass header.from= header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1556119323; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:To:Cc:Subject:In-reply-to:Date:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding; l=3690; bh=YPgzNrdcwgHjf991bbkV+MK2ezS2Pz5/Oib8MJ1wVNg=; b=KsdnBoLQE0nZOXeXvRmgBzFJQnO8OFkhDT/sxZNYudYutVvVB6sP5Y2FnVR6UqbM 8i6L5XVzOsVAywjz+Icuj54BX4NoLxbE/FpeCI/AR6mdxcfBSqn57N+Nnwt4mE3jVyu PtVWnE+BkgpStmmaC55P0g1xre6y4LjaISxEixFw= Received: from localhost (p54AD4EB4.dip0.t-ipconnect.de [84.173.78.180]) by mx.zohomail.com with SMTPS id 1556119248776726.8043670116804; Wed, 24 Apr 2019 08:20:48 -0700 (PDT) References: <87y33zrfyu.fsf@nicolasgoaziou.fr> <87mukf65wr.fsf@elephly.net> <87sgu7r5ca.fsf@nicolasgoaziou.fr> User-agent: mu4e 1.0; emacs 26.1 From: Ricardo Wurmus To: Nicolas Goaziou Subject: Re: [bug#35411] [PATCH] Add hedgewars In-reply-to: <87sgu7r5ca.fsf@nicolasgoaziou.fr> X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC Date: Wed, 24 Apr 2019 17:20:45 +0200 Message-ID: <87k1fj5t0y.fsf@elephly.net> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ZohoMailClient: External X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35411 Cc: 35411@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Hi Nicolas, >> What is this Pascal to C translator? Does this mean that we=E2=80=99re = using >> generated C files here? > > It is a Haskell program, named pas2c, bundled with hedgewars. See > . AFAIU, it > turns ".pas" files into ".c", and the build process compiles those. IOW, > it looks good enough. Oh neat, this is great! Let me go through the rest of the patch: > +(define-public hedgewars > + (package > + (name "hedgewars") > + (version "0.9.25") > + (source (origin > + (method hg-fetch) > + (uri (hg-reference > + (url "https://hg.hedgewars.org/hedgewars/") > + (changeset (string-append version "-release")))) Is there no release tarball? [=E2=80=A6] > + (add-after 'unpack 'remove-failing-test > + ;; XXX: Remove single failing test. > + (lambda _ > + (delete-file "tests/lua/staticmines.lua") > + #t)) Do you know why it fails? Is this an upstream problem or likely something to do with Guix? > + (add-after 'unpack 'fix-compiler > + ;; XXX: Flag BUILD_ENGINE_C, as set above, implies using Clan= g to > + ;; compile files. However, using `clang' globally leads to t= he > + ;; following issue: > + ;; "qtbase-5.11.3/include/qt5/QtCore/qglobal.h:45:12: fatal e= rror: > + ;; 'type_traits' file not found". Is it really necessary to compile with Clang at all? What happens if you compile with GCC? > + (inputs > + `(("clang" ,clang) Is this not actually a native input? > + ("ffmpeg" ,ffmpeg) > + ("freeglut" ,freeglut) > + ("ghc" ,ghc) I think this also might be a native input. > + (synopsis "Funny turn-based artillery game, featuring fighting hedge= hogs!") Please remove the final exclamation point and the comma. Maybe remove =E2=80=9CFunny=E2=80=9D because that=E2=80=99s subjective, but feel free to= ignore me. > + "Each player controls a team of several hedgehogs. During the cour= se of > +the game, players take turns with one of their hedgehogs. They then use > +whatever tools and weapons are available to attack and kill the opponent= s' > +hedgehogs, thereby winning the game. > + > +Hedgehogs may move around the terrain in a variety of ways, normally by > +walking and jumping but also by using particular tools such as the ``Rop= e'' or > +``Parachute'', to move to otherwise inaccessible areas. Each turn is > +time-limited to ensure that players do not hold up the game with excessi= ve > +thinking or moving. A large variety of tools and weapons are available = for > +players during the game: Grenade, Cluster Bomb, Bazooka, UFO, Homing Bee, > +Shotgun, Desert Eagle, Fire Punch, Baseball Bat, Dynamite, Mine, Rope, > +Pneumatic pick, Parachute. Most weapons, when used, cause explosions th= at > +deform the terrain, removing circular chunks. > + > +The landscape is an island floating on a body of water, or a restricted = cave > +with water at the bottom. A hedgehog dies when it enters the water (eit= her by > +falling off the island, or through a hole in the bottom of it), it is th= rown > +off either side of the arena or when its health is reduced, typically fr= om > +contact with explosions, to zero (the damage dealt to the attacked hedge= hog or > +hedgehogs after a player's or CPU turn is shown only when all movement o= n the > +battlefield has ceased).") The description is a bit long. We don=E2=80=99t need a list of weapons or = the rules of the game (=E2=80=9Cdies when it enters the water=E2=80=9D). Could= you try to shorten it and make sure that the first sentence describes what this is all about? Thanks for packaging it! -- Ricardo From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 24 12:57:32 2019 Received: (at 35411) by debbugs.gnu.org; 24 Apr 2019 16:57:32 +0000 Received: from localhost ([127.0.0.1]:56365 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJLD8-00014y-L0 for submit@debbugs.gnu.org; Wed, 24 Apr 2019 12:57:31 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:54783) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hJLD6-00014o-6Q for 35411@debbugs.gnu.org; Wed, 24 Apr 2019 12:57:29 -0400 X-Originating-IP: 185.131.40.67 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id 0FDF920002; Wed, 24 Apr 2019 16:57:25 +0000 (UTC) From: Nicolas Goaziou To: Ricardo Wurmus Subject: Re: [bug#35411] [PATCH] Add hedgewars References: <87y33zrfyu.fsf@nicolasgoaziou.fr> <87mukf65wr.fsf@elephly.net> <87sgu7r5ca.fsf@nicolasgoaziou.fr> <87k1fj5t0y.fsf@elephly.net> Date: Wed, 24 Apr 2019 18:57:24 +0200 In-Reply-To: <87k1fj5t0y.fsf@elephly.net> (Ricardo Wurmus's message of "Wed, 24 Apr 2019 17:20:45 +0200") Message-ID: <87o94vqr2j.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 35411 Cc: 35411@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hello again, Ricardo Wurmus writes: >> + (source (origin >> + (method hg-fetch) >> + (uri (hg-reference >> + (url "https://hg.hedgewars.org/hedgewars/") >> + (changeset (string-append version "-release")))) > > Is there no release tarball? Oops. There is! I missed it the first time I looked at the tarballs, and thought they only provided binaries and pointed to distributions packages. Well, anyway, here it is. >> + (add-after 'unpack 'remove-failing-test >> + ;; XXX: Remove single failing test. >> + (lambda _ >> + (delete-file "tests/lua/staticmines.lua") >> + #t)) > > Do you know why it fails? Is this an upstream problem or likely > something to do with Guix? I tried to make the tests more verbose, but I didn't succeed. Note that it is a test in a "non-critical" directory. I assume this failure is expected, somehow. > >> + (add-after 'unpack 'fix-compiler >> + ;; XXX: Flag BUILD_ENGINE_C, as set above, implies using Cla= ng to >> + ;; compile files. However, using `clang' globally leads to = the >> + ;; following issue: >> + ;; "qtbase-5.11.3/include/qt5/QtCore/qglobal.h:45:12: fatal = error: >> + ;; 'type_traits' file not found". > > Is it really necessary to compile with Clang at all? What happens if > you compile with GCC? The configure script yells at me as Clang is missing. If I eschew the check in the CMakeLists.txt file, compilation halts with an error. Long story short, I don't think we can build it without both clang and gcc. > >> + (inputs >> + `(("clang" ,clang) > > Is this not actually a native input? Indeed. >> + ("ghc" ,ghc) > > I think this also might be a native input. OK. >> + (synopsis "Funny turn-based artillery game, featuring fighting hedg= ehogs!") > > Please remove the final exclamation point and the comma. Maybe remove > =E2=80=9CFunny=E2=80=9D because that=E2=80=99s subjective, but feel free = to ignore me. OK. I simply copied the description from the FSF directory. > The description is a bit long. We don=E2=80=99t need a list of weapons o= r the > rules of the game (=E2=80=9Cdies when it enters the water=E2=80=9D). Cou= ld you try to > shorten it and make sure that the first sentence describes what this is > all about? OK. Here is an update, taken from FSF directory. I also fixed a typo in a license. Let me know if it is better now. > Thanks for packaging it! Thank you for the review. Regards, --=20 Nicolas Goaziou --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-gnu-Add-hedgewars.patch Content-Description: Add hedgewars (take 2) >From 65c3d7de785821a1aaf4928fa9827cea0ce3d88d Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Wed, 24 Apr 2019 09:52:52 +0200 Subject: [PATCH] gnu: Add hedgewars. * gnu/packages/games.scm (hedgewars): New variable. --- gnu/packages/games.scm | 86 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index da917e2870..435c440d7b 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -6998,3 +6998,89 @@ pursue their favorite interesting flight simulation idea, and last but certainly not least as a fun, realistic, and challenging desktop flight simulator.") (license license:gpl2+))) + +(define-public hedgewars + (package + (name "hedgewars") + (version "0.9.25") + (source (origin + (method url-fetch) + (uri (string-append "https://www.hedgewars.org/download/releases/" + "hedgewars-src-" version ".tar.bz2")) + (sha256 + (base32 + "08x7fqpy0hpnbfq2k06g522xayi7s53bca819zfhalvqnqs76pdk")))) + (build-system cmake-build-system) + (arguments + ;; XXX: Engine is built as Pascal source code, requiring Free Pascal + ;; Compiler, which we haven't packaged yet. With the flag below, we use + ;; a Pascal to C translator and Clang instead. + `(#:configure-flags (list "-DBUILD_ENGINE_C=ON") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-failing-test + ;; XXX: Remove single failing test. Note: it is marked + ;; a "non-critical" test. + (lambda _ + (delete-file-recursively "tests/lua_noncritical") + #t)) + (add-after 'unpack 'fix-compiler + ;; XXX: Flag BUILD_ENGINE_C, as set above, implies using Clang to + ;; compile files. However, using `clang' globally leads to the + ;; error: qtbase-5.11.3/include/qt5/QtCore/qglobal.h:45:12: fatal + ;; error: 'type_traits' file not found. + ;; + ;; Therefore, we make sure to use `c++' everywhere but in the + ;; engine. + (lambda _ + (substitute* "project_files/hwc/CMakeLists.txt" + (("find_package\\(SDL2_ttf 2 REQUIRED\\)" all) + (string-append all "\n" + "set(CMAKE_C_COMPILER ${CLANG_EXECUTABLE})\n" + "set(CMAKE_CXX_COMPILER ${CLANG_EXECUTABLE})"))) + (substitute* "CMakeLists.txt" + (("set\\(CMAKE_C(XX)?_COMPILER" all) (string-append "#" all))) + #t)) + (replace 'check + (lambda _ + (invoke "ctest")))))) + (inputs + `(("ffmpeg" ,ffmpeg) + ("freeglut" ,freeglut) + ("ghc-entropy" ,ghc-entropy) + ("ghc-hslogger" ,ghc-hslogger) + ("ghc-network" ,ghc-network) + ("ghc-random" ,ghc-random) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-sandi" ,ghc-sandi) + ("ghc-sha" ,ghc-sha) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-vector" ,ghc-vector) + ("ghc-zlib" ,ghc-zlib) + ("glew" ,glew) + ("libpng" ,libpng) + ("lua" ,lua-5.1) + ("physfs" ,physfs) + ("qtbase" ,qtbase) + ("sdl" ,(sdl-union + (list sdl2 sdl2-mixer sdl2-net sdl2-ttf sdl2-image))))) + (native-inputs + `(("clang" ,clang) + ("ghc" ,ghc) + ("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (home-page "https://hedgewars.org/") + (synopsis "Turn-based artillery game featuring fighting hedgehogs") + (description + "Hedgewars is a turn based strategy, artillery, action and comedy game, +featuring the antics of pink hedgehogs with attitude as they battle from the +depths of hell to the depths of space. + +As commander, it's your job to assemble your crack team of hedgehog soldiers +and bring the war to your enemy.") + ;; Software as a whole is licensed under GPL-2 terms. Artwork and + ;; scripts are distributed under various terms. + (license (list license:gpl2 + license:bsd-2 license:bsd-3 license:cc-by3.0 license:cc0 + license:expat license:fdl1.3+ license:public-domain + license:zlib)))) -- 2.21.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Mon Apr 29 08:45:35 2019 Received: (at 35411-done) by debbugs.gnu.org; 29 Apr 2019 12:45:35 +0000 Received: from localhost ([127.0.0.1]:38617 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hL5f5-0001WW-65 for submit@debbugs.gnu.org; Mon, 29 Apr 2019 08:45:35 -0400 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:34821) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hL5f3-0001WN-Da for 35411-done@debbugs.gnu.org; Mon, 29 Apr 2019 08:45:33 -0400 X-Originating-IP: 185.131.40.67 Received: from localhost (40-67.ipv4.commingeshautdebit.fr [185.131.40.67]) (Authenticated sender: admin@nicolasgoaziou.fr) by relay7-d.mail.gandi.net (Postfix) with ESMTPSA id 16B3920008 for <35411-done@debbugs.gnu.org>; Mon, 29 Apr 2019 12:45:30 +0000 (UTC) From: Nicolas Goaziou To: 35411-done@debbugs.gnu.org Subject: [PATCH] Add hedgewars Date: Mon, 29 Apr 2019 14:45:29 +0200 Message-ID: <87muk9m13q.fsf@nicolasgoaziou.fr> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 35411-done X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) Pushed as a3d4a631fed40c2ddfe41a700dde287458669ca4. Thank you. Regards, -- Nicolas Goaziou From unknown Sun Jun 22 11:39:21 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 28 May 2019 11:24:05 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator