diff mbox series

[bug#38281] Add ecasound.

Message ID 87lfsbft75.fsf@dustycloud.org
State Accepted
Headers show
Series [bug#38281] Add ecasound. | expand

Commit Message

Christine Lemmer-Webber Nov. 19, 2019, 9:32 p.m. UTC
Only minimal testing of it.

Goal of getting this in for me personally is to get
http://xelf.me/scheme-mosaic.html packaged.
Music production studio in emacs :)

Comments

Ludovic Courtès Nov. 21, 2019, 9:06 a.m. UTC | #1
Hi Chris,

Christopher Lemmer Webber <cwebber@dustycloud.org> skribis:

> Goal of getting this in for me personally is to get
> http://xelf.me/scheme-mosaic.html packaged.
> Music production studio in emacs :)

Woow, crazy stuff!

>>From 73936ea46606553dd5e0ba77b745abb45e16b51e Mon Sep 17 00:00:00 2001
> From: Christopher Lemmer Webber <cwebber@dustycloud.org>
> Date: Tue, 19 Nov 2019 16:29:59 -0500
> Subject: [PATCH] gnu: Add ecasound.
>
> * gnu/packages/audio.scm (ecasound): Add it.

LGTM, thanks!

Ludo’.
Christine Lemmer-Webber Nov. 21, 2019, 12:46 p.m. UTC | #2
Pushed!
diff mbox series

Patch

From 73936ea46606553dd5e0ba77b745abb45e16b51e Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <cwebber@dustycloud.org>
Date: Tue, 19 Nov 2019 16:29:59 -0500
Subject: [PATCH] gnu: Add ecasound.

* gnu/packages/audio.scm (ecasound): Add it.
---
 gnu/packages/audio.scm | 44 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index bc79225115..3c5c5fd2b1 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -23,6 +23,7 @@ 
 ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
 ;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
 ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2019 Christopher Lemmer Webber <cwebber@dustycloud.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3766,3 +3767,46 @@  other Gnaural instances, allowing synchronous sessions between many users.")
 a sound card, encodes it into Ogg Vorbis and/or mp3, and sends the audio
 stream to one or more IceCast and/or ShoutCast servers.")
     (license license:gpl3+)))
+
+(define-public ecasound
+  (package
+    (name "ecasound")
+    (version "2.9.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://nosignal.fi/download/ecasound-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32 "15rcs28fq2wfvfs66p5na7adq88b55qszbhshpizgdbyqzgr2jf1"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    ;; would be nice to add mikmod to inputs if that gets packaged
+    ;; eventually
+    (inputs `(("alsa-lib" ,alsa-lib)
+              ("jack" ,jack-1)
+              ("mpg123" ,mpg123)
+              ("lame" ,lame)
+              ("vorbis-tools" ,vorbis-tools)
+              ("faad2" ,faad2)
+              ("flac" ,flac)
+              ("timidity++" ,timidity++)
+              ("libsndfile" ,libsndfile)
+              ("libsamplerate" ,libsamplerate)
+              ("ncurses" ,ncurses)
+              ("ladspa" ,ladspa)
+              ("lilv" ,lilv)))
+    (home-page "http://nosignal.fi/ecasound/index.php")
+    (synopsis "Multitrack audio processing")
+    (description "Ecasound is a software package designed for multitrack audio
+processing. It can be used for simple tasks like audio playback, recording and
+format conversions, as well as for multitrack effect processing, mixing,
+recording and signal recycling. Ecasound supports a wide range of audio inputs,
+outputs and effect algorithms. Effects and audio objects can be combined in
+various ways, and their parameters can be controlled by operator objects like
+oscillators and MIDI-CCs. A versatile console mode user-interface is included
+in the package.")
+    ;; As an exception to the above, the C, C++ and python implementations 
+    ;; of the Ecasound Control Interface (ECI) are licensed under the LGPL 
+    ;; (see the file 'COPYING.LGPL'). This allows writing ECI applications 
+    ;; that are not licensed under GPL.
+    (license (list license:gpl2 license:lgpl2.1))))
-- 
2.23.0