summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorRodger Fox <thylakoid@openmailbox.org>2017-03-21 15:23:49 -0400
committerLeo Famulari <leo@famulari.name>2017-03-21 15:37:29 -0400
commita42619e5e211ed2511f71029ee2c5777c0f54c3b (patch)
treecb92c9c3338f4458eaf9ff47ddf1cd3c00894a25 /gnu/packages
parent0b608ec4ceaee45a0d00b2f081f6f0be69b90deb (diff)
downloadguix-a42619e5e211ed2511f71029ee2c5777c0f54c3b.tar.gz
gnu: Add lmms.
* gnu/packages/music.scm (lmms): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/music.scm53
1 files changed, 53 insertions, 0 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 87b6d5b9b3..07f30cfdd0 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
+;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2820,3 +2821,55 @@ collections and wantlists, inventory, and orders.")
 conversions between time and pulses, tempo map handling and more.  The only dependencies
 are a C compiler and glib.  Full API documentation and examples are included.")
     (license license:bsd-2)))
+
+(define-public lmms
+  (package
+    (name "lmms")
+    (version "1.1.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/LMMS/lmms/archive/v"
+                           version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1g76z7ha3hd53vbqaq9n1qg6s3lw8zzaw51iny6y2bz0j1xqwcsr"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-before
+          'configure 'set-ldflags
+          (lambda* (#:key outputs #:allow-other-keys)
+            (setenv "LDFLAGS"
+                    (string-append
+                     "-Wl,-rpath=\""
+                     (assoc-ref outputs "out") "/lib/lmms"
+                     ":"
+                     (assoc-ref outputs "out") "/lib/lmms/ladspa"
+                     "\"")))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("sdl" ,sdl)
+       ("qt" ,qt-4)
+       ("fltk" ,fltk)
+       ("libogg" ,libogg)
+       ("libsamplerate" ,libsamplerate)
+       ("fluidsynth" ,fluidsynth)
+       ("libvorbis" ,libvorbis)
+       ("alsa-lib" ,alsa-lib)
+       ("portaudio" ,portaudio)
+       ("ladspa" ,ladspa)
+       ("libsndfile1" ,libsndfile)
+       ("libxft" ,libxft)
+       ("freetype2" ,freetype)
+       ("fftw3f" ,fftwf)))
+    (home-page "https://lmms.io/")
+    (synopsis "Music composition tool")
+    (description "LMMS is a digital audio workstation.  It includes tools for sequencing
+melodies and beats and for mixing and arranging songs.  LMMS includes instruments based on
+audio samples and various soft sythesizers.  It can receive input from a MIDI keyboard.")
+    (license license:gpl2+)))