1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 pkg-config,
6 libsForQt5,
7 dtkwidget,
8 qt5integration,
9 qt5platform-plugins,
10 dde-qt-dbus-factory,
11 poppler,
12 libchardet,
13 libspectre,
14 openjpeg,
15 djvulibre,
16 gtest,
17}:
18
19stdenv.mkDerivation rec {
20 pname = "deepin-reader";
21 version = "6.0.5";
22
23 src = fetchFromGitHub {
24 owner = "linuxdeepin";
25 repo = pname;
26 rev = version;
27 hash = "sha256-G5UZ8lBrUo5G3jMae70p/zi9kOVqHWMNCedOy45L1PA=";
28 };
29
30 patches = [ ./0001-build-tests-with-cpp-14.patch ];
31
32 # don't use vendored htmltopdf
33 postPatch = ''
34 substituteInPlace deepin_reader.pro \
35 --replace "SUBDIRS += htmltopdf" " "
36 substituteInPlace reader/document/Model.cpp \
37 --replace "/usr/lib/deepin-reader/htmltopdf" "htmltopdf"
38 '';
39
40 nativeBuildInputs = [
41 libsForQt5.qmake
42 pkg-config
43 libsForQt5.qttools
44 libsForQt5.wrapQtAppsHook
45 ];
46
47 buildInputs = [
48 dtkwidget
49 qt5integration
50 qt5platform-plugins
51 dde-qt-dbus-factory
52 libsForQt5.qtwebengine
53 libsForQt5.karchive
54 poppler
55 libchardet
56 libspectre
57 djvulibre
58 openjpeg
59 gtest
60 ];
61
62 qmakeFlags = [ "DEFINES+=VERSION=${version}" ];
63
64 meta = with lib; {
65 description = "Simple memo software with texts and voice recordings";
66 mainProgram = "deepin-reader";
67 homepage = "https://github.com/linuxdeepin/deepin-reader";
68 license = licenses.gpl3Plus;
69 platforms = platforms.linux;
70 teams = [ teams.deepin ];
71 };
72}