From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id 8kppEg1fxF5YSAAA0tVLHw (envelope-from ) for ; Tue, 19 May 2020 22:34:53 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id sAnyDQ1fxF6BCAAA1q6Kng (envelope-from ) for ; Tue, 19 May 2020 22:34:53 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id E9E299402D1 for ; Tue, 19 May 2020 22:34:52 +0000 (UTC) Received: from localhost ([::1]:60578 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jbAp1-0000i2-Tt for larch@yhetil.org; Tue, 19 May 2020 18:34:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:45388) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jbAon-0000gY-Qq for guix-devel@gnu.org; Tue, 19 May 2020 18:34:37 -0400 Received: from lepiller.eu ([2a00:5884:8208::1]:33162) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jbAom-0003Ly-Ej for guix-devel@gnu.org; Tue, 19 May 2020 18:34:37 -0400 Received: from lepiller.eu (localhost [127.0.0.1]) by lepiller.eu (OpenSMTPD) with ESMTP id ac01b811; Tue, 19 May 2020 22:34:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=lepiller.eu; h=date :in-reply-to:references:mime-version:content-type :content-transfer-encoding:subject:to:from:message-id; s=dkim; bh=+o8CQlmJ8AejQ6qnJ84RdqhPnraAO89TW0uKmaGZ13w=; b=AnBdx8E5q1rR 3sfX4UDVcZSkCJcXWzrGrtn5Kgo5IMfiJl2Q0lFe5QBLTKJPQIppx0Sal9dULhHi sI6EHYbuU7YVX1nTcME9r7zbttq29n0X3afhfbhDe0Zg33yRDznVIcend32EkAGy iQGJMFiYGDZh4+G5tlh1UQ/Q2C7XasLdHASbwMHuNs0IWNPNSNu2q8I9N2eAxtZ0 RNZobTrypeg/j0zreFCA/e77yMGl5v2CGEgPJ1wwkfKeGNMOjIKX8Uy68juiXglm y4THTJlBu9CZV58PECU/1ELWPg650+Kyu87Xbx0gSe+DYG5fdv9VU3P3dA4S+CFX bzaNgTcj3A== Received: by lepiller.eu (OpenSMTPD) with ESMTPSA id 63dc861f (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Tue, 19 May 2020 22:34:29 +0000 (UTC) Date: Tue, 19 May 2020 18:34:00 -0400 User-Agent: K-9 Mail for Android In-Reply-To: <20200519230549.16a299b5@kompiuter> References: <20200519230549.16a299b5@kompiuter> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: The problem of packaging Minetest mods/games To: guix-devel@gnu.org,Jan From: Julien Lepiller Message-ID: <31213033-C62C-4790-B86B-11A3B3CD97AE@lepiller.eu> Received-SPF: none client-ip=2a00:5884:8208::1; envelope-from=julien@lepiller.eu; helo=lepiller.eu X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, URIBL_BLOCKED=0.001 autolearn=_AUTOLEARN X-Spam_action: no action X-BeenThere: guix-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org Sender: "Guix-devel" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=lepiller.eu header.s=dkim header.b=AnBdx8E5; dmarc=pass (policy=none) header.from=lepiller.eu; spf=pass (aspmx1.migadu.com: domain of guix-devel-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-devel-bounces@gnu.org X-Spam-Score: -1.71 X-TUID: 1wx9IXayJs+g Le 19 mai 2020 17:05:49 GMT-04:00, Jan a =C3=A9crit : >Hello, > >Recently I decided to update the Minetest package, which isn't a >problem >itself, but I discovered the package fails to provide the default >minetest game=2E For those who don't know, Minetest is extensible by >desing - all you do is you put a modification/game into a folder - >usually /share/minetest/games or ~/=2Eminetest/games and it is run by the >game engine=2E >I checked the source code and there's a non-public minetest-data >package, which provides the minetest_game and it contains this: > >(arguments > `(#:modules ((guix build utils)) > #:builder (begin > (use-modules (guix build utils)) > (let ((install-dir (string-append > %output > "/share/minetest/games/minetest_game"))) > (mkdir-p install-dir) > (copy-recursively > (assoc-ref %build-inputs "source") > install-dir) > #t)))) > >And this package is in the propagated-inputs fiend of the minetest >package, but it doesn't work=2E > >I would like to understand why it doesn't work, fix it and learn >something new about Guix by the way :) > >The second problem I encountered during examining the package was every >time I changed the path of the minetest_game in the minetest-data >package minetest was also recompiled, which took long time=2E (I thought >the path is improper) >My question is, what is the Guix way of dealing with such packages? >Imagine we have like 100 packaged minetest mods/games=2E Say I wanted to >add one, would I have to recompile the whole minetest package (C++), >despite the fact all mods are just Lua scripts put into folder and >interpreted by the engine? > >Could we for example place the mods in the ~/=2Eminetest/games folder? > > >Jan Wielkiewicz The minetest package declares MINETEST_SUBGAME_PATH=2E This means that min= etest reads (or used to read) that environment variable to find its games= =2E Can you check it is set in your system? Guix should have told you about= it (and relogin should set it automatically)=2E There might be a similar v= ariable for mods we need to declare=2E Minetest gets rebuilt because one of its inputs is different=2E That's the= way guix works, because we cannot be sure the package will be the same wit= h a different input=2E If we didn't, we would not guarantee reproducibility= =2E I think simply installing mods/games in share/minetest/games should work= =2E Installing the additional package in your profile will make them availa= ble to the game=2E Setting MINETEST_SUBGAME_PATH to a local directory in your home might work= as well=2E HTH!