diff mbox series

[bug#40684,core-updates] guix: self: Use guile with libgc-7.

Message ID 20200417172142.23741-1-mail@cbaines.net
State Accepted
Headers show
Series [bug#40684,core-updates] guix: self: Use guile with libgc-7. | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job

Commit Message

Christopher Baines April 17, 2020, 5:21 p.m. UTC
Rather than libgc version 8. This should avoid crashes that can occur,
particularly when loading data in to the Guix Data Service [1].

1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40525

* gnu/packages/guile.scm (guile-3.0/libgc-7): New variable.
* guix/self.scm (specification->package): Use guile-3.0/libgc-7 for guile.
---
 gnu/packages/guile.scm | 12 ++++++++++++
 guix/self.scm          |  2 +-
 2 files changed, 13 insertions(+), 1 deletion(-)

Comments

Ludovic Courtès April 17, 2020, 9:02 p.m. UTC | #1
Hi!

Christopher Baines <mail@cbaines.net> skribis:

> Rather than libgc version 8. This should avoid crashes that can occur,
> particularly when loading data in to the Guix Data Service [1].
>
> 1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40525
>
> * gnu/packages/guile.scm (guile-3.0/libgc-7): New variable.
> * guix/self.scm (specification->package): Use guile-3.0/libgc-7 for guile.
> ---
>  gnu/packages/guile.scm | 12 ++++++++++++
>  guix/self.scm          |  2 +-
>  2 files changed, 13 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
> index 8ccbc22f26..6b7bd492ed 100644
> --- a/gnu/packages/guile.scm
> +++ b/gnu/packages/guile.scm
> @@ -309,6 +309,18 @@ without requiring the source code to be rewritten.")
>  
>  (define-public guile-next guile-3.0)
>  
> +(define-public guile-3.0/libgc-7
> +  (hidden-package
> +   (package
> +     (inherit guile-3.0)
> +     (propagated-inputs
> +      (map (lambda (input)
> +             (if (string=? (car input)
> +                           "bdw-gc")
> +                 (list "bdw-gc" libgc-7)
> +                 input))

Nitpicking: please write it as:

  `(("bdw-gc" ,libgc-7)
    ,@(alist-delete "bdw-gc" (package-propagated-inputs guile-3.0)))

as we do elsewhere.

Also, could you add a comment referencing the bug report, so we
immediately see why this variant exists?

OK with these changes, thanks!

Ludo’.
Christopher Baines April 18, 2020, 8:10 a.m. UTC | #2
Ludovic Courtès <ludo@gnu.org> writes:

> Hi!
>
> Christopher Baines <mail@cbaines.net> skribis:
>
>> Rather than libgc version 8. This should avoid crashes that can occur,
>> particularly when loading data in to the Guix Data Service [1].
>>
>> 1: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=40525
>>
>> * gnu/packages/guile.scm (guile-3.0/libgc-7): New variable.
>> * guix/self.scm (specification->package): Use guile-3.0/libgc-7 for guile.
>> ---
>>  gnu/packages/guile.scm | 12 ++++++++++++
>>  guix/self.scm          |  2 +-
>>  2 files changed, 13 insertions(+), 1 deletion(-)
>>
>> diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
>> index 8ccbc22f26..6b7bd492ed 100644
>> --- a/gnu/packages/guile.scm
>> +++ b/gnu/packages/guile.scm
>> @@ -309,6 +309,18 @@ without requiring the source code to be rewritten.")
>>
>>  (define-public guile-next guile-3.0)
>>
>> +(define-public guile-3.0/libgc-7
>> +  (hidden-package
>> +   (package
>> +     (inherit guile-3.0)
>> +     (propagated-inputs
>> +      (map (lambda (input)
>> +             (if (string=? (car input)
>> +                           "bdw-gc")
>> +                 (list "bdw-gc" libgc-7)
>> +                 input))
>
> Nitpicking: please write it as:
>
>   `(("bdw-gc" ,libgc-7)
>     ,@(alist-delete "bdw-gc" (package-propagated-inputs guile-3.0)))
>
> as we do elsewhere.
>
> Also, could you add a comment referencing the bug report, so we
> immediately see why this variant exists?
>
> OK with these changes, thanks!

Sure, I've sent an updated patch now.

Thanks,

Chris
Christopher Baines April 18, 2020, 4:51 p.m. UTC | #3
Christopher Baines <mail@cbaines.net> writes:

> Sure, I've sent an updated patch now.

I went ahead and pushed this to core-updates earlier as
cef392f3936922b7b0b74bd59be67e660c10db67.

It looks to have had the intended effect, the Guix Data Service was able
to process the commit [1] :D

1: https://guix-patches-data.cbaines.net/revision/cef392f3936922b7b0b74bd59be67e660c10db67

I'll go ahead and mark this bug as done now. Thanks for your help!
diff mbox series

Patch

diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 8ccbc22f26..6b7bd492ed 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -309,6 +309,18 @@  without requiring the source code to be rewritten.")
 
 (define-public guile-next guile-3.0)
 
+(define-public guile-3.0/libgc-7
+  (hidden-package
+   (package
+     (inherit guile-3.0)
+     (propagated-inputs
+      (map (lambda (input)
+             (if (string=? (car input)
+                           "bdw-gc")
+                 (list "bdw-gc" libgc-7)
+                 input))
+           (package-propagated-inputs guile-3.0))))))
+
 (define-public guile-3.0/fixed
   ;; A package of Guile that's rarely changed.  It is the one used in the
   ;; `base' module, and thus changing it entails a full rebuild.
diff --git a/guix/self.scm b/guix/self.scm
index 842161400e..905f931aeb 100644
--- a/guix/self.scm
+++ b/guix/self.scm
@@ -48,7 +48,7 @@ 
   (let ((ref (lambda (module variable)
                (module-ref (resolve-interface module) variable))))
     (match-lambda
-      ("guile"      (ref '(gnu packages guile) 'guile-3.0))
+      ("guile"      (ref '(gnu packages guile) 'guile-3.0/libgc-7))
       ("guile-json" (ref '(gnu packages guile) 'guile-json-3))
       ("guile-ssh"  (ref '(gnu packages ssh)   'guile-ssh))
       ("guile-git"  (ref '(gnu packages guile) 'guile-git))