gnu: python-pandas: Fix build on 32-bit.
[jackhill/guix/guix.git] / gnu / packages / audacity.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
3 ;;;
4 ;;; This file is part of GNU Guix.
5 ;;;
6 ;;; GNU Guix is free software; you can redistribute it and/or modify it
7 ;;; under the terms of the GNU General Public License as published by
8 ;;; the Free Software Foundation; either version 3 of the License, or (at
9 ;;; your option) any later version.
10 ;;;
11 ;;; GNU Guix is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 ;;; GNU General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU General Public License
17 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
18
19 (define-module (gnu packages audacity)
20 #:use-module (guix packages)
21 #:use-module (guix download)
22 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix build-system gnu)
24 #:use-module (gnu packages)
25 #:use-module (gnu packages audio)
26 #:use-module (gnu packages base)
27 #:use-module (gnu packages gettext)
28 #:use-module (gnu packages gtk)
29 #:use-module (gnu packages linux)
30 #:use-module (gnu packages mp3)
31 #:use-module (gnu packages pkg-config)
32 #:use-module (gnu packages pulseaudio)
33 #:use-module (gnu packages python)
34 #:use-module (gnu packages xiph)
35 #:use-module (gnu packages xml)
36 #:use-module (gnu packages video)
37 #:use-module (gnu packages wxwidgets))
38
39 (define-public audacity
40 (package
41 (name "audacity")
42 (version "2.1.2")
43 (source
44 (origin
45 (method url-fetch)
46 (uri (string-append "https://github.com/audacity/audacity/archive"
47 "/Audacity-" version ".zip"))
48 (sha256
49 (base32 "1642i9d5cdmqzj6r0qdl2ldnqsvpb08znnczncysi72x6zpvb5qq"))
50 (patches (search-patches "audacity-fix-ffmpeg-binding.patch"))))
51 (build-system gnu-build-system)
52 (inputs
53 ;; TODO: Add portSMF and libwidgetextra once they're packaged. In-tree
54 ;; versions shipping with Audacity are used for now.
55 `(("wxwidgets" ,wxwidgets-gtk2)
56 ("gtk" ,gtk+-2)
57 ("alsa-lib" ,alsa-lib)
58 ("jack" ,jack-1)
59 ("expat" ,expat)
60 ("ffmpeg" ,ffmpeg)
61 ("lame" ,lame)
62 ("flac" ,flac)
63 ("libid3tag" ,libid3tag)
64 ("libmad" ,libmad)
65 ("libsbsms" ,libsbsms)
66 ("libsndfile" ,libsndfile)
67 ("soundtouch" ,soundtouch)
68 ("soxr" ,soxr) ;replaces libsamplerate
69 ("twolame" ,twolame)
70 ("vamp" ,vamp)
71 ("libvorbis" ,libvorbis)
72 ("lv2" ,lv2)
73 ("lilv" ,lilv)
74 ("portaudio" ,portaudio)))
75 (native-inputs
76 `(("gettext" ,gettext-minimal) ;for msgfmt
77 ("pkg-config" ,pkg-config)
78 ("python" ,python-2)
79 ("which" ,which)))
80 (arguments
81 '(#:configure-flags
82 (let ((libid3tag (assoc-ref %build-inputs "libid3tag"))
83 (libmad (assoc-ref %build-inputs "libmad")))
84 (list
85 ;; Loading FFmpeg dynamically is problematic.
86 "--disable-dynamic-loading"
87 ;; libid3tag and libmad provide no .pc files, so pkg-config fails to
88 ;; find them. Force their inclusion.
89 (string-append "ID3TAG_CFLAGS=-I" libid3tag "/include")
90 (string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
91 (string-append "LIBMAD_CFLAGS=-I" libmad "/include")
92 (string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")))
93 ;; The test suite is not "well exercised" according to the developers,
94 ;; and fails with various errors. See
95 ;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
96 #:tests? #f))
97 (home-page "http://audacity.sourceforge.net/")
98 (synopsis "Software for recording and editing sounds")
99 (description
100 "Audacity is a multi-track audio editor designed for recording, playing
101 and editing digital audio. It features digital effects and spectrum analysis
102 tools.")
103 (license license:gpl2+)))