unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
@ 2021-03-15 15:50 david larsson
  2021-03-25 13:47 ` Mathieu Othacehe
  0 siblings, 1 reply; 7+ messages in thread
From: david larsson @ 2021-03-15 15:50 UTC (permalink / raw)
  To: 47164; +Cc: othacehe

Hi!

My specification that doesn't work is this:

(define %cuirass-specs3
   #~(
      list
      (specification
       (name "my-pkgs")
       (build '(manifests . ((my-config . "manifests/user1.scm"))))
       (channels
        (list (channel
               (name 'guix)
               (url "https://git.savannah.gnu.org/git/guix.git")
               (branch  "master"))
              (channel
               (name 'my-config)
               (url "file:///home/cuirass/my-guixsd-config.sh")
               ;;(url 
"https://github.com/methuselah-0/my-guixsd-config.sh.git")
               (branch  "master"))
              (channel
               (name 'my-guix-packages)
               (url 
"https://github.com/methuselah-0/my-guix-packages.git")
               ;;(url "file:///home/user1/src/my-guix-packages")
               (branch  "master"))
              ))
       ;;(priority 1)
       (systems '("x86_64-linux")))))

It was converted to the new format from this: 
https://github.com/methuselah-0/my-guixsd-config.sh/blob/master/VM-configs/desktop_with_cuirass.scm#L28

I simply cant make anything work except building the hello package using 
only guix. When "my-guix-packages" is updated the evaluation fails with 
the message that at least one channel needs to be named Guix. I tried 
making guix a channel dependency of my-guix-packages via committing a 
.guix-channel file with 'guix as a dependency to it but that caused 
other errors and surely isn't the correct way to solve the problem 
anyway.

Any ideas how to fix this or if I need to change my spec?


Best regards,
David Larsson




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-15 15:50 bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone david larsson
@ 2021-03-25 13:47 ` Mathieu Othacehe
  2021-03-25 14:07   ` Mathieu Othacehe
  2021-03-25 16:04   ` david larsson
  0 siblings, 2 replies; 7+ messages in thread
From: Mathieu Othacehe @ 2021-03-25 13:47 UTC (permalink / raw)
  To: david larsson; +Cc: 47164


Hello David,

>       (build '(manifests . ((my-config . "manifests/user1.scm"))))

I have changed the manifest argument format recently. This should now
be:

--8<---------------cut here---------------start------------->8---
  (build '(manifests "manifests/user"))
--8<---------------cut here---------------end--------------->8---

>       (channels
>        (list (channel
>               (name 'guix)
>               (url "https://git.savannah.gnu.org/git/guix.git")
>               (branch  "master"))

You should prefer using %default-guix-channel here.

>              (channel
>               (name 'my-config)
>               (url "file:///home/cuirass/my-guixsd-config.sh")
>               ;;(url
>                 "https://github.com/methuselah-0/my-guixsd-config.sh.git")

The problem is that this repository is not really a channel. When
Cuirass tries to build this channel, it tries to build all the scheme
file as if they were module definitions and fails.

This works for me:

--8<---------------cut here---------------start------------->8---
(list
 (specification
  (name "my-pkgs")
  (build '(manifests "manifests/user"))
  (channels
   (list %default-guix-channel
         (channel
          (name 'my-config)
          (url "https://gitlab.com/mothacehe/test-channel.git"))
         (channel
          (name 'my-guix-packages)
          (url "https://github.com/methuselah-0/my-guix-packages.git"))))))
--8<---------------cut here---------------end--------------->8---

where test-channel is a dummy channel repository that contains your
manifest file.  I removed the .scm extension so that Cuirass does not
try to build it, but I this is not an acceptable solution in the long
term.

We would need to find a way to tell Cuirass not to build this channel or
something like that.

Thanks,

Mathieu




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-25 13:47 ` Mathieu Othacehe
@ 2021-03-25 14:07   ` Mathieu Othacehe
  2021-03-25 16:04   ` david larsson
  1 sibling, 0 replies; 7+ messages in thread
From: Mathieu Othacehe @ 2021-03-25 14:07 UTC (permalink / raw)
  To: david larsson; +Cc: 47164


Also note that you can now use this specification:

--8<---------------cut here---------------start------------->8---
(list
 (specification
  (namee "my-pkgs")
  (build '(channels my-guix-packages))
  (channels
   (list %default-guix-channel
         (channel
          (name 'my-guix-packages)
          (url "https://github.com/methuselah-0/my-guix-packages.git"))))))
--8<---------------cut here---------------end--------------->8---

to have Cuirass build all the packages in your personal channel and rely
on the build farm at https://ci.guix.gnu.org to build all the other
packages.

Thanks,

Mathieu




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-25 13:47 ` Mathieu Othacehe
  2021-03-25 14:07   ` Mathieu Othacehe
@ 2021-03-25 16:04   ` david larsson
  2021-03-25 17:38     ` Mathieu Othacehe
  1 sibling, 1 reply; 7+ messages in thread
From: david larsson @ 2021-03-25 16:04 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 47164

On 2021-03-25 14:47, Mathieu Othacehe wrote:
> Hello David,
> 
>>       (build '(manifests . ((my-config . "manifests/user1.scm"))))
> 
> I have changed the manifest argument format recently. This should now
> be:
> 
> --8<---------------cut here---------------start------------->8---
>   (build '(manifests "manifests/user"))
> --8<---------------cut here---------------end--------------->8---
> 
>>       (channels
>>        (list (channel
>>               (name 'guix)
>>               (url "https://git.savannah.gnu.org/git/guix.git")
>>               (branch  "master"))
> 
> You should prefer using %default-guix-channel here.
> 
>>              (channel
>>               (name 'my-config)
>>               (url "file:///home/cuirass/my-guixsd-config.sh")
>>               ;;(url
>>                 
>> "https://github.com/methuselah-0/my-guixsd-config.sh.git")
> 
> The problem is that this repository is not really a channel. When
> Cuirass tries to build this channel, it tries to build all the scheme
> file as if they were module definitions and fails.
> 
> This works for me:
> 
> --8<---------------cut here---------------start------------->8---
> (list
>  (specification
>   (name "my-pkgs")
>   (build '(manifests "manifests/user"))
>   (channels
>    (list %default-guix-channel
>          (channel
>           (name 'my-config)
>           (url "https://gitlab.com/mothacehe/test-channel.git"))
>          (channel
>           (name 'my-guix-packages)
>           (url 
> "https://github.com/methuselah-0/my-guix-packages.git"))))))
> --8<---------------cut here---------------end--------------->8---
> 
> where test-channel is a dummy channel repository that contains your
> manifest file.  I removed the .scm extension so that Cuirass does not
> try to build it, but I this is not an acceptable solution in the long
> term.
> 
> We would need to find a way to tell Cuirass not to build this channel 
> or
> something like that.
> 
> Thanks,
> 
> Mathieu

Hi,
Thanks. I forked ur test-channel and updated my specs accordingly and it 
only works the first evaluation, until I push a new commit to the config 
channel, then Im getting this:

Backtrace:
In ice-9/boot-9.scm:
   1736:10 15 (with-exception-handler _ _ #:unwind? _ # _)
In unknown file:
           14 (apply-smob/0 #<thunk 7f7b52185ec0>)
In ice-9/boot-9.scm:
     718:2 13 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
In ice-9/eval.scm:
     619:8 12 (_ #(#(#<directory (guile-user) 7f7b5217ec80>)))
In cuirass/ui.scm:
    104:10 11 (run-cuirass-command _ . _)
In ice-9/boot-9.scm:
     152:2 10 (with-fluid* _ _ _)
     152:2  9 (with-fluid* _ _ _)
In ice-9/eval.scm:
    293:34  8 (_ #(#(#(#(#(#(#(#<directory (cuiras?> ?)) ?) ?) ?) ?) ?))
In ice-9/boot-9.scm:
   1736:10  7 (with-exception-handler _ _ #:unwind? _ # _)
In guix/store.scm:
    636:37  6 (thunk)
In ice-9/eval.scm:
     159:9  5 (_ #(#(#<directory (cuirass scripts evaluate) 7f7?> ?) ?))
    196:35  4 (_ #(#(#<directory (cuirass scripts evaluate) 7f7?> ?) ?))
In guix/channels.scm:
    911:32  3 (channel-instances->derivation _)
    871:36  2 (channel-instances->manifest (#<<channel-instance> cha?>))
     759:6  1 (channel-instance-derivations (#<<channel-instance> ch?>))
In ice-9/boot-9.scm:
   1669:16  0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1669:16: In procedure raise-exception:
ERROR:
   1. &message: "'guix' channel is lacking"
   2. &fix-hint: "Make sure your list of channels\ncontains one channel 
named @code{guix} providing the core of Guix."
   3. &error-location: #<<location> file: "guix/channels.scm" line: 557 
column: 18>



Best regards,
David




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-25 16:04   ` david larsson
@ 2021-03-25 17:38     ` Mathieu Othacehe
  2021-03-25 18:28       ` david larsson
  0 siblings, 1 reply; 7+ messages in thread
From: Mathieu Othacehe @ 2021-03-25 17:38 UTC (permalink / raw)
  To: david larsson; +Cc: 47164


Hello David,

> Thanks. I forked ur test-channel and updated my specs accordingly and it only
> works the first evaluation, until I push a new commit to the config channel,
> then Im getting this:

Ludo experienced the same issue. I fixed it with
ac29d37e2ffd7a85adfcac9be4d5bce018289bec and updated the Cuirass package
accordingly.

Mathieu




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-25 17:38     ` Mathieu Othacehe
@ 2021-03-25 18:28       ` david larsson
  2021-03-26 15:09         ` Mathieu Othacehe
  0 siblings, 1 reply; 7+ messages in thread
From: david larsson @ 2021-03-25 18:28 UTC (permalink / raw)
  To: Mathieu Othacehe; +Cc: 47164, bug-Guix

> Ludo experienced the same issue. I fixed it with
> ac29d37e2ffd7a85adfcac9be4d5bce018289bec and updated the Cuirass 
> package
> accordingly.
> 
> Mathieu

Awesome, thank you!

// David




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

* bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone
  2021-03-25 18:28       ` david larsson
@ 2021-03-26 15:09         ` Mathieu Othacehe
  0 siblings, 0 replies; 7+ messages in thread
From: Mathieu Othacehe @ 2021-03-26 15:09 UTC (permalink / raw)
  To: david larsson; +Cc: 47164-done


Hey,

> Awesome, thank you!

As you confirmed on IRC that it fixed the situation, closing this one.

Thanks,

Mathieu




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

end of thread, other threads:[~2021-03-26 15:10 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-15 15:50 bug#47164: Cuirass specification complains about missing guix channel when a non-guix channel gets a new commit alone david larsson
2021-03-25 13:47 ` Mathieu Othacehe
2021-03-25 14:07   ` Mathieu Othacehe
2021-03-25 16:04   ` david larsson
2021-03-25 17:38     ` Mathieu Othacehe
2021-03-25 18:28       ` david larsson
2021-03-26 15:09         ` Mathieu Othacehe

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).