[bug#33836,1/2] services: configuration: Add location.

Message ID 20181222204207.28505-1-go.wigust@gmail.com
State Accepted
Headers show
Series location in define-configuration | expand

Checks

Context Check Description
cbaines/applying patch success Successfully applied
cbaines/applying patch success Successfully applied

Commit Message

Oleg Pykhalov Dec. 22, 2018, 8:42 p.m. UTC
* gnu/services/configuration.scm (define-configuration): Add location.
---
 gnu/services/configuration.scm | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Oleg Pykhalov Dec. 23, 2018, 2:21 p.m. UTC | #1
Oleg Pykhalov <go.wigust@gmail.com> writes:

> * gnu/services/configuration.scm (define-configuration): Add location.
> ---
>  gnu/services/configuration.scm | 5 +++++
>  1 file changed, 5 insertions(+)

[…]

After ‘make clean-go’, the ‘make’ command outputs in Guix Git repo:
--8<---------------cut here---------------start------------->8---
Backtrace:
In ice-9/boot-9.scm:
  2994:20 19 (_)
   2312:4 18 (save-module-excursion #<procedure a94f060 at ice-9/boo?>)
  3014:26 17 (_)
In unknown file:
          16 (primitive-load-path "gnu/tests/mail" #<procedure 129f2?>)
In ice-9/eval.scm:
   626:19 15 (_ #<directory (gnu tests mail) 16e440a0>)
   293:34 14 (_ #<directory (gnu tests mail) 16e440a0>)
    163:9 13 (_ #<directory (gnu tests mail) 16e440a0>)
    159:9 12 (_ #<directory (gnu tests mail) 16e440a0>)
   293:34 11 (_ #<directory (gnu tests mail) 16e440a0>)
   214:21 10 (_ #(#(#(#(#(#<directory (gnu tests mail?> ?) ?) ?) ?) ?))
   217:50  9 (lp (#<procedure 1103f620 at ice-9/eval.scm:182:7 (e?> ?))
   217:50  8 (lp (#<procedure 1103f600 at ice-9/eval.scm:182:7 (e?> ?))
   217:50  7 (lp (#<procedure 1103f420 at ice-9/eval.scm:292:11 (?> ?))
   217:50  6 (lp (#<procedure 1103f3e0 at ice-9/eval.scm:182:7 (e?> ?))
   217:50  5 (lp (#<procedure 1103f3c0 at ice-9/eval.scm:182:7 (e?> ?))
   217:50  4 (lp (#<procedure 1103f180 at ice-9/eval.scm:292:11 (?> ?))
   217:33  3 (lp (#<procedure 1103f160 at ice-9/eval.scm:182:7 (e?> ?))
    155:9  2 (_ #(#(#(#(#(#<directory (gnu tests mail?> ?) ?) ?) ?) ?))
    619:8  1 (_ #(#(#(#(#(#(#<directory (gnu tests?> ?) ?) ?) ?) ?) ?))
In ice-9/boot-9.scm:
   260:13  0 (for-each #<procedure 11123520 at ice-9/eval.scm:333:1?> ?)

ice-9/boot-9.scm:260:13: In procedure for-each:
Throw to key `srfi-34' with args `(#<condition %compound [message: "Invalid value for field location: #f"] 1106b3e0>)'.

Some deprecated features have been used.  Set the environment
variable GUILE_WARN_DEPRECATED to "detailed" and rerun the
program to get more information.  Set it to "no" to suppress
this message.
make[2]: *** [Makefile:5576: make-go] Error 1
make[2]: Leaving directory '/home/natsu/src/guix'
make[1]: *** [Makefile:4657: all-recursive] Error 1
make[1]: Leaving directory '/home/natsu/src/guix'
make: *** [Makefile:3273: all] Error 2
--8<---------------cut here---------------end--------------->8---

Also my GuixSD fails to build.  Will try to fix ‘gnu/services/mail.scm’.

Oleg.

Patch

diff --git a/gnu/services/configuration.scm b/gnu/services/configuration.scm
index 707944cbe..9775f91ff 100644
--- a/gnu/services/configuration.scm
+++ b/gnu/services/configuration.scm
@@ -22,6 +22,7 @@ 
   #:use-module (guix packages)
   #:use-module (guix records)
   #:use-module (guix gexp)
+  #:use-module ((guix utils) #:select (source-properties->location))
   #:autoload   (texinfo) (texi-fragment->stexi)
   #:autoload   (texinfo serialize) (stexi->texi)
   #:use-module (ice-9 match)
@@ -129,6 +130,10 @@ 
                  #,(id #'stem #'% #'stem)
                  #,(id #'stem #'make- #'stem)
                  #,(id #'stem #'stem #'?)
+                 (location configuration-location
+                           (default (and=> (current-source-location)
+                                           source-properties->location))
+                           (innate))
                  (field field-getter (default def))
                  ...)
                (define #,(id #'stem #'stem #'-fields)