mkvtoolnix: 7.8.0 -> 7.9.0

codyopel 46d30ae2 19dbe42a

+54 -27
+52 -27
pkgs/applications/video/mkvtoolnix/default.nix
··· 1 - { stdenv, fetchurl 2 - , libmatroska 3 - , flac 4 - , libvorbis 5 - , file 6 - , boost 7 - , xdg_utils 8 - , expat 9 - , withGUI ? true 10 - , wxGTK 11 - , zlib 12 - , ruby 13 - , gettext 14 - , pkgconfig 15 - , curl 1 + { stdenv, fetchurl, gettext, pkgconfig, ruby 2 + , boost, expat, file, flac, libebml, libmatroska, libogg, libvorbis, xdg_utils, zlib 3 + # pugixml (not packaged) 4 + , buildConfig ? "all" 5 + , withGUI ? false, qt5 ? null # Disabled for now until upstream issues are resolved 6 + , legacyGUI ? true, wxGTK ? null 7 + # For now both qt5 and wxwidgets gui's are enabled, if wxwidgets is disabled the 8 + # build system doesn't install desktop entries, icons, etc... 16 9 }: 17 10 18 - assert withGUI -> wxGTK != null; 11 + let 12 + inherit (stdenv.lib) enableFeature optional; 13 + in 14 + 15 + assert withGUI -> qt5 != null; 16 + assert legacyGUI -> wxGTK != null; 19 17 20 18 stdenv.mkDerivation rec { 21 - version = "7.8.0"; 22 19 name = "mkvtoolnix-${version}"; 20 + version = "7.9.0"; 23 21 24 22 src = fetchurl { 25 23 url = "http://www.bunkus.org/videotools/mkvtoolnix/sources/${name}.tar.xz"; 26 - sha256 = "0m7y9115bkfsm95hv2nq0hnd9w73jymsm071jm798w11vdskm8af"; 24 + sha256 = "0jmsgfkxrnplpmwlzynqdb4xf3x1z3dminz97gmddswwgnjqyy1r"; 27 25 }; 28 26 27 + patchPhase = '' 28 + patchShebangs ./rake.d/ 29 + patchShebangs ./Rakefile 30 + # Force ruby encoding to use UTF-8 or else when enabling qt5 the Rakefile may 31 + # fail with `invalid byte sequence in US-ASCII' due to UTF-8 characters 32 + # This workaround replaces an arbitrary comment in the drake file 33 + sed -e 's,#--,Encoding.default_external = Encoding::UTF_8,' -i ./drake 34 + ''; 35 + 36 + configureFlags = [ 37 + "--with-boost-libdir=${boost.lib}/lib" 38 + "--without-curl" 39 + ] ++ ( 40 + if (withGUI || legacyGUI) then [ 41 + "--with-mkvtoolnix-gui" 42 + "--enable-gui" 43 + (enableFeature withGUI "qt") 44 + (enableFeature legacyGUI "wxwidgets") 45 + ] else [ 46 + "--disable-gui" 47 + ] 48 + ); 49 + 50 + nativeBuildInputs = [ gettext pkgconfig ruby ]; 51 + 29 52 buildInputs = [ 30 - libmatroska flac libvorbis file boost xdg_utils 31 - expat zlib ruby gettext pkgconfig curl 32 - ] ++ stdenv.lib.optional withGUI wxGTK; 53 + boost expat file flac libebml libmatroska libogg libvorbis xdg_utils zlib 54 + ] ++ optional withGUI qt5 55 + ++ optional legacyGUI wxGTK; 33 56 34 - configureFlags = "--with-boost-libdir=${boost.lib}/lib"; 57 + enableParallelBuilding = true; 58 + 35 59 buildPhase = '' 36 - ruby ./drake 60 + ./drake 37 61 ''; 38 62 39 63 installPhase = '' 40 - ruby ./drake install 64 + ./drake install 41 65 ''; 42 66 43 - meta = { 67 + meta = with stdenv.lib; { 44 68 description = "Cross-platform tools for Matroska"; 45 69 homepage = http://www.bunkus.org/videotools/mkvtoolnix/; 46 - license = stdenv.lib.licenses.gpl2; 47 - maintainers = with stdenv.lib.maintainers; [ fuuzetsu ]; 70 + license = licenses.gpl2; 71 + maintainers = with maintainers; [ codyopel fuuzetsu ]; 72 + platforms = platforms.unix; 48 73 }; 49 74 }
+2
pkgs/top-level/all-packages.nix
··· 7144 7144 7145 7145 mkvtoolnix-cli = mkvtoolnix.override { 7146 7146 withGUI = false; 7147 + qt5 = null; 7148 + legacyGUI = false; 7147 7149 wxGTK = null; 7148 7150 }; 7149 7151