guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Packaging Jami progress


From: Jan Wielkiewicz
Subject: Re: Packaging Jami progress
Date: Wed, 4 Dec 2019 16:50:38 +0100

Dnia 2019-12-04, o godz. 16:27:26
Pierre Neidhardt <address@hidden> napisaƂ(a):

> You need to export the symbol.
> To do so, you can either specify the symbol in the #:export part of
> the module at the top of the file, or simply use `define-public` when
> defining the variable.
Okay, thanks.

> Can you give an example?  I don't understand what you mean.
I would like to have something like this:

(define-public jami-apply-dependency-patches
  (lambda* (#:key inputs patches dependency-name #:allow-other-keys)
           (let ((savoir-faire-linux-patches-directory "Savoir-faire Linux 
patches"))
             (mkdir-p savoir-faire-linux-patches-directory)
             (invoke "tar" "-xvf" (assoc-ref inputs 
"savoir-faire-linux-patches")
                     "-C" savoir-faire-linux-patches-directory
                     "--strip-components=5"
                     (string-append "ring-project/daemon/contrib/src/"
                                    dependency-name))
             (for-each
              (lambda (file)
                (invoke "patch" "--force" "-p1" "-i"
                        (string-append savoir-faire-linux-patches-directory "/"
                                       file ".patch")))
              patches))
           #t))

And then invoke it like this
(add-after 'unpack 'apply-patches (jami-apply-dependency-patches
#:dependency-name "pjproject" #:patches '(*the list*) #:inputs inputs)

I know it's a bit vague, don't really know what happens here with this
lambda*. I would like to pass some arguments there, but if I understand
this correctly, Guix does it for me - I give it a procedure and it
executes it.


Thanks in advance
Jan Wielkiewicz



reply via email to

[Prev in Thread] Current Thread [Next in Thread]