unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Advice about guile-spec package definition
@ 2021-03-31 21:13 Jérémy Korwin-Zmijowski
  2021-04-01  7:22 ` Efraim Flashner
  0 siblings, 1 reply; 7+ messages in thread
From: Jérémy Korwin-Zmijowski @ 2021-03-31 21:13 UTC (permalink / raw)
  To: Guix Help

Dear Guixters,

Hope you are doing well !

I am working on the package definition for 
https://framagit.org/Jeko/guile-spec (file: guix.scm). It is a set of
macro based on SRFI-64.

The definition's inputs field is filled with guile-3.0 (or the guix
build reports an error with a stack trace I can't understand haha).

For Guix users willing to try guile-spec before installing it, I know
guix environment can help.

But…

When I use guild (with highest warning level) to compile t.scm[1] in an
environment based on this definition, it raises unknown warnings :

$ guix environment -l guix.scm -- guild compile -W3 /tmp/t.scm
warning: unknown warning type `#{3}#'
wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.2/tmp/t.scm.go'

When I call it outside of the environment, the warning is fine :

$ guild compile -W3 /tmp/t.scm
/tmp/t.scm:3:0: warning: unused variable `name'
wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.4/tmp/t.scm.go'

When I remove Guile from the definition's inputs fiels, the warning is
fine :

$ guix environment -l guix.scm -- guild compile -W3 /tmp/t.scm
/tmp/t.scm:3:0: warning: unused variable `name'
wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.4/tmp/t.scm.go'


[1] t.scm doesn't use guile-spec macro to narrow the context
$ cat /tmp/t.scm 
(use-modules (srfi srfi-64))
(test-begin "group")
(test-assert "test" #t)
(test-end)


How can I make it to work ? Maybe I misuse something here… Let me know
!

Cheers,

Jérémy



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-03-31 21:13 Advice about guile-spec package definition Jérémy Korwin-Zmijowski
@ 2021-04-01  7:22 ` Efraim Flashner
  2021-04-01  9:39   ` Jérémy Korwin-Zmijowski
  0 siblings, 1 reply; 7+ messages in thread
From: Efraim Flashner @ 2021-04-01  7:22 UTC (permalink / raw)
  To: Jérémy Korwin-Zmijowski; +Cc: Guix Help

[-- Attachment #1: Type: text/plain, Size: 2019 bytes --]

On Wed, Mar 31, 2021 at 11:13:55PM +0200, Jérémy Korwin-Zmijowski wrote:
> Dear Guixters,
> 
> Hope you are doing well !
> 
> I am working on the package definition for 
> https://framagit.org/Jeko/guile-spec (file: guix.scm). It is a set of
> macro based on SRFI-64.
> 
> The definition's inputs field is filled with guile-3.0 (or the guix
> build reports an error with a stack trace I can't understand haha).
> 
> For Guix users willing to try guile-spec before installing it, I know
> guix environment can help.
> 
> But…
> 
> When I use guild (with highest warning level) to compile t.scm[1] in an
> environment based on this definition, it raises unknown warnings :
> 
> $ guix environment -l guix.scm -- guild compile -W3 /tmp/t.scm
> warning: unknown warning type `#{3}#'
> wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.2/tmp/t.scm.go'
> 
> When I call it outside of the environment, the warning is fine :
> 
> $ guild compile -W3 /tmp/t.scm
> /tmp/t.scm:3:0: warning: unused variable `name'
> wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.4/tmp/t.scm.go'
> 
> When I remove Guile from the definition's inputs fiels, the warning is
> fine :
> 
> $ guix environment -l guix.scm -- guild compile -W3 /tmp/t.scm
> /tmp/t.scm:3:0: warning: unused variable `name'
> wrote `/home/jeko/.cache/guile/ccache/3.0-LE-8-4.4/tmp/t.scm.go'
> 
> 
> [1] t.scm doesn't use guile-spec macro to narrow the context
> $ cat /tmp/t.scm 
> (use-modules (srfi srfi-64))
> (test-begin "group")
> (test-assert "test" #t)
> (test-end)
> 
> 
> How can I make it to work ? Maybe I misuse something here… Let me know
> !
> 

The difference could be the version of guile. What's the output of
'guile --version' and 'guix environment -l guix.scm -- guile --version'?

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-04-01  7:22 ` Efraim Flashner
@ 2021-04-01  9:39   ` Jérémy Korwin-Zmijowski
  2021-04-01 10:16     ` Efraim Flashner
  0 siblings, 1 reply; 7+ messages in thread
From: Jérémy Korwin-Zmijowski @ 2021-04-01  9:39 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: Guix Help

Le jeudi 01 avril 2021 à 10:22 +0300, Efraim Flashner a écrit :
> The difference could be the version of guile. What's the output of
> 'guile --version' and 'guix environment -l guix.scm -- guile --
> version'?

Hi Efraim !

You put the finger on something !

   $ guix environment -l guix.scm -- guile --version
   guile (GNU Guile) 3.0.2

   $ guile --version
   guile (GNU Guile) 3.0.5

I thought my guix daemon was too old so I upgraded it, then logged out
and logged in from my session. But I get the same result.
For the reccord I am on Ubuntu !

Jérémy



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-04-01  9:39   ` Jérémy Korwin-Zmijowski
@ 2021-04-01 10:16     ` Efraim Flashner
  2021-04-01 11:21       ` Jérémy Korwin-Zmijowski
  0 siblings, 1 reply; 7+ messages in thread
From: Efraim Flashner @ 2021-04-01 10:16 UTC (permalink / raw)
  To: Jérémy Korwin-Zmijowski; +Cc: Guix Help

[-- Attachment #1: Type: text/plain, Size: 1097 bytes --]

On Thu, Apr 01, 2021 at 11:39:18AM +0200, Jérémy Korwin-Zmijowski wrote:
> Le jeudi 01 avril 2021 à 10:22 +0300, Efraim Flashner a écrit :
> > The difference could be the version of guile. What's the output of
> > 'guile --version' and 'guix environment -l guix.scm -- guile --
> > version'?
> 
> Hi Efraim !
> 
> You put the finger on something !
> 
>    $ guix environment -l guix.scm -- guile --version
>    guile (GNU Guile) 3.0.2
> 
>    $ guile --version
>    guile (GNU Guile) 3.0.5
> 
> I thought my guix daemon was too old so I upgraded it, then logged out
> and logged in from my session. But I get the same result.
> For the reccord I am on Ubuntu !

I'm not sure what all it affects, but there does seem to be a difference
between guile-3.0.2 and 3.0.5. I'd add guile or leave it out of the
environment file depending on which version you want.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-04-01 10:16     ` Efraim Flashner
@ 2021-04-01 11:21       ` Jérémy Korwin-Zmijowski
  2021-04-01 12:17         ` Efraim Flashner
  0 siblings, 1 reply; 7+ messages in thread
From: Jérémy Korwin-Zmijowski @ 2021-04-01 11:21 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: Guix Help

[-- Attachment #1: Type: text/plain, Size: 1315 bytes --]

Le jeudi 01 avril 2021 à 13:16 +0300, Efraim Flashner a écrit :
> I'm not sure what all it affects, but there does seem to be a
> difference
> between guile-3.0.2 and 3.0.5. I'd add guile or leave it out of the
> environment file depending on which version you want.

Using the user's Guile version should be fine, so I left it out. But
then…

$ guix build -f guix.scm
[…]
starting phase `build'
Backtrace:
           8 (primitive-load "/gnu/store/2l1dkrsvkc5fzng4fj2yndjvb03…")
In ice-9/eval.scm:
   191:35  7 (_ _)
In guix/build/gnu-build-system.scm:
    838:2  6 (gnu-build #:source _ #:outputs _ #:inputs _ #:phases . #)
In ice-9/boot-9.scm:
  1736:10  5 (with-exception-handler _ _ #:unwind? _ # _)
In srfi/srfi-1.scm:
   857:16  4 (every1 #<procedure 7ffff4b2dd60 at guix/build/gnu-bui…>
…)
In guix/build/gnu-build-system.scm:
   847:30  3 (_ _)
In guix/build/guile-build-system.scm:
   149:21  2 (build #:outputs _ #:inputs _ #:native-inputs _ # _ # _ …)
In unknown file:
           1 (string-append "/gnu/store/a80yx2xza2k4i9bwbcsa2vwdjnx…"
…)
In ice-9/boot-9.scm:
  1669:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1669:16: In procedure raise-exception:
In procedure string-append: Wrong type (expecting string): #f
[…]

I don't understant a word of it haha.

Jérémy

[-- Attachment #2: gf0bryi7qwk6c1kf2a2i5jvcd5bq3f-guile-spec-0.1-HEAD.08f9612.drv.bz2 --]
[-- Type: application/x-bzip, Size: 8705 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-04-01 11:21       ` Jérémy Korwin-Zmijowski
@ 2021-04-01 12:17         ` Efraim Flashner
  2021-04-01 13:09           ` Jérémy Korwin-Zmijowski
  0 siblings, 1 reply; 7+ messages in thread
From: Efraim Flashner @ 2021-04-01 12:17 UTC (permalink / raw)
  To: Jérémy Korwin-Zmijowski; +Cc: Guix Help

[-- Attachment #1: Type: text/plain, Size: 2026 bytes --]

On Thu, Apr 01, 2021 at 01:21:10PM +0200, Jérémy Korwin-Zmijowski wrote:
> Le jeudi 01 avril 2021 à 13:16 +0300, Efraim Flashner a écrit :
> > I'm not sure what all it affects, but there does seem to be a
> > difference
> > between guile-3.0.2 and 3.0.5. I'd add guile or leave it out of the
> > environment file depending on which version you want.
> 
> Using the user's Guile version should be fine, so I left it out. But
> then…
> 
> $ guix build -f guix.scm
> […]
> starting phase `build'
> Backtrace:
>            8 (primitive-load "/gnu/store/2l1dkrsvkc5fzng4fj2yndjvb03…")
> In ice-9/eval.scm:
>    191:35  7 (_ _)
> In guix/build/gnu-build-system.scm:
>     838:2  6 (gnu-build #:source _ #:outputs _ #:inputs _ #:phases . #)
> In ice-9/boot-9.scm:
>   1736:10  5 (with-exception-handler _ _ #:unwind? _ # _)
> In srfi/srfi-1.scm:
>    857:16  4 (every1 #<procedure 7ffff4b2dd60 at guix/build/gnu-bui…>
> …)
> In guix/build/gnu-build-system.scm:
>    847:30  3 (_ _)
> In guix/build/guile-build-system.scm:
>    149:21  2 (build #:outputs _ #:inputs _ #:native-inputs _ # _ # _ …)
> In unknown file:
>            1 (string-append "/gnu/store/a80yx2xza2k4i9bwbcsa2vwdjnx…"
> …)
> In ice-9/boot-9.scm:
>   1669:16  0 (raise-exception _ #:continuable? _)
> 
> ice-9/boot-9.scm:1669:16: In procedure raise-exception:
> In procedure string-append: Wrong type (expecting string): #f
> […]
> 
> I don't understant a word of it haha.

It's expecting a string, likely part of (string-append (assoc-ref input
"guile") "/bin/guile"), probably from the guile-build-system. But if
there is no input named "guile" then (assoc-ref input "guile") returns
'#f' so that's what the error means.

Looks like you should put guile back into the guix.scm :)


-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: Advice about guile-spec package definition
  2021-04-01 12:17         ` Efraim Flashner
@ 2021-04-01 13:09           ` Jérémy Korwin-Zmijowski
  0 siblings, 0 replies; 7+ messages in thread
From: Jérémy Korwin-Zmijowski @ 2021-04-01 13:09 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: Guix Help

Le jeudi 01 avril 2021 à 15:17 +0300, Efraim Flashner a écrit :
> It's expecting a string, likely part of (string-append (assoc-ref
> input
> "guile") "/bin/guile"), probably from the guile-build-system. But if
> there is no input named "guile" then (assoc-ref input "guile")
> returns
> '#f' so that's what the error means.

Thank you for the explanation.

> Looks like you should put guile back into the guix.scm :)

Let's do this then!

Thanks to our discussion it makes me look into the Guix codebase and I
can see in gnu/packages/guile.scm that guile-3.0 definition provides
3.0.2 version.

My user profile somehow pulled the 3.0.5 version maybe it is wired
to guile-3.0-latest or guile-next !

So I think I have to figure out which one and put it into guile-spec
definition !

Cheers,
Jérémy




^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-04-01 13:10 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-31 21:13 Advice about guile-spec package definition Jérémy Korwin-Zmijowski
2021-04-01  7:22 ` Efraim Flashner
2021-04-01  9:39   ` Jérémy Korwin-Zmijowski
2021-04-01 10:16     ` Efraim Flashner
2021-04-01 11:21       ` Jérémy Korwin-Zmijowski
2021-04-01 12:17         ` Efraim Flashner
2021-04-01 13:09           ` Jérémy Korwin-Zmijowski

unofficial mirror of help-guix@gnu.org 

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://yhetil.org/guix-user/0 guix-user/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 guix-user guix-user/ https://yhetil.org/guix-user \
		help-guix@gnu.org
	public-inbox-index guix-user

Example config snippet for mirrors.
Newsgroups are available over NNTP:
	nntp://news.yhetil.org/yhetil.gnu.guix.user
	nntp://news.gmane.io/gmane.comp.gnu.guix.user


AGPL code for this site: git clone http://ou63pmih66umazou.onion/public-inbox.git