It's a good idea to run "./pre-inst-env guix lint PACKAGENAME" which
 will pick up long lines for example.
 I have a ruler/colored line at character 83 in vim, but I'm not yet
 ready with the setup to write correct code again in vim. There's
 a similar thing for emacs.

 I would replace the third or second "It" with @code{LMMS} or simply
 LMMS.

Thanks for pointing that out. I missed that pre-inst-env tool in
the manual until you just mentioned it here. That helps a lot.
My corrected patch is attached. It passes the linter this time.

-Rodger Fox
From a40d4032431d5a22809c25d81ecdc8ed370e989c Mon Sep 17 00:00:00 2001
From: Rodger Fox <thylak...@openmailbox.org>
Date: Wed, 22 Feb 2017 15:08:30 -0800
Subject: [PATCH] gnu: Add lmms.

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

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 730d981e6..fe24c94f6 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -9,6 +9,7 @@
 ;;; Copyright © 2016 John J. Foerch <jjfoe...@earthlink.net>
 ;;; Copyright © 2016 Alex Griffin <a...@ajgrf.com>
 ;;; Copyright © 2017 ng0 <contact....@cryptolab.net>
+;;; Copyright © 2017 Rodger Fox <thylak...@openmailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2818,3 +2819,45 @@ 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 to run.
+       #:validate-runpath? #f)) ; Binaries in subdirectories of /lib are dependent.
+                                ; It fails the runpath validation, but still works.
+    (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+)))
-- 
2.11.1

Reply via email to