1{
2 mkDerivation,
3 lib,
4 extra-cmake-modules,
5 kdoctools,
6 breeze-icons,
7 karchive,
8 kconfig,
9 kcrash,
10 kdbusaddons,
11 ki18n,
12 kiconthemes,
13 kitemmodels,
14 khtml,
15 kio,
16 kparts,
17 kpty,
18 kservice,
19 kwidgetsaddons,
20 libarchive,
21 libzip,
22 # Archive tools
23 p7zip,
24 lrzip,
25 unar,
26 # Unfree tools
27 unfreeEnableUnrar ? false,
28 unrar,
29}:
30
31let
32 extraTools = [
33 p7zip
34 lrzip
35 unar
36 ]
37 ++ lib.optional unfreeEnableUnrar unrar;
38in
39
40mkDerivation {
41 pname = "ark";
42
43 outputs = [
44 "out"
45 "dev"
46 ];
47
48 nativeBuildInputs = [
49 extra-cmake-modules
50 kdoctools
51 ];
52
53 buildInputs = [
54 libarchive
55 libzip
56 ]
57 ++ extraTools;
58
59 propagatedBuildInputs = [
60 breeze-icons
61 karchive
62 kconfig
63 kcrash
64 kdbusaddons
65 khtml
66 ki18n
67 kiconthemes
68 kio
69 kitemmodels
70 kparts
71 kpty
72 kservice
73 kwidgetsaddons
74 ];
75
76 qtWrapperArgs = [
77 "--prefix"
78 "PATH"
79 ":"
80 (lib.makeBinPath extraTools)
81 ];
82
83 meta = with lib; {
84 homepage = "https://apps.kde.org/ark/";
85 description = "Graphical file compression/decompression utility";
86 mainProgram = "ark";
87 license =
88 with licenses;
89 [
90 gpl2
91 lgpl3
92 ]
93 ++ optional unfreeEnableUnrar unfree;
94 maintainers = [ maintainers.ttuegel ];
95 };
96}