[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH]: add freepats and timidity
From: |
Ricardo Wurmus |
Subject: |
Re: [PATCH]: add freepats and timidity |
Date: |
Sun, 22 Feb 2015 11:27:38 +0100 |
Attached are two new patches for Freepats and TiMidity++.
The contents of the Freepats tarball are now unpacked to
$out/share/freepats/, so there should be no conflicts anymore.
In TiMidity++ I removed the Tcl/Tk interface and added the ncurses
interface instead (the Tcl interface didn't actually work but the
ncurses interface does). I also enabled the server mode to be built.
The default path to the configuration file is now set to
$out/etc/timidity/timidity.cfg.
If you insist I can rename both package and variable from "timidity++"
to "timidity".
What do you think?
~~ Ricardo
>From 79cce5f61e55dda39b04844773e757e63f3b73ce Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Thu, 19 Feb 2015 16:56:39 +0100
Subject: [PATCH 1/2] gnu: Add Freepats.
* gnu/packages/audio.scm (freepats): New variable.
---
gnu/packages/audio.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index c668211..f4a98a7 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -23,9 +23,12 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix build-system waf)
+ #:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages glib)
@@ -190,6 +193,45 @@ bass section with five drawbars. A standalone JACK
application and LV2
plugins are provided.")
(license license:gpl2)))
+(define-public freepats
+ (package
+ (name "freepats")
+ (version "20060219")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "http://freepats.zenvoid.org/freepats-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "12iw36rd94zirll96cd5k0va7p5hxmf2shvjlhzihcmjaw8flq82"))))
+ (build-system trivial-build-system)
+ (arguments
+ `(#:modules ((guix build utils))
+ #:builder (begin
+ (use-modules (guix build utils))
+ (let ((out (string-append %output "/share/freepats")))
+ (setenv "PATH" (string-append
+ (assoc-ref %build-inputs "bzip2") "/bin:"
+ (assoc-ref %build-inputs "tar") "/bin"))
+ (system* "tar" "xvf" (assoc-ref %build-inputs "source"))
+ (chdir "freepats")
+ ;; Use absolute pattern references
+ (substitute* "freepats.cfg"
+ (("Tone_000") (string-append out "/Tone_000"))
+ (("Drum_000") (string-append out "/Drum_000")))
+ (mkdir-p out)
+ (copy-recursively "." out)))))
+ (native-inputs
+ `(("tar" ,tar)
+ ("bzip2" ,bzip2)))
+ (home-page "http://freepats.zenvoid.org")
+ (synopsis "GUS compatible patches for MIDI players")
+ (description
+ "FreePats is a project to create a free and open set of GUS compatible
+patches that can be used with softsynths such as Timidity and WildMidi.")
+ ;; GPLv2+ with exception for compositions using these patches.
+ (license license:gpl2+)))
+
(define-public jack-1
(package
(name "jack")
--
2.1.0
>From 5ea972bfa27bdc0348a94867e41953e515889a39 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Thu, 19 Feb 2015 16:57:33 +0100
Subject: [PATCH 2/2] gnu: Add TiMidity++.
* gnu/packages/audio.scm (timidity++): New variable.
---
gnu/packages/audio.scm | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index f4a98a7..acc73b1 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -34,6 +34,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
+ #:use-module (gnu packages ncurses)
#:use-module (gnu packages qt)
#:use-module (gnu packages linux)
#:use-module (gnu packages mp3) ;taglib
@@ -691,6 +692,62 @@ that toolkit will work in all hosts that use Suil
automatically.
Suil currently supports every combination of Gtk 2, Qt 4, and X11.")
(license license:isc)))
+(define-public timidity++
+ (package
+ (name "timidity++")
+ (version "2.14.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://sourceforge/timidity/TiMidity++-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "0xk41w4qbk23z1fvqdyfblbz10mmxsllw0svxzjw5sa9y11vczzr"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags
+ (list "--enable-audio=alsa,flac,jack,ao,vorbis,speex"
+ "--enable-ncurses"
+ "--enable-server"
+ "--enable-alsaseq"
+ (string-append "--with-default-path="
+ (assoc-ref %outputs "out") "/etc/timidity"))
+ #:phases
+ (alist-cons-after
+ 'install 'install-config
+ (lambda _
+ (let ((out (string-append (assoc-ref %outputs "out")
+ "/etc/timidity")))
+ (mkdir-p out)
+ (call-with-output-file
+ (string-append out "/timidity.cfg")
+ (lambda (port)
+ (format port (string-append "source "
+ (assoc-ref %build-inputs
"freepats")
+
"/share/freepats/freepats.cfg"))))))
+ %standard-phases)))
+ (inputs
+ `(("alsa-lib" ,alsa-lib)
+ ("ao" ,ao)
+ ("flac" ,flac)
+ ("jack" ,jack-1)
+ ("libogg" ,libogg)
+ ("speex" ,speex)
+ ("ncurses" ,ncurses)
+ ("freepats" ,freepats)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (home-page "http://timidity.sourceforge.net/")
+ (synopsis "Software synthesizer for playing MIDI files")
+ (description
+ "TiMidity++ is a software synthesizer. It can play MIDI files by
+converting them into PCM waveform data; give it a MIDI data along with digital
+instrument data files, then it synthesizes them in real-time, and plays. It
+can not only play sounds, but also can save the generated waveforms into hard
+disks as various audio file formats.")
+ (license license:gpl2+)))
+
(define-public vamp
(package
(name "vamp")
--
2.1.0
Re: [PATCH]: add freepats and timidity, Andreas Enge, 2015/02/19