1{
2 mkDerivation,
3 lib,
4 fetchurl,
5 extra-cmake-modules,
6 makeWrapper,
7 libpthreadstubs,
8 libXdmcp,
9 qtsvg,
10 qtx11extras,
11 ki18n,
12 kdelibs4support,
13 kio,
14 kmediaplayer,
15 kwidgetsaddons,
16 phonon,
17 cairo,
18 mplayer,
19}:
20
21mkDerivation rec {
22 majorMinorVersion = "0.12";
23 patchVersion = "0b";
24 version = "${majorMinorVersion}.${patchVersion}";
25 pname = "kmplayer";
26
27 src = fetchurl {
28 url = "mirror://kde/stable/kmplayer/${majorMinorVersion}/kmplayer-${version}.tar.bz2";
29 sha256 = "0wzdxym4fc83wvqyhcwid65yv59a2wvp1lq303cn124mpnlwx62y";
30 };
31
32 patches = [
33 ./kmplayer_part-plugin_metadata.patch # Qt 5.9 doesn't like an empty string for the optional "FILE" argument of "Q_PLUGIN_METADATA"
34 ./no-docs.patch # Don't build docs due to errors (kdelibs4support propagates kdoctools)
35 ];
36
37 postPatch = ''
38 sed -i src/kmplayer.desktop \
39 -e "s,^Exec.*,Exec=$out/bin/kmplayer -qwindowtitle %c %i %U,"
40 '';
41
42 # required for kf5auth to work correctly
43 cmakeFlags = [ "-DCMAKE_POLICY_DEFAULT_CMP0012=NEW" ];
44
45 nativeBuildInputs = [
46 extra-cmake-modules
47 makeWrapper
48 ];
49
50 buildInputs = [
51 libpthreadstubs
52 libXdmcp
53 qtsvg
54 qtx11extras
55 ki18n
56 kdelibs4support
57 kio
58 kmediaplayer
59 kwidgetsaddons
60 phonon
61 cairo
62 ];
63
64 postInstall = ''
65 wrapProgram $out/bin/kmplayer --suffix PATH : ${mplayer}/bin
66 '';
67
68 meta = with lib; {
69 description = "MPlayer front-end for KDE";
70 license = with licenses; [
71 gpl2Plus
72 lgpl2Plus
73 fdl12Plus
74 ];
75 homepage = "https://kmplayer.kde.org/";
76 maintainers = with maintainers; [
77 sander
78 zraexy
79 ];
80 };
81}