From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id OMs0E/wdtmFsCQEAgWs5BA (envelope-from ) for ; Sun, 12 Dec 2021 17:06:20 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id oNUCD/wdtmHuegAA1q6Kng (envelope-from ) for ; Sun, 12 Dec 2021 16:06:20 +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 F02C19973 for ; Sun, 12 Dec 2021 17:06:19 +0100 (CET) Received: from localhost ([::1]:54180 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mwRMh-0004ff-5K for larch@yhetil.org; Sun, 12 Dec 2021 11:06:19 -0500 Received: from eggs.gnu.org ([209.51.188.92]:60762) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mwRMQ-0004eK-Rv for guix-patches@gnu.org; Sun, 12 Dec 2021 11:06:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:41368) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1mwRMQ-0005PE-JO for guix-patches@gnu.org; Sun, 12 Dec 2021 11:06:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1mwRMQ-00008L-Eg for guix-patches@gnu.org; Sun, 12 Dec 2021 11:06:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#51838] [PATCH v3 04/43] gnu: node: Add an npmrc file to set nodedir. Resent-From: Pierre Langlois Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 12 Dec 2021 16:06:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 51838 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Philip McGrath Cc: 51838@debbugs.gnu.org X-Debbugs-Original-Cc: 51838@debbugs.gnu.org, guix-patches@gnu.org Received: via spool by 51838-submit@debbugs.gnu.org id=B51838.1639325150482 (code B ref 51838); Sun, 12 Dec 2021 16:06:02 +0000 Received: (at 51838) by debbugs.gnu.org; 12 Dec 2021 16:05:50 +0000 Received: from localhost ([127.0.0.1]:52912 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mwRME-00007i-BR for submit@debbugs.gnu.org; Sun, 12 Dec 2021 11:05:50 -0500 Received: from mout.gmx.net ([212.227.17.21]:55587) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1mwRMC-00007W-Le for 51838@debbugs.gnu.org; Sun, 12 Dec 2021 11:05:49 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1639325142; bh=MbNwfFhtYIiyJO4sFhpy0ljg+BC8H/v1AHKzniwRDNc=; h=X-UI-Sender-Class:References:From:To:Cc:Subject:Date:In-reply-to; b=VviGzGpHTiygTF8tR6Y0nPvbOcgURWpGbLW11//7V9sfKY6rffwMKtfGYQuZtwJ4z VTV+OP9F0y+2bsXGsQFgu21RhBBObOtSrw30z+FRh6M7uWqAs9tRby/bBYANeswDKU UAqK/Y/ArpwsbH5kk0SM8D3h2j6phskvrVuXjENs= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from labiere ([82.69.64.142]) by mail.gmx.net (mrgmx105 [212.227.17.174]) with ESMTPSA (Nemesis) id 1M72oB-1mspuz03XL-008Yo7; Sun, 12 Dec 2021 17:05:42 +0100 References: <46a042bc08eb72a068b1e8c69bfe28cf2d4b2e53.camel@gmail.com> <20211208202838.752542-1-philip@philipmcgrath.com> <20211208202838.752542-5-philip@philipmcgrath.com> User-agent: mu4e 1.6.10; emacs 27.2 From: Pierre Langlois Date: Sun, 12 Dec 2021 15:19:39 +0000 In-reply-to: <20211208202838.752542-5-philip@philipmcgrath.com> Message-ID: <877dc924h7.fsf@gmx.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" X-Provags-ID: V03:K1:KwJnunaYDaj6IClH7PZxHuCd5BmspHj6hJVO7yT8wRq2CALGs2V dHfBa9bxOjJRze3EUPVBmgtmAbIeHglakNZwHulxJFZC7AiXsHP625fb6PnOTKCHYTZeqGp xfhNmpnP2Z1CaUT4TvN5HcMkxznYnpliCOikpK1F0Fu9OEREZAO8/ZR7zrluDMMj4WEvd/g vGHEiKpBfnIUZlooX7LMw== X-UI-Out-Filterresults: notjunk:1;V03:K0:GGc+q8etRu8=:LTPl57AnvS0eQh6yhK1zCX iI3qxXV9xfnxF0XDhLpn2d8HiMBaCePTm+H6fsbX+na0fHwVUH6gv7QuGQYwPpgOrF6cd7fPp BCDAL59pjleRn6kwuOtiF3yhRdJ967sjfMapvipGiQzKnNJgnrAkWRCYvvaMUjyXrQFcpLPeH pjCapk00dT64lxQqGv/nZ7+f6yUqG0ohA7EBlRPu3OIVfs534roLdnz9xZUfMU7/ZiEIhC3Zj ySR9fdD10eTW7KwOSctAq3gKOp6ZPGauLQ1t+gKNOvH3dfverXISJBWzTASrZ5TSpLf2S+x3K uDgpZnndECAKWSXUNonwwcBVhs8Qdpo9xH22DTlIRTmfrzRloSN4kMMfZ2S1T7KTRBXQMJ3Tt qRfLbgQT6v7aeppSkRLr6aoDdQ+8IGCgzJqZnzWrT8H29sHHtHCGqRy1lwNVJdfjiNji0CVaJ CzFjsArWgQom5QtlKF34o3HDXZ7S3Rh1gJSB+YSiAqz/L0VlqL3x5Xg6SOdRxf4ewEMc3OqyC UwRpkzAtgQ9Q/RKsIongG20GozxK1x5NUqxg2CYmM5wH5cW3dERYhFXf6LLhnAepq8P8uyVjA w8Qmb3JIXJZCmqNQ+bhOfVHq0IkNWorZcifER2bPQ8AoF/nKH3CcUh0rvNOsyvbFWloDQAptp tQPJQ0U6pT7qRlSM+TqnAm2QgHekU7Q07/wIFBIzgd2YEwsVjLpL7+kaCdpZFKQEgVKR7umhb CUbhAXRlc6VWmjQ/LvoEXGXI4vLXZ4+krsQy0PzkfJ+AoTCY5h50F2jUmPXxRad+yVNCiQHP3 TubJo4ZR8SAsSQr7aHDiCeG80UYGZeIYXs7uPnHYzsWTx54DAyW9A3+6Ag1yKuufwKnp9u/6a hK4qGmzYzysry7tQzAZ//BI46O4EBAyS4iAJ4/9qSUvbXnWAgzX7Aro5BnhdiJiKKoqU9D5iN RD1EGrzHEka/Nk6B1eqxHeMP1XXk5xkNQCWPvO51Og2gJ6I8daJ7BWng+NUx5G8BQKgiFcQkn aUc2tr4/pUDS8T15nQ7a9jRXOdUwXfLxllSwu7yCy2PKJ3bx3zNNJXowX0i2JOL6mExQZeMAg rEPiqRxrEIQADA= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1639325180; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=uzUjPa1iILbtIWzTpAEcUM4BhT7v2ZjvehtOyOxt/To=; b=NSijng+Qu275BMTM9mXjv2grOvQvKn1G4D8jL+xfyoS/RxSy8b682E2C1gp7GjPjor5UGL ava3RYD5d5v6IZHuZKCkqaXguW9aQvjdb3jxczSsybx0fZaL7QDNpBufze/hVNs1AhHavQ x90VQYya4ajXSeqlMDJfli2gdhRRktfh/jvw1mz8HZfUBngU0mtwXdXANVsRw4whF7EKR4 ajSJ6M1tp0QP9yRdlcLovlED0L0o0+ciY7c0gdisqA+lw6qlwLBw//EhG7iIVq+0FAN+s5 JTW/2y1BvfK7iDO+oWNa9EZi8HulAugZenzPM+yg9o0UxlD8kE0OImatsJArUw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1639325180; a=rsa-sha256; cv=none; b=FAJildpO6+is9qukDEDBfyFG3BYNE/KVthyIXRg3L4WawubtdGqD/2VsoywNXMXBitqt0w nVOFKltt6Yr/ZwL0Hs6iCav7mj3DuH0+xlyFAjfRxLBGLxoGGNiHD0R/pYHA54rBKqN2Xt 1c4T/ZNglpdN4pNNKD11vupM6JO+bkbcAcKWEw4n7Q67BSyEc0PzJPeLW1p1eW4IoO8GV1 AyxB5VvSRRZHmmMdoC/nFIfkplqBiq3h5UeL/zpz6xFPmnn8sh+m7/RrzvByxfYbcdbCcR 46A/E5sCUgnqEx4/iiyFV5f2Y8T+Z9N5dsTu3XIt/70MvWRsk3UDmuXktv28Ug== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmx.net header.s=badeba3b8450 header.b=VviGzGpH; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmx.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Spam-Score: -3.97 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmx.net header.s=badeba3b8450 header.b=VviGzGpH; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmx.com (policy=none); spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org" X-Migadu-Queue-Id: F02C19973 X-Spam-Score: -3.97 X-Migadu-Scanner: scn1.migadu.com X-TUID: zQwCt6WjPqrW --=-=-= Content-Type: text/plain Philip McGrath writes: > * gnu/packages/node.scm (node, node-lts)[arguments]: Add a phase > 'install-npmrc to create a "built-in" npmrc file that configures > "nodedir" to point to the output store path. > (libnode)[arguments]: Delete the 'install-npmrc phase. > --- > gnu/packages/node.scm | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm > index a57a74fb81..0f67fe79c2 100644 > --- a/gnu/packages/node.scm > +++ b/gnu/packages/node.scm > @@ -250,7 +250,21 @@ (define-public node > (find-files (string-append prefix "/lib/node_modules") > (lambda (file stat) > (executable-file? file)) > - #:stat lstat)))))))) > + #:stat lstat))))) > + (add-after 'install 'install-npmrc > + (lambda* (#:key outputs #:allow-other-keys) > + (let* ((out (assoc-ref outputs "out"))) > + (with-output-to-file > + ;; Use the config file "primarily for distribution > + ;; maintainers" rather than "{prefix}/etc/npmrc", > + ;; especially because node-build-system uses --prefix > + ;; to install things to their store paths: > + (string-append out "/lib/node_modules/npm/npmrc") > + (lambda () > + ;; Tell npm (mostly node-gyp) where to find our > + ;; installed headers so it doesn't try to > + ;; download them from the internet: > + (format #t "nodedir=~a\n" out))))))))) When I run `node-gyp configure' in my tree-sitter packages, it's not able to find the node dir and tries to download headers. So I need to set `npm_config_nodedir' manually, like so: --8<---------------cut here---------------start------------->8--- (add-after 'configure 'configure-gyp (lambda* (#:key inputs #:allow-other-keys) (let ((node (assoc-ref inputs "node"))) (setenv "npm_config_nodedir" node) (invoke (string-append node "/lib/node_modules/npm/bin/node-gyp-bin/node-gyp") "configure")))) --8<---------------cut here---------------end--------------->8--- I'm wondering if the npmrc approach here is working properly? I see in another patch you've used the `npx' command to run `node-gyp rebuild', should I be using that? Thanks, Pierre --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFMBAEBCgA2FiEEctU9gYy29KFyWDdMqPyeRH9PfVQFAmG2HdQYHHBpZXJyZS5s YW5nbG9pc0BnbXguY29tAAoJEKj8nkR/T31UMYsH/0t3lyRkctDDEwfk/xPi24Lc FTCBdmkbnFDts/x8qWz8AS+P2s+ll3uzammOBspuvoMojBedh1nrA23DXm0reO6l nF2WqU6RHSo8nPWaU0leKBMTL30MxkjERo3xQpDBxOtc99q5ZiKxNXkXq0SeZkUv rlkCMFBlp8yIKfvnKvLrRDSKXjXchZ1Tli6Oi97xn24ZyfSMj0hxlL+c/QVnFAeF hA2JuX7LEmT/Seo3VqEgfzn1HQFh5Dnqi0y795tEC9gB4n/0zToRrnkGdoeVxFxr DESzIr7tmQGeK1VBoG0ru3sFdkqlZQpi2rOwOTrAdFJnTABtYvI5F1mFsoRToX4= =aZC9 -----END PGP SIGNATURE----- --=-=-=--