Add EMMS, the Emacs Multimedia System.
svn path=/nixpkgs/trunk/; revision=12675
This commit is contained in:
parent
16d317e709
commit
d4e5ed0596
58
pkgs/applications/editors/emacs-modes/emms/default.nix
Normal file
58
pkgs/applications/editors/emacs-modes/emms/default.nix
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
{ stdenv, fetchurl, emacs, texinfo
|
||||||
|
, mpg321, vorbisTools, taglib, alsaUtils }:
|
||||||
|
|
||||||
|
# XXX: EMMS also supports Xine, MPlayer, Jack, etc.
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "emms-3.0";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
# These guys don't use ftp.gnu.org...
|
||||||
|
url = "http://www.gnu.org/software/emms/download/${name}.tar.gz";
|
||||||
|
sha256 = "151mfx97x15lfpd1qc2sqbvhwhvg46axgh15qyqmdy42vh906xav";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [ emacs texinfo ];
|
||||||
|
|
||||||
|
configurePhase = ''
|
||||||
|
sed -i "Makefile" -e "s|PREFIX *=.*\$|PREFIX = $out|g ;
|
||||||
|
s|/usr/sbin/install-info|install-info|g ;
|
||||||
|
s|/usr/include/taglib|${taglib}/include/taglib|g ;
|
||||||
|
s|/usr/lib|${taglib}/lib|g ;
|
||||||
|
s|^all:\(.*\)\$|all:\1 emms-print-metadata|g"
|
||||||
|
ensureDir "$out/share/man/man1"
|
||||||
|
|
||||||
|
sed -i "emms-player-mpg321-remote.el" \
|
||||||
|
-e 's|emms-player-mpg321-remote-command[[:blank:]]\+"mpg321"|emms-player-mpg321-remote-command "${mpg321}/bin/mpg321"|g'
|
||||||
|
sed -i "emms-player-simple.el" \
|
||||||
|
-e 's|"ogg123"|"${vorbisTools}/bin/ogg123"|g'
|
||||||
|
sed -i "emms-info-ogginfo.el" \
|
||||||
|
-e 's|emms-info-ogginfo-program-name[[:blank:]]\+"ogginfo"|emms-info-ogginfo-program-name "${vorbisTools}/bin/ogginfo"|g'
|
||||||
|
sed -i "emms-info-libtag.el" \
|
||||||
|
-e "s|\"emms-print-metadata\"|\"$out/bin/emms-print-metadata\"|g"
|
||||||
|
sed -i "emms-volume-amixer.el" \
|
||||||
|
-e 's|"amixer"|"${alsaUtils}/bin/amixer"|g'
|
||||||
|
'';
|
||||||
|
|
||||||
|
postInstall = ''
|
||||||
|
ensureDir "$out/bin" && cp emms-print-metadata "$out/bin"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "GNU EMMS, The Emacs Multimedia System";
|
||||||
|
|
||||||
|
longDescription = ''
|
||||||
|
EMMS is the Emacs Multimedia System. It tries to be a clean and
|
||||||
|
small application to play multimedia files from Emacs using
|
||||||
|
external players. Many of it's ideas are derived from
|
||||||
|
MpthreePlayer, but it tries to be more general and cleaner.
|
||||||
|
|
||||||
|
The fact that EMMS is based on external players makes it
|
||||||
|
powerful, because it supports all formats that those players
|
||||||
|
support, with no effort from your side.
|
||||||
|
'';
|
||||||
|
|
||||||
|
homepage = http://www.gnu.org/software/emms/;
|
||||||
|
license = "GPLv3+";
|
||||||
|
};
|
||||||
|
}
|
@ -6000,6 +6000,11 @@ let pkgs = rec {
|
|||||||
xftSupport = true;
|
xftSupport = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
emms = import ../applications/editors/emacs-modes/emms {
|
||||||
|
inherit fetchurl stdenv emacs texinfo mpg321 vorbisTools taglib
|
||||||
|
alsaUtils;
|
||||||
|
};
|
||||||
|
|
||||||
evince = import ../applications/misc/evince {
|
evince = import ../applications/misc/evince {
|
||||||
inherit fetchurl stdenv perl perlXMLParser gettext
|
inherit fetchurl stdenv perl perlXMLParser gettext
|
||||||
pkgconfig poppler libspectre djvulibre libxslt
|
pkgconfig poppler libspectre djvulibre libxslt
|
||||||
|
Loading…
x
Reference in New Issue
Block a user