Subject: [bug#38117] [PATCH] gnu: Add helm.

From: Alexandros Theodotou <[email-masked]>
Date: Tue, 26 Nov 2019 04:43:42 +0000

Hi Ludo,

> I applied it but it fails for me at the end:
> 
> --8<---------------cut here---------------start------------->8---
> starting phase `reset-gzip-timestamps'
> Backtrace:
>            9 (primitive-load
> "/gnu/store/qaparaqbwqw4v0hwfd50s37mikz…")
> In ice-9/eval.scm:
>    191:35  8 (_ _)
> In ice-9/boot-9.scm:
>     829:9  7 (catch _ _ #<procedure 7ffff5bc0518 at /gnu/store/w3jl…>
> …)
> In srfi/srfi-1.scm:
>    863:16  6 (every1 #<procedure 7ffff4c111e0 at /gnu/store/w3jlc8p…>
> …)
> In /gnu/store/w3jlc8pk8416m7h677r5vq92b66h8cqd-module-
> import/guix/build/gnu-build-system.scm:
>    839:30  5 (_ _)
>     594:5  4 (reset-gzip-timestamps #:outputs _)
> In srfi/srfi-1.scm:
>     640:9  3 (for-each #<procedure process-directory (directory)>
> (#))
>     640:9  2 (for-each #<procedure reset-gzip-timestamp (file #:key…>
> …)
> In /gnu/store/w3jlc8pk8416m7h677r5vq92b66h8cqd-module-
> import/guix/build/utils.scm:
>    262:14  1 (reset-gzip-timestamp "/gnu/store/04j1kvzkx8n5ldbcbckh…"
> …)
> In unknown file:
>            0 (open "/gnu/store/04j1kvzkx8n5ldbcbckhcmbw4n3vzrwz-hel…" 
> …)
> 
> ERROR: In procedure open:
> In procedure open-fdes: Permission denied
> builder for `/gnu/store/xj20qjw2mgp2yc59hmafmkgg780n1ci7-helm-
> 0.9.0.drv' failed with exit code 1
> --8<---------------cut here---------------end--------------->8---
> 
> Could you take a look?

Weird, it used to work (I even installed it and used the plugin!) but
now I get this too. I would debug it but I have no idea what the error
means or what to look for, the project seems to get built ok (I can see
the generated LV2/VST plugins in the build directory).

> As an aside, the patch had been mangled on its way.  Could you send
> it
> as an attachment or with ‘git send-email’ next time?

Reattaching it as a patch, hopefully someone with more experience can
take it from here.

Alex
From 0aeb52a0b38d32f39e92602dc5a5cc3da7363462 Mon Sep 17 00:00:00 2001
From: Alexandros Theodotou <[email-masked]>
Date: Fri, 8 Nov 2019 09:25:08 +0000
Subject: [PATCH] gnu: Add helm.

* gnu/packages/music.scm: (helm): New variable.
---
 gnu/packages/music.scm | 53 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 241ede58d8..6be12360eb 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -5013,3 +5013,56 @@ Soul Force), MVerb, Nekobi, and ProM.")
 MacArthur's AVLdrums.  This plugin provides a convenient way to sequence and mix
 MIDI drums and comes as two separate drumkits: Black Pearl and Red Zeppelin.")
     (license license:gpl2+)))
+
+(define-public helm
+  (package
+    (name "helm")
+    (version "0.9.0")
+    (source
+      (origin
+        (method git-fetch)
+        (uri
+          (git-reference
+            (url "https://github.com/mtytel/helm.git")
+            (commit (string-append "v" version))))
+        (file-name (git-file-name name version))
+        (sha256
+          (base32
+            "17ys2vvhncx9i3ydg3xwgz1d3gqv4yr5mqi7vr0i0ca6nad6x3d4"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f  ; no "check" target
+       #:make-flags
+       (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))
+             "lv2" "standalone")
+       #:phases
+       (modify-phases
+        %standard-phases
+        (add-after 'unpack 'include-pnglib-code-and-remove-usr-from-paths
+           (lambda _
+             (substitute* "standalone/builds/linux/Makefile"
+                          (("JUCE_INCLUDE_PNGLIB_CODE=0")
+                           "JUCE_INCLUDE_PNGLIB_CODE=1"))
+             (substitute* "builds/linux/LV2/Makefile"
+                          (("JUCE_INCLUDE_PNGLIB_CODE=0")
+                           "JUCE_INCLUDE_PNGLIB_CODE=1"))
+             (substitute* "Makefile" (("/usr") ""))
+             #t))
+        (delete 'configure))))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("curl" ,curl)
+       ("freetype2" ,freetype)
+       ("hicolor-icon-theme" ,hicolor-icon-theme)
+       ("libxcursor" ,libxcursor)
+       ("libxinerama", libxinerama)
+       ("jack", jack-1)
+       ("mesa" ,mesa)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("lv2", lv2)))
+    (home-page "https://tytel.org/helm/")
+    (synopsis "Polyphonic synth with lots of modulation")
+    (description "Helm is a cross-platform polyphonic synthesizer available standalone
+and as an LV2 plugin.")
+    (license license:gpl3+)))
-- 
2.24.0