From debbugs-submit-bounces@debbugs.gnu.org Thu Dec 08 18:47:56 2022 Received: (at submit) by debbugs.gnu.org; 8 Dec 2022 23:47:57 +0000 Received: from localhost ([127.0.0.1]:59862 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p3QcO-0007U3-DT for submit@debbugs.gnu.org; Thu, 08 Dec 2022 18:47:56 -0500 Received: from lists.gnu.org ([209.51.188.17]:59968) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1p3QcL-0007Tx-Po for submit@debbugs.gnu.org; Thu, 08 Dec 2022 18:47:54 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p3QcL-0002rZ-KZ for bug-guix@gnu.org; Thu, 08 Dec 2022 18:47:53 -0500 Received: from mout.gmx.net ([212.227.17.20]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1p3QcJ-0003jl-KN for bug-guix@gnu.org; Thu, 08 Dec 2022 18:47:53 -0500 Received: from labiere ([82.69.64.142]) by mail.gmx.net (mrgmx105 [212.227.17.174]) with ESMTPSA (Nemesis) id 1MLQxX-1pKgFj2ETL-00IU4c for ; Fri, 09 Dec 2022 00:47:48 +0100 User-agent: mu4e 1.8.11; emacs 28.2 From: Pierre Langlois To: bug-guix@gnu.org Subject: [tentative PATCH] Failure to guix pull on aarch64 since recent make-linux-libre* Date: Thu, 08 Dec 2022 23:31:48 +0000 Message-ID: <87k031xxss.fsf@gmx.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Provags-ID: V03:K1:hWATMIoEm3VQAG0LG/W+ffDLhT6x1nsPP+AlM6rvwx9ltzNpxJL 3M1hEK2tyMKeOliSDuy+pJPjlAkPDjcFhuuIrLHl8MlyusTv6nIJXCu9xw6c/899ZN1Ve8L yEVSScdovgu4u1J6WsxEhAUs8Lakswr1pvukz6RQLFij7H4MnHjZN5/UoSgUX/SAfjhn+Dc wL0QwSionb5nC1RPCDP5w== X-Spam-Flag: NO UI-OutboundReport: notjunk:1;M01:P0:W/OumeZyqNk=;lajclr6ytWgOKIswwzTNGTJ2NtX BsxQxZMBfuQS+Gh7bf7Ojv/+QGNtw3UPHK28TJ0q7Q0q5cJbcRtFY11l+6X39xovApEnIBjuz coNnIL44Vktn43k0mJKWsvLQagdpfj/RYCDrWVHa5rH8qtURKCl9tsklWc2RcJ2/PnSTqkRZ3 9nMk+gGIioKYryY6uKWYqWU5Xk8lK96oJubXp6EZccz60882YGPZYbCuTIapCvYniWx7zs1kU Dx+RjO+7lRfGolUaszgPa0Mz6OzVXCh6W/DEP1qQ6a/6IEpPvwu8a2p1pDlz84BCxXRFtmsW8 KbhqjOHwPQK3ovv7HUhCEACbZ4QpQ/dPzaqSo+f8Y2EWWyasvr5DstisFDoGx4FbdyC5p8kGT ffVMzD/shKixqDxgHNUK3aRaY6DImputkgQjyn1oOS9l04317MIMXQwt8gjWnlcPirq1CESNz NsmJ2bp/qxaCnBz0WeiBcrl5h6Cr5U0xzaD870070xNuRe5NfYdegn6sp2YglbsH/bWThqfUU RrS6nPHAz/ONQEzsCSAeiK8WFu5FBUcd0MmAyhWljUTeMpqiIHs6afX4tM39BzaazOa8rb4B9 lX4nVYDbk2R7Iimdk85xs6hVg3k76BjYYTEu2U47iGcDwIrH/ziKJ+smvw2bCxV8ryL0B+M8Q ASGWQIUv7XozzuTivTpfzGEvcQWV0C8xI18AkIPI2kM3T+imsZ0Wu17k1u9tdr9d6uQvTn1V0 NXKtWBMf1DCFDoLM+r2tEcB/UMWOgMjG5Wd+zb6sEeUScRkWqAGyWq3jBplPov26uEG4CG2vE iFvBjZzji4tQeJ83K+GFuKTdM3ow6aWN3jUA7nJfYlXVuPMsDKKYUzLG2JNnmRmJkjhDmmej/ O1xdy87r6D4vXqvsRI1VRFt1BhJKpEH3d/V/60ccxWLWM3oA+x3CrpT8V5RSe2JFYS7+xgYf1 G0gxJw== Received-SPF: pass client-ip=212.227.17.20; envelope-from=pierre.langlois@gmx.com; helo=mout.gmx.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) 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.4 (--) --=-=-= Content-Type: multipart/signed; boundary="==-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" --==-=-= Content-Type: text/plain Hi Guix! I've been getting errors while running `guix pull' on an aarch64 system, during the final guix-package-cache step: --8<---------------cut here---------------start------------->8--- (repl-version 0 1 1) Generating package cache for '/gnu/store/m8in1imi93snq711d7568dj9hlrx4diz-profile'... Backtrace: In ice-9/boot-9.scm: 1747:15 19 (with-exception-handler # ?) 1752:10 18 (with-exception-handler _ _ #:unwind? _ # _) In guix/repl.scm: 99:21 17 (_) In unknown file: 16 (_ # # ?) 15 (primitive-load "/gnu/store/3x6g541ixbmdjav4ky6dp1ryj4l?") In ice-9/boot-9.scm: 1752:10 14 (with-exception-handler _ _ #:unwind? _ # _) In gnu/packages.scm: 438:11 13 (generate-package-cache _) In srfi/srfi-1.scm: 460:18 12 (fold # _ _) In gnu/packages.scm: 390:9 11 (expand-cache . _) In guix/packages.scm: 1317:17 10 (supported-package? # ?) In guix/memoization.scm: 101:0 9 (_ # # ?) In guix/packages.scm: 1295:37 8 (_) 1555:16 7 (package->bag _ _ _ #:graft? _) 1660:43 6 (thunk) In gnu/packages/linux.scm: 986:37 5 (arguments #) In guix/gexp.scm: 460:52 4 (%local-file #f # ?) In unknown file: 3 (basename #f #) In ice-9/boot-9.scm: 1685:16 2 (raise-exception _ #:continuable? _) 1780:13 1 (_ #<&compound-exception components: (#<&assertion-fail?>) In unknown file: 0 (backtrace #) (exception wrong-type-arg (value "scm_to_utf8_stringn") (value "Wrong type argument in position ~A (expecting ~A): ~S") (value (1 "string" #f)) (value (#f))) --8<---------------cut here---------------end--------------->8--- I was able to decipher the backtrace to *maybe* put together a fix, but I'm unsure why the problem started. My best guess is that it started with commit dfc6957a5af7d179d4618eb19d4f555c519bc6f2, even though I can't find where the issue actually is, it looks fine to me! What seems to happen is that the `kernel-config' function now receive an `arch' argument for an architecture that isn't actually supported by that kernel, as is the case for linux-libre@4.14.300. And, correctly, the function should not expect to ever get such arch value to begin with, so we get a `(local-file #f)'. --8<---------------cut here---------------start------------->8--- (define* (kernel-config arch #:key variant) "Return a file-like object of the Linux-Libre build configuration file for ARCH and optionally VARIANT, or #f if there is no such configuration." (let* ((name (string-append (if variant (string-append variant "-") "") (if (string=? "i386" arch) "i686" arch) ".conf")) (file (string-append "linux-libre/" name))) (local-file (search-auxiliary-file file)))) --8<---------------cut here---------------end--------------->8--- I think it's fair for that function expect the arch to be valid (why would you ask the config for an unsupported arch?). I think it should be possible to fix this by checking the arch is supported at the call site: --==-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQFMBAEBCgA2FiEEctU9gYy29KFyWDdMqPyeRH9PfVQFAmOSd6MYHHBpZXJyZS5s YW5nbG9pc0BnbXguY29tAAoJEKj8nkR/T31UvkAIAIfIh3KKv00mDsQcuElgIj3h eIWMDO616u00pJeRcC9+C3rD6KPfeURzCkprcIqh9QEoiJDJhO5D2KX/beriz0ai I/Bqwq3r+zO7Dq6lWOehW/cL4afcqwuVax0XjusPgfLWGmzynY+mQA4FtTeTBfRi ekGEdY3GNsExqE/HtC5QW5Ffms8Lyt2fjRb+r+w6JHiJ1G3WT2lUiBqDezAXkTEm +x/m/tBLkRil45+Xy2oROwpjaVi6BZnceKF6SKPr8MhzMUuH+ronD8oMgFTQvZ0W uSUdmBnVCdw5AiEiMD562Rk+kS3DZN6mTDL6jayw8sXP24+zyT7DkyNh4jhrBg8= =nB9W -----END PGP SIGNATURE----- --==-=-=-- --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-gnu-make-linux-libre-Do-not-get-config-for-unsupport.patch From 77829140f14928e30cbe4e53c625be3ba2f5895f Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Thu, 8 Dec 2022 23:41:40 +0000 Subject: [PATCH] gnu: make-linux-libre*: Do not get config for unsupported systems. * gnu/packages/linux.scm (make-linux-libre*)[phases] : Check arch is in supported-systems before calling configuration-file. --- gnu/packages/linux.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5ae6366593..87fc9fe94c 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -983,6 +983,7 @@ (define* (make-linux-libre* version gnu-revision source supported-systems (or (%current-target-system) (%current-system)))))) (and configuration-file arch + (member arch supported-systems) (configuration-file arch #:variant (version-major+minor version)))) -- 2.38.1 --=-=-= Content-Type: text/plain But I'm not quite sure why this is happening, some quirk from moving things over gexps? I'm currently trying this fix to make sure it does solve the problem (guix pull takes so long without substitutes :-) ). Will report back in 5-10 minutes. Thanks! Pierre --=-=-=--