gnu: qemu: Remove dependency on Samba.
[jackhill/guix/guix.git] / gnu / packages / mpd.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2014 David Thompson <dthompson2@worcester.edu>
3 ;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (gnu packages mpd)
21 #:use-module (srfi srfi-1)
22 #:use-module (gnu packages)
23 #:use-module ((guix licenses) #:prefix license:)
24 #:use-module (guix packages)
25 #:use-module (guix download)
26 #:use-module (guix build-system gnu)
27 #:use-module (gnu packages avahi)
28 #:use-module (gnu packages compression)
29 #:use-module (gnu packages curl)
30 #:use-module (gnu packages doxygen)
31 #:use-module (gnu packages glib)
32 #:use-module (gnu packages linux)
33 #:use-module (gnu packages mp3)
34 #:use-module (gnu packages ncurses)
35 #:use-module (gnu packages pkg-config)
36 #:use-module (gnu packages pulseaudio)
37 #:use-module (gnu packages sqlite)
38 #:use-module (gnu packages video)
39 #:use-module (gnu packages xiph)
40 #:export (libmpdclient
41 mpd
42 ncmpc))
43
44 (define libmpdclient
45 (package
46 (name "libmpdclient")
47 (version "2.9")
48 (source (origin
49 (method url-fetch)
50 (uri
51 (string-append "http://musicpd.org/download/libmpdclient/"
52 (car (string-split version #\.))
53 "/libmpdclient-" version ".tar.gz"))
54 (sha256
55 (base32
56 "0csb9r3nlmbwpiryixjr5k33x3zqd61xjhwmlps3a6prck1n1xw2"))))
57 (build-system gnu-build-system)
58 (native-inputs `(("doxygen" ,doxygen)))
59 (synopsis "Music Player Daemon client library")
60 (description "A stable, documented, asynchronous API library for
61 interfacing MPD in the C, C++ & Objective C languages.")
62 (home-page "http://www.musicpd.org/libs/libmpdclient/")
63 (license license:bsd-3)))
64
65 (define mpd
66 (package
67 (name "mpd")
68 (version "0.18.8")
69 (source (origin
70 (method url-fetch)
71 (uri
72 (string-append "http://musicpd.org/download/mpd/"
73 (string-join (take (string-split
74 version #\.) 2) ".")
75 "/mpd-" version ".tar.gz"))
76 (sha256
77 (base32
78 "1ryqh0xf76xv4mpwy1gjwy275ar4wmbzifa9ccjim9r7lk2hgp5v"))))
79 (build-system gnu-build-system)
80 (inputs `(("ao" ,ao)
81 ("alsa-lib" ,alsa-lib)
82 ("avahi" ,avahi)
83 ("curl" ,curl)
84 ("ffmpeg" ,ffmpeg)
85 ("flac" ,flac)
86 ("glib" ,glib)
87 ("lame" ,lame)
88 ("libid3tag" ,libid3tag)
89 ("libmad" ,libmad)
90 ("libmpdclient" ,libmpdclient)
91 ("libsamplerate" ,libsamplerate)
92 ("libsndfile" ,libsndfile)
93 ("libvorbis" ,libvorbis)
94 ("opus" ,opus)
95 ("pkg-config" ,pkg-config)
96 ("pulseaudio" ,pulseaudio)
97 ("sqlite" ,sqlite)
98 ("zlib" ,zlib)))
99 ;; Missing optional inputs:
100 ;; libyajl
101 ;; libcdio_paranoia
102 ;; libmms
103 ;; libadplug
104 ;; libaudiofile
105 ;; faad2
106 ;; fluidsynth
107 ;; libgme
108 ;; libshout
109 ;; libmpg123
110 ;; libmodplug
111 ;; libmpcdec
112 ;; libsidplay2
113 ;; libwavpack
114 ;; libwildmidi
115 ;; libtwolame
116 ;; libroar
117 ;; libjack
118 ;; OpenAL
119 (synopsis "Music Player Daemon")
120 (description "Music Player Daemon (MPD) is a flexible, powerful,
121 server-side application for playing music. Through plugins and libraries it
122 can play a variety of sound files while being controlled by its network
123 protocol.")
124 (home-page "http://www.musicpd.org/")
125 (license license:gpl2)))
126
127 (define ncmpc
128 (package
129 (name "ncmpc")
130 (version "0.21")
131 (source (origin
132 (method url-fetch)
133 (uri
134 (string-append "http://musicpd.org/download/ncmpc/"
135 (car (string-split version #\.))
136 "/ncmpc-" version ".tar.gz"))
137 (sha256
138 (base32
139 "1gpy6rr0awl6xgkswmr8rdvqfkrz83rmwk441c00a9d4z3zb1a16"))))
140 (build-system gnu-build-system)
141 (inputs `(("glib" ,glib)
142 ("libmpdclient" ,libmpdclient)
143 ("ncurses" ,ncurses)))
144 (native-inputs `(("pkg-config" ,pkg-config)))
145 (synopsis "A curses Music Player Daemon client")
146 (description "ncmpc is a fully featured MPD client, which runs in a
147 terminal using ncurses.")
148 (home-page "http://www.musicpd.org/clients/ncmpc/")
149 (license license:gpl2)))