diff --git a/pkgs/applications/video/MPlayer/default.nix b/pkgs/applications/video/MPlayer/default.nix index f53cd291137..415769cc9ce 100644 --- a/pkgs/applications/video/MPlayer/default.nix +++ b/pkgs/applications/video/MPlayer/default.nix @@ -31,6 +31,7 @@ in stdenv.mkDerivation { name = "MPlayer-1.0rc2-r28450"; + # 1.0_rc2 is outdated according to website - use trunk instead src = fetchurl { url = mirror://gentoo/distfiles/mplayer-1.0_rc2_p28450.tar.bz2; sha256 = "0cbils58mq20nablywgjfpfx2pzjgnhin23sb8k1s5h2rxgvi3vf"; diff --git a/pkgs/applications/video/MPlayer/trunk.nix b/pkgs/applications/video/MPlayer/trunk.nix new file mode 100644 index 00000000000..29fbe04391a --- /dev/null +++ b/pkgs/applications/video/MPlayer/trunk.nix @@ -0,0 +1,74 @@ +# the hompepage even recommends using trunk +{ alsaSupport ? false, xvSupport ? true, theoraSupport ? false, cacaSupport ? false +, xineramaSupport ? false, randrSupport ? false, dvdnavSupport ? true +, stdenv, fetchurl, x11, freetype, freefont_ttf, zlib +, alsa ? null, libX11, libXv ? null, libtheora ? null, libcaca ? null +, libXinerama ? null, libXrandr ? null, libdvdnav ? null +, cdparanoia ? null, cddaSupport ? true +, mesa, pkgconfig +, sourceByName +}: + +assert alsaSupport -> alsa != null; +assert xvSupport -> libXv != null; +assert theoraSupport -> libtheora != null; +assert cacaSupport -> libcaca != null; +assert xineramaSupport -> libXinerama != null; +assert randrSupport -> libXrandr != null; +assert dvdnavSupport -> libdvdnav != null; +assert cddaSupport -> cdparanoia != null; + +let + + win32codecs = (import ./win32codecs) { + inherit stdenv fetchurl; + }; + + rp9codecs = (import ./rp9codecs) { + inherit stdenv fetchurl; + }; + +in + +stdenv.mkDerivation { + + name = "mplayer-trunk"; + + src = sourceByName "MPlayer"; + + buildInputs = + [x11 libXv freetype zlib mesa pkgconfig] + ++ stdenv.lib.optional alsaSupport alsa + ++ stdenv.lib.optional xvSupport libXv + ++ stdenv.lib.optional theoraSupport libtheora + ++ stdenv.lib.optional cacaSupport libcaca + ++ stdenv.lib.optional xineramaSupport libXinerama + ++ stdenv.lib.optional randrSupport libXrandr + ++ stdenv.lib.optionals dvdnavSupport [libdvdnav libdvdnav.libdvdread] + ++ stdenv.lib.optional cddaSupport cdparanoia; + + configureFlags = '' + ${if cacaSupport then "--enable-caca" else "--disable-caca"} + ${if dvdnavSupport then "--enable-dvdnav --enable-dvdread --disable-dvdread-internal" else ""} + --win32codecsdir=${win32codecs} + --realcodecsdir=${rp9codecs} + --enable-runtime-cpudetection + --enable-x11 + --disable-xanim + --disable-ivtv + ''; + + NIX_LDFLAGS = "-lX11 -lXext"; + + # Provide a reasonable standard font. Maybe we should symlink here. + postInstall = '' + ensureDir $out/share/mplayer + cp ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mplayer/subfont.ttf + ''; + + meta = { + description = "A movie player that supports many video formats"; + homepage = "http://mplayerhq.hu"; + license = "GPL"; + }; +} diff --git a/pkgs/development/misc/bleeding-edge-repos/default.nix b/pkgs/development/misc/bleeding-edge-repos/default.nix index 079339efdbf..9be4b1b4fa1 100644 --- a/pkgs/development/misc/bleeding-edge-repos/default.nix +++ b/pkgs/development/misc/bleeding-edge-repos/default.nix @@ -43,6 +43,8 @@ args: hg2git = { type = "git"; url="git://repo.or.cz/hg2git.git"; }; + MPlayer = { type = "svn"; url="svn://svn.mplayerhq.hu/mplayer/trunk"; }; + # darcs repositories haskell http = { type= "darcs"; url="http://darcs.haskell.org/http/"; groups="happs"; }; syb_with_class = { type="darcs"; url="http://happs.org/HAppS/syb-with-class"; groups="happs"; }; diff --git a/pkgs/misc/bleeding-edge-fetch-infos.nix b/pkgs/misc/bleeding-edge-fetch-infos.nix index d7a4dd8fab1..25cc2426bd5 100644 --- a/pkgs/misc/bleeding-edge-fetch-infos.nix +++ b/pkgs/misc/bleeding-edge-fetch-infos.nix @@ -115,9 +115,9 @@ url = http://mawercer.de/~nix/repos/mkcabal.tar.gz; sha256 = "9f231756c36b46d29516ed327a320837194799a76de4833dc6a5c88e5ccd1658"; }; - nix_repository_manager = args: with args; fetchurl { # Tue Jul 14 13:57:15 CEST 2009 - url = "http://mawercer.de/~nix/repos/nix_repository_manager-nrmtag4.tar.gz"; - sha256 = "f5097caf8aff29192ed0fcb578819b0d2fc62c0bc6e1400294c76cc45c0bfc4d"; + nix_repository_manager = args: with args; fetchurl { # Sun Sep 6 16:46:13 CEST 2009 + url = "http://mawercer.de/~nix/repos/nix_repository_manager-nrmtag6.tar.gz"; + sha256 = "6c5daa1b320ada16ce7e8c2279ab3a27726e23fa3c1115f8c0bbd64ff806c7b7"; }; plugins = args: with args; fetchurl { url = http://mawercer.de/~nix/repos/plugins.tar.gz; @@ -263,4 +263,8 @@ url = "http://mawercer.de/~nix/repos/pywebcvs-1493.tar.gz"; sha256 = "4183b18f48738cf607ef29baae75f7edec46504d1fb31bdedfbc897dcadbe599"; }; + MPlayer = args: with args; fetchurl { # Sun Sep 6 16:46:45 CEST 2009 + url = "http://mawercer.de/~nix/repos/MPlayer-29652.tar.gz"; + sha256 = "c202a43041d753b78777c3bb22a60068626b8a8aaf59f1d2cd054844a7c8546b"; + }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6f3f68d6f4b..466c002df8a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6899,6 +6899,20 @@ let # !!! should depend on MPlayer }; + MPlayerTrunk = import ../applications/video/MPlayer/trunk.nix { + inherit (bleedingEdgeRepos) sourceByName; + inherit fetchurl stdenv freetype x11 zlib libtheora libcaca freefont_ttf libdvdnav + cdparanoia mesa pkgconfig; + inherit (xlibs) libX11 libXv libXinerama libXrandr; + alsaSupport = true; + alsa = alsaLib; + theoraSupport = true; + cacaSupport = true; + xineramaSupport = true; + randrSupport = true; + cddaSupport = true; + }; + mrxvt = import ../applications/misc/mrxvt { inherit lib fetchurl stdenv freetype pkgconfig which; inherit (xlibs) libXaw xproto libXt libX11 libSM libICE libXft