From: Jonathan Frederickson <jonathan@terracrypt.net>
To: divoplade <d@divoplade.fr>
Cc: help-guix@gnu.org
Subject: Re: Geiser and Guix - how to avoid long compilation steps?
Date: Mon, 25 May 2020 22:32:50 -0400 [thread overview]
Message-ID: <1590460370.6021.0@terracrypt.net> (raw)
In-Reply-To: <273ca8429baf5d148376e9ceb08dff87fce935eb.camel@divoplade.fr>
Ah! Thanks for the hint about the version of Guile.
Turns out it was actually the other way around; I had built Guix with
Guile 3 but still had Guile 2.2 in my profile. This explains why an
ad-hoc environment with Guile worked just fine, but Guile in my normal
profile did not. (Looks like Guix gained support for Guile 3 prior to
version 1.1.0: https://guix.gnu.org/blog/2020/gnu-guix-1.1.0-released/)
On Tue, May 26, 2020 at 2:05 am, divoplade <d@divoplade.fr> wrote:
> Hello,
>
> I think that guix does not support guile 3 yet, so you should have
> guile 2 bytecode for the guix modules. If geiser starts guile 3, then
> guile 3 will recompile everything because the bytecode format changed
> (and it could even compile native code).
>
> Maybe it could work if you used guile 2.2 with geiser.
>
> divoplade
>
> Le lundi 25 mai 2020 à 19:02 -0400, Jonathan Frederickson a écrit :
>> I've been using Geiser to hack on Guix lately, which is absolutely
>> wonderful to use when it works. The trouble is, after I upgrade my
>> system's Guix, Guile attempts to compile large portions of Guix when
>> I
>> attempt to switch to the module I'm working on in Geiser, e.g.:
>>
>> M-x run-guile
>> ,m (gnu services games)
>>
>> This despite the fact that I'm working on a copy of Guix that I've
>> already compiled with 'make' and that has the compiled copy
>> alongside
>> the source. The compilation step takes a *long* time on my hardware,
>> which is fairly painful when I want to hack on Guix.
>>
>> I do have my Guix checkout in geiser-guile-load-path in my emacs
>> config
>> as per
>> https://guix.gnu.org/manual/en/html_node/The-Perfect-Setup.html:
>>
>> (with-eval-after-load 'geiser-guile
>> (add-to-list 'geiser-guile-load-path "~/sources/guix"))
>>
>> My guess is that Guile is picking up my system's version of Guix
>> before
>> my local copy. I understand that I could start a version of Emacs in
>> a
>> pure ad-hoc environment (and Guile doesn't appear to start
>> recompiling
>> Guix when I do so), but the typical Emacs workflow is to have a
>> long-running Emacs session and use that for everything; that's what
>> I'm
>> used to, and I'd like to continue to do so if possible.
>>
>> Does anyone else experience this? What's the best way to use Geiser
>> to
>> hack on Guix when running Guix System?
>>
>>
>>
>
next prev parent reply other threads:[~2020-05-26 2:33 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-25 23:02 Geiser and Guix - how to avoid long compilation steps? Jonathan Frederickson
2020-05-26 0:05 ` divoplade
2020-05-26 2:32 ` Jonathan Frederickson [this message]
2020-05-26 6:18 ` divoplade
2020-05-26 7:45 ` Pierre Neidhardt
2020-05-26 21:19 ` Ludovic Courtès
2020-05-27 9:37 ` Pierre Neidhardt
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=1590460370.6021.0@terracrypt.net \
--to=jonathan@terracrypt.net \
--cc=d@divoplade.fr \
--cc=help-guix@gnu.org \
/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.