GNU bug report logs - #29881
Disabled fresh-auto-compile leads to ABI breakage in user config files

Previous Next

Package: guix;

Reported by: Diego Nicola Barbato <dnbarbato <at> posteo.de>

Date: Thu, 28 Dec 2017 22:19:02 UTC

Severity: important

Done: ludo <at> gnu.org (Ludovic Courtès)

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: ludo <at> gnu.org (Ludovic Courtès)
Cc: tracker <at> debbugs.gnu.org
Subject: bug#29881: closed (Disabled fresh-auto-compile leads to ABI
 breakage in user config files)
Date: Mon, 05 Mar 2018 09:59:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Mon, 05 Mar 2018 10:58:54 +0100
with message-id <87zi3mc081.fsf <at> gnu.org>
and subject line Re: bug#29881: guix system reconfigure fails if config.scm contains LUKS mapped-devices
has caused the debbugs.gnu.org bug report #29881,
regarding Disabled fresh-auto-compile leads to ABI breakage in user config files
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
29881: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=29881
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Diego Nicola Barbato <dnbarbato <at> posteo.de>
To: bug-guix <at> gnu.org
Subject: guix system reconfigure fails if config.scm contains LUKS
 mapped-devices
Date: Thu, 28 Dec 2017 23:18:04 +0100
Hello Guix,

When running `guix system reconfigure /etc/config.scm' as root I get the
following error:

guix system: error: failed to load '/etc/config.scm':
/etc/config.scm:24:9: /etc/config.scm:24:9: In procedure allocate-struct: Wrong type argument in position 2: 3

This error appears for the first time in commit
4ca90ff5976434a2b6e758df38df54387ae70c1b.  On line 24 of my config file
I have declared a mapped device of type luks-device-mapping.  If the
config file does not contain any mapped-devices declaration `guix system
reconfigure' works as expected (checked in a VM).

I run GuixSD on a x86_64 machine.

Greetings

Diego N. Barbato


[Message part 3 (message/rfc822, inline)]
From: ludo <at> gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw <at> netris.org>
Cc: 29881-done <at> debbugs.gnu.org, Diego Nicola Barbato <dnbarbato <at> posteo.de>
Subject: Re: bug#29881: guix system reconfigure fails if config.scm contains
 LUKS mapped-devices
Date: Mon, 05 Mar 2018 10:58:54 +0100
ludo <at> gnu.org (Ludovic Courtès) skribis:

> Mark H Weaver <mhw <at> netris.org> skribis:
>
>> ludo <at> gnu.org (Ludovic Courtès) writes:
>>
>>> Diego Nicola Barbato <dnbarbato <at> posteo.de> skribis:
>>>
>>>> When running `guix system reconfigure /etc/config.scm' as root I get the
>>>> following error:
>>>>
>>>> guix system: error: failed to load '/etc/config.scm':
>>>> /etc/config.scm:24:9: /etc/config.scm:24:9: In procedure allocate-struct: Wrong type argument in position 2: 3
>>>
>>> I’m afraid you’ll have to “rm -rf ~/.cache/guile/ccache” (Guile’s
>>> auto-compilation cache) to work around
>>> e2721a05e7d778bdf845b7cb7a42fd9f76095b69.
>>
>> FYI, more recently there has been another change that caused "guix
>> system build" to fail for me, and once again it was fixed by clearing
>> the auto-compilation cache for my system configuration.
>
> For now, in commit 92423868bc451600f8f3d93b638091d12b14b7aa, I’ve
> arranged so that auto-compilation is turned off for Guile 2.2.3 only.

[...]

> I’m not sure we can do much better for 2.2.3, or perhaps we should
> always use (compile-file file #:to 'value) in ‘load*’?

In commit f44c7aaccd1942b8bf7916e4c8bb0f8f1abfcb58 I added an explicit
‘compile-file’ call to update the cached .go file for the user’s config,
when on 2.2.3.

This should solve the problem most of the time.  The only remaining
issue is if you’re using 2.2.3 and your config spans several modules:
only the main .scm file is rebuilt, so there could be ABI issues in the
other modules.

I’m closing the bug now.

Ludo’.


This bug report was last modified 7 years and 139 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.