1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5
6 cmake,
7 pkg-config,
8
9 bluez,
10 libnotify,
11 opencv,
12 qt6,
13
14 # Running with TTS support causes the program to freeze for a few seconds every time at startup,
15 # so it is disabled by default
16 textToSpeechSupport ? false,
17}:
18
19stdenv.mkDerivation (finalAttrs: {
20 pname = "actiona";
21 version = "3.11.1";
22
23 src = fetchFromGitHub {
24 owner = "Jmgr";
25 repo = "actiona";
26 tag = "v${finalAttrs.version}";
27 hash = "sha256-sJlzrrpmo2CbzChCtiyxqDtjoN58BN4Ptjm4sH83zAw=";
28 fetchSubmodules = true;
29 };
30
31 patches = lib.optionals (!textToSpeechSupport) [
32 # Removes TTS support
33 ./disable-tts.patch
34 ];
35
36 strictDeps = true;
37
38 nativeBuildInputs = [
39 cmake
40 pkg-config
41 qt6.wrapQtAppsHook
42 ];
43
44 buildInputs = [
45 bluez
46 libnotify
47 opencv
48 qt6.qtbase
49 qt6.qtmultimedia
50 qt6.qttools
51 qt6.qt5compat
52 ]
53 ++ lib.optionals textToSpeechSupport [ qt6.qtspeech ];
54
55 meta = {
56 description = "Cross-platform automation tool";
57 homepage = "https://github.com/Jmgr/actiona";
58 license = lib.licenses.gpl3Only;
59 mainProgram = "actiona";
60 maintainers = with lib.maintainers; [ tomasajt ];
61 platforms = lib.platforms.linux;
62 };
63})