unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH 0/4] Add Ingen
@ 2016-11-28 19:10 Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 1/4] gnu: Add ganv-devel Ricardo Wurmus
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-11-28 19:10 UTC (permalink / raw)
  To: guix-devel

Hi Guix,

Ingen is a very flexible audio environment, which can be used as a modular
synthesizer or an audio effects chain.

There hasn't been a proper release even though it's been very usable since a
couple of years already.  It depends on at least two development versions of
LV2-related libraries (raul and ganv).

This patch set adds ingen and the new package variants it needs.

~~ Ricardo

Ricardo Wurmus (4):
  gnu: Add ganv-devel.
  gnu: Add raul-devel.
  gnu: lv2: Update to 1.14.0.
  gnu: Add ingen.

 gnu/packages/audio.scm | 109 +++++++++++++++++++++++++++++++++++++++++++++++--
 gnu/packages/gtk.scm   |  19 +++++++++
 2 files changed, 124 insertions(+), 4 deletions(-)

-- 
2.10.2

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/4] gnu: Add ganv-devel.
  2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
@ 2016-11-28 19:10 ` Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 2/4] gnu: Add raul-devel Ricardo Wurmus
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-11-28 19:10 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gtk.scm (ganv-devel): New variable.
---
 gnu/packages/gtk.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 17bd9c9..e46a0af 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
+;;; Coypright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
 ;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
@@ -34,6 +35,7 @@
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
   #:use-module (guix build-system waf)
@@ -298,6 +300,23 @@ graph-like environments, e.g. modular synths or finite state machine
 diagrams.")
     (license license:gpl3+)))
 
+(define-public ganv-devel
+  (let ((commit "31685d283e9b811b61014f820c42807f4effa071")
+        (revision "1"))
+    (package
+      (inherit ganv)
+      (name "ganv")
+      (version (string-append "1.4.2-" revision "."
+                              (string-take commit 9)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "http://git.drobilla.net/ganv.git")
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "0xmbykdl42jn9cgzrqrys5lng67d26nk5xq10wkkvjqldiwdck56")))))))
+
 (define-public gtksourceview-2
   (package
     (name "gtksourceview")
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/4] gnu: Add raul-devel.
  2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 1/4] gnu: Add ganv-devel Ricardo Wurmus
@ 2016-11-28 19:10 ` Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 3/4] gnu: lv2: Update to 1.14.0 Ricardo Wurmus
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-11-28 19:10 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/audio.scm (raul-devel): New variable.
---
 gnu/packages/audio.scm | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 66db4c5..d89c93c 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -1798,6 +1798,23 @@ and ALSA.")
 aimed at audio/musical applications.")
     (license license:gpl2+)))
 
+(define-public raul-devel
+  (let ((commit "f8bf77d3c3b77830aedafb9ebb5cdadfea7ed07a")
+        (revision "1"))
+    (package (inherit raul)
+      (name "raul")
+      (version (string-append "0.8.4-" revision "."
+                              (string-take commit 9)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "http://git.drobilla.net/raul.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "1lby508fb0n8ks6iz959sh18fc37br39d6pbapwvbcw5nckdrxwj")))))))
+
 (define-public rubberband
   (package
     (name "rubberband")
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/4] gnu: lv2: Update to 1.14.0.
  2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 1/4] gnu: Add ganv-devel Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 2/4] gnu: Add raul-devel Ricardo Wurmus
@ 2016-11-28 19:10 ` Ricardo Wurmus
  2016-11-28 19:10 ` [PATCH 4/4] gnu: Add ingen Ricardo Wurmus
  2016-12-04 10:57 ` [PATCH 0/4] Add Ingen Ricardo Wurmus
  4 siblings, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-11-28 19:10 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/audio.scm (lv2): Update to 1.14.0.
---
 gnu/packages/audio.scm | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index d89c93c..a3069b4 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -1551,15 +1551,14 @@ significantly faster and have minimal dependencies.")
 (define-public lv2
   (package
     (name "lv2")
-    (version "1.12.0")
+    (version "1.14.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "http://lv2plug.in/spec/lv2-"
-                                 version
-                                 ".tar.bz2"))
+                                 version ".tar.bz2"))
              (sha256
               (base32
-               "1saq0vwqy5zjdkgc5ahs8kcabxfmff2mmg68fiqrkv8hiw9m6jks"))))
+               "0chxwys3vnn3nxc9x2vchm74s9sx0vfra6y893byy12ci61jc1dq"))))
     (build-system waf-build-system)
     (arguments
      `(#:tests? #f  ; no check target
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 4/4] gnu: Add ingen.
  2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
                   ` (2 preceding siblings ...)
  2016-11-28 19:10 ` [PATCH 3/4] gnu: lv2: Update to 1.14.0 Ricardo Wurmus
@ 2016-11-28 19:10 ` Ricardo Wurmus
  2016-12-04 10:57 ` [PATCH 0/4] Add Ingen Ricardo Wurmus
  4 siblings, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-11-28 19:10 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/audio.scm (ingen): New variable.
---
 gnu/packages/audio.scm | 85 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 85 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index a3069b4..5bc9f59 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -2787,3 +2787,88 @@ code, used in @code{libtoxcore}.")
 06.10 RPE-LTP lossy speech compression algorithm.")
     (home-page "http://quut.com/gsm/")
     (license (license:non-copyleft "file://COPYRIGHT"))))
+
+(define-public ingen
+  (let ((commit "fd147d0b888090bfb897505852c1f25dbdf77e18")
+        (revision "1"))
+    (package
+      (name "ingen")
+      (version (string-append "0.0.0-" revision "."
+                              (string-take commit 9)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "http://git.drobilla.net/ingen.git")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "1qmg79962my82c43vyrv5sxbqci9c7gc2s9bwaaqd0fcf08xcz1z"))))
+      (build-system waf-build-system)
+      (arguments
+       `(#:tests? #f ; no "check" target
+         #:configure-flags (list "--no-webkit")
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'patch-wscript
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((out (assoc-ref outputs "out")))
+                 (substitute* "wscript"
+                   ;; FIXME: Our version of lv2specgen.py does not behave as
+                   ;; expected.  Maybe this requires a development version of
+                   ;; LV2.
+                   (("lv2specgen.py") "touch ingen.lv2/ingen.html; echo")
+                   ;; Add libraries to RUNPATH.
+                   (("^(.+)target.*= 'src/ingen/ingen'," line prefix)
+                    (string-append prefix
+                                   "linkflags=[\"-Wl,-rpath="
+                                   out "/lib" "\"]," line)))
+                 (substitute* '("src/wscript"
+                                "src/server/wscript")
+                   ;; Add libraries to RUNPATH.
+                   (("bld.env.PTHREAD_LINKFLAGS" line)
+                    (string-append line
+                                   " + [\"-Wl,-rpath=" out "/lib" "\"]")))
+                 (substitute* "src/client/wscript"
+                   ;; Add libraries to RUNPATH.
+                   (("^(.+)target.*= 'ingen_client'," line prefix)
+                    (string-append prefix
+                                   "linkflags=[\"-Wl,-rpath="
+                                   out "/lib" "\"]," line)))
+                 (substitute* "src/gui/wscript"
+                   ;; Add libraries to RUNPATH.
+                   (("^(.+)target.* = 'ingen_gui.*" line prefix)
+                    (string-append prefix
+                                   "linkflags=[\"-Wl,-rpath="
+                                   out "/lib" "\"]," line))))
+               #t)))))
+      (inputs
+       `(("boost" ,boost)
+         ("python-rdflib" ,python-rdflib)
+         ("python" ,python)
+         ("jack" ,jack-1)
+         ("lv2" ,lv2)
+         ("lilv" ,lilv)
+         ("raul" ,raul-devel)
+         ("ganv" ,ganv-devel)
+         ("suil" ,suil)
+         ("serd" ,serd)
+         ("sord" ,sord)
+         ("sratom" ,sratom)
+         ("gtkmm" ,gtkmm-2)))
+      (native-inputs
+       `(("pkg-config" ,pkg-config)
+         ("python-pygments" ,python-pygments)))
+      (home-page "http://drobilla.net/software/ingen")
+      (synopsis "Modular audio processing system")
+      (description "Ingen is a modular audio processing system for JACK and
+LV2 based systems.  Ingen is built around LV2 technology and a strict
+separation of engine from user interface.  The engine is controlled
+exclusively through a protocol, and can execute as a headless process, with an
+in-process GUI, or as an LV2 plugin.  The GUI can run as a program which
+communicates over a Unix or TCP/IP socket, or as an embeddable LV2 GUI which
+communicates via LV2 ports.  Any saved Ingen graph can be loaded as an LV2
+plugin on any system where Ingen is installed.  This allows users to visually
+develop custom plugins for use in other applications without programming.")
+      (license license:agpl3+))))
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 0/4] Add Ingen
  2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
                   ` (3 preceding siblings ...)
  2016-11-28 19:10 ` [PATCH 4/4] gnu: Add ingen Ricardo Wurmus
@ 2016-12-04 10:57 ` Ricardo Wurmus
  4 siblings, 0 replies; 6+ messages in thread
From: Ricardo Wurmus @ 2016-12-04 10:57 UTC (permalink / raw)
  To: guix-devel


Ricardo Wurmus <rekado@elephly.net> writes:

> Hi Guix,
>
> Ingen is a very flexible audio environment, which can be used as a modular
> synthesizer or an audio effects chain.
>
> There hasn't been a proper release even though it's been very usable since a
> couple of years already.  It depends on at least two development versions of
> LV2-related libraries (raul and ganv).
>
> This patch set adds ingen and the new package variants it needs.
>
> ~~ Ricardo
>
> Ricardo Wurmus (4):
>   gnu: Add ganv-devel.
>   gnu: Add raul-devel.
>   gnu: lv2: Update to 1.14.0.
>   gnu: Add ingen.
>
>  gnu/packages/audio.scm | 109 +++++++++++++++++++++++++++++++++++++++++++++++--
>  gnu/packages/gtk.scm   |  19 +++++++++
>  2 files changed, 124 insertions(+), 4 deletions(-)

I moved ingen from audio.scm to music.scm and pushed to master as
951581a2d6ff5681e55affadb7f3151e7ef51ffe.

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
http://elephly.net

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-12-04 11:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-28 19:10 [PATCH 0/4] Add Ingen Ricardo Wurmus
2016-11-28 19:10 ` [PATCH 1/4] gnu: Add ganv-devel Ricardo Wurmus
2016-11-28 19:10 ` [PATCH 2/4] gnu: Add raul-devel Ricardo Wurmus
2016-11-28 19:10 ` [PATCH 3/4] gnu: lv2: Update to 1.14.0 Ricardo Wurmus
2016-11-28 19:10 ` [PATCH 4/4] gnu: Add ingen Ricardo Wurmus
2016-12-04 10:57 ` [PATCH 0/4] Add Ingen Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).