all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Ludovic Courtès" <ludo@gnu.org>
To: Janneke Nieuwenhuizen <janneke@gnu.org>
Cc: Josselin Poiret <dev@jpoiret.xyz>,
	Tobias Geerinckx-Rice <me@tobias.gr>,
	Simon Tournier <zimon.toutoune@gmail.com>,
	Mathieu Othacehe <othacehe@gnu.org>,
	65456@debbugs.gnu.org, Ricardo Wurmus <rekado@elephly.net>,
	Christopher Baines <guix@cbaines.net>
Subject: bug#65456: [PATCH 0/2] Split guix build into more steps for 32bit hosts.
Date: Tue, 22 Aug 2023 23:51:53 +0200	[thread overview]
Message-ID: <87pm3e3fuu.fsf_-_@gnu.org> (raw)
In-Reply-To: <887d53ad5bee76b33d765e744c50e94e063b1ab8.1692723764.git.janneke@gnu.org> (Janneke Nieuwenhuizen's message of "Tue, 22 Aug 2023 19:19:42 +0200")

Hi,

Janneke Nieuwenhuizen <janneke@gnu.org> skribis:

> Similar to the Makefile.am change, this breaks-up packages into 26 chunks
> when building on 32bit.  Also force garbage collection.
>
> * guix/self.scm (compiled-modules)[process-directory/32bit]: New inner define.
> Use it when building on a "i586" or "i686" cpu.

.go files of a Guix built with this new (guix self) would not be found:

--8<---------------cut here---------------start------------->8---
newfstatat(AT_FDCWD, "/gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union/share/guile/site/3.0/guix/ui.scm", {st_mode=S_IFREG|0444, st_size=95284, ...}, 0) = 0
newfstatat(AT_FDCWD, "/gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union/lib/guile/3.0/site-ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/guile/3.0/ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/guile/3.0/ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/gnu/store/4gvgcfdiz67wv04ihqfa8pqwzsb0qpv5-guile-3.0.9/lib/guile/3.0/site-ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/gnu/store/b914k2bjm3wixvd2kc9s03mzvfsif69c-profile/lib/guile/3.0/site-ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/gnu/store/b914k2bjm3wixvd2kc9s03mzvfsif69c-profile/share/guile/site/3.0/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/home/ludo/.guix-home/profile/lib/guile/3.0/site-ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/home/ludo/.guix-home/profile/lib/guile/3.0/site-ccache/guix/ui.go", 0x7ffc4bf07640, 0) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/run/current-system/profile/lib/guile/3.0/site-ccache/guix/ui.go", {st_mode=S_IFREG|0444, st_size=530053, ...}, 0) = 0
--8<---------------cut here---------------end--------------->8---

In fact, guix/*.go is entirely missing, it seems:

$ --8<---------------cut here---------------start------------->8---
ls /gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union/lib/guile/3.0/site-ccache/guix
ls: cannot access '/gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union/lib/guile/3.0/site-ccache/guix': No such file or directory
$ ls /gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union/lib/guile/3.0/site-ccache/gnu
packages/
--8<---------------cut here---------------end--------------->8---

With the patch, without the patch:

--8<---------------cut here---------------start------------->8---
$ find -L /gnu/store/pm43nabwng5rm8irmfhw2wk39hip8xr6-guix-module-union -name \*.go | wc -l
719
$ find -L  /gnu/store/4dm864f7iif1vg9sz355gdqkgb7air98-guix-module-union -name \*.go | wc -l
1188
--8<---------------cut here---------------end--------------->8---

The problem would then manifest like this:

--8<---------------cut here---------------start------------->8---
$ /gnu/store/57x6wrf78147lif1ss0ck2z3a0323b9l-guix-20230822.21/bin/guix build hello
error: license:arphic-1999: unbound variable
hint: Did you forget a `use-modules' form?

error: googletest: unbound variable
hint: Did you forget a `use-modules' form?

[…]

Throw to key `unbound-variable' with args `("resolve-interface" "no binding `~A' in module ~A" (shared-mime-info (gnu packages gnome)) #f)'.
Backtrace:
In guix/store.scm:
   659:37 19 (thunk)
   1298:8 18 (call-with-build-handler #<procedure 7f82c427ac60 at guix/ui.scm:1196:2 (continu…> …)
In guix/scripts/build.scm:
    584:2 17 (_)
In srfi/srfi-1.scm:
   673:15 16 (append-map _ _ . _)
   586:17 15 (map1 ((argument . "hello") (build-mode . 0) (graft? . #t) (substitutes? . #t) # …))
In guix/scripts/build.scm:
   604:31 14 (_ _)
In gnu/packages.scm:
    485:2 13 (%find-package "hello" "hello" #f)
    365:6 12 (find-best-packages-by-name _ _)
   295:56 11 (_ "hello" _)
In unknown file:
          10 (force #<promise #<procedure 7f82c6c5eee0 at gnu/packages.scm:285:18 ()>>)
In gnu/packages.scm:
   242:33  9 (fold-packages #<procedure 7f82c21125f0 at gnu/packages.scm:286:35 (p r)> #<vlis…> …)
In guix/discovery.scm:
   158:11  8 (all-modules _ #:warn _)
In srfi/srfi-1.scm:
   460:18  7 (fold #<procedure 7f82c6cc7f00 at guix/discovery.scm:142:8 (spec result)> _ ((. #)))
In guix/discovery.scm:
   148:19  6 (_ _ ())
    115:5  5 (scheme-modules _ _ #:warn _)
In srfi/srfi-1.scm:
   691:23  4 (filter-map #<procedure 7f82c6cc7de0 at guix/discovery.scm:115:16 (file)> _ . _)
In guix/discovery.scm:
   123:24  3 (_ . _)
In guix/ui.scm:
    343:2  2 (report-unbound-variable-error _ #:frame _)
In ice-9/boot-9.scm:
  1685:16  1 (raise-exception _ #:continuable? _)
  1685:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
Throw to key `match-error' with args `("match" "no matching pattern" (unbound-variable "resolve-interface" "no binding `~A' in module ~A" (shared-mime-info (gnu packages gnome)) #f))'.
--8<---------------cut here---------------end--------------->8---

This is because an old (guix licenses) module would be loaded.

I’m reverting for now.

Note that (guix self) is very sensitive, so we should test it
thoroughly.  Here I used ‘make as-derivation’ and ran the resulting
‘guix’ command.

Ludo’.




  reply	other threads:[~2023-08-22 21:53 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-22 17:17 bug#65456: [PATCH 0/2] Split guix build into more steps for 32bit hosts Janneke Nieuwenhuizen
2023-08-22 17:19 ` bug#65456: [PATCH 1/2] build: Build gnu/packages/*.go in five steps Janneke Nieuwenhuizen
2023-08-22 17:33   ` Janneke Nieuwenhuizen
2023-08-22 17:19 ` bug#65456: [PATCH 2/2] self: Build gnu/packages/*.go in 26 steps on 32bit Janneke Nieuwenhuizen
2023-08-22 21:51   ` Ludovic Courtès [this message]
2023-08-23  6:16     ` bug#65456: [PATCH v3] self: Build guix/ and gnu/packages/ directories in 26 steps Janneke Nieuwenhuizen
2023-08-23  9:41       ` bug#65456: [PATCH v4] self: Build directories in chunks of max 25 files at a time Janneke Nieuwenhuizen
2023-08-24 14:42         ` bug#65456: [PATCH 0/2] Split guix build into more steps for 32bit hosts Ludovic Courtès
2023-09-01 12:48           ` Janneke Nieuwenhuizen
2023-09-16 15:16             ` Janneke Nieuwenhuizen
2023-09-18  4:52               ` Janneke Nieuwenhuizen
2023-08-24  5:33       ` bug#65456: [PATCH v3] self: Build guix/ and gnu/packages/ directories in 26 steps Janneke Nieuwenhuizen
2023-08-24  6:44         ` Dr. Arne Babenhauserheide
2023-08-22 17:49 ` bug#65456: [PATCH v2 1/2] build: Build gnu/packages/*.go in five steps Janneke Nieuwenhuizen
2023-08-22 17:49   ` bug#65456: [PATCH v2 2/2] self: Build gnu/packages/*.go in 26 steps Janneke Nieuwenhuizen
2023-08-22 17:55     ` Janneke Nieuwenhuizen
2023-08-22 19:28       ` Janneke Nieuwenhuizen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87pm3e3fuu.fsf_-_@gnu.org \
    --to=ludo@gnu.org \
    --cc=65456@debbugs.gnu.org \
    --cc=dev@jpoiret.xyz \
    --cc=guix@cbaines.net \
    --cc=janneke@gnu.org \
    --cc=me@tobias.gr \
    --cc=othacehe@gnu.org \
    --cc=rekado@elephly.net \
    --cc=zimon.toutoune@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.