[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How do I build a derivation with guix build?

From: divoplade
Subject: Re: How do I build a derivation with guix build?
Date: Sun, 06 Sep 2020 11:02:57 +0200
User-agent: Evolution 3.34.2


Le samedi 05 septembre 2020 à 22:40 -0400, Timothy Sample a écrit :
> As I understand it, ‘gexp->derivation’ returns a value in the store
> monad.  I’m not sure why ‘guix build’ doesn’t know how to use it
> directly, but you can get at the derivation by wrapping it with
> ‘run-with-store’:
>     (run-with-store (open-connection)
>       (gexp->derivation "the-thing" build-exp))
> Don’t forget to use the ‘(guix store)’ module for this.
OK, I think I understand:

    "you exit a monad like you exit a building on fire: by running"

So, I cannot simply return a monadic value to guix build. It needs a
real value.

> But!  There’s a better way!!  :)
> You can use the “declarative interface”.  Just replace
> ‘gexp->derivation’ with ‘computed-file’:
>     (computed-file "the-thing" build-exp)
> Now there’s no need for ‘(guix store)’.

Thank you, that was exactly what I was looking for!


reply via email to

[Prev in Thread] Current Thread [Next in Thread]