summaryrefslogtreecommitdiff
path: root/src/content/pastebins/2020/11/27/guix-build-local.adoc
blob: 6fe508954ffd532b4dec435d4b9865eebb1e3f9b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
= Guix build local module
:categories: guix

FIXED: rename `name` on line 9 of the first snippet, and use `"my-hello"`
instead of `"hello"`.

'''''

Inside a file named `build.scm`:

[source,scheme]
----
(define-module (build)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (guix licenses))

(define-public my-hello
  (package
    (name "hello")
    (version "2.10")
    (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnu/hello/hello-" version
                                  ".tar.gz"))
              (sha256
               (base32
                "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
    (build-system gnu-build-system)
    (synopsis "")
    (description "")
    (home-page "")
    (license gpl3+)))
----

A plain build command didn't work:

[source,shell]
----
$ guix build -L. my-hello
guix build: error: my-hello : paquet inconnu
----

But with an eval expression it did:

[source,shell]
----
$ guix build -L. -e '(@ (build) my-hello)'
# works
----