mediawiki: 1.42.4 -> 1.43.0 (#369641)
[NixPkgs.git] / pkgs / by-name / do / domoticz / package.nix
blobac98513ac698da22e4cf97af50cd61af0898bc1c
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   makeWrapper,
6   cmake,
7   python3,
8   openssl,
9   pkg-config,
10   mosquitto,
11   lua5_3,
12   sqlite,
13   jsoncpp,
14   zlib,
15   boost,
16   curl,
17   git,
18   libusb-compat-0_1,
19   cereal,
22 stdenv.mkDerivation rec {
23   pname = "domoticz";
24   version = "2024.7";
26   src = fetchFromGitHub {
27     owner = "domoticz";
28     repo = pname;
29     rev = version;
30     hash = "sha256-D8U1kK3m1zT83YvZ42hGSU9PzBfS1VGr2mxUYbM2vNQ=";
31     fetchSubmodules = true;
32   };
34   buildInputs = [
35     openssl
36     python3
37     mosquitto
38     lua5_3
39     sqlite
40     jsoncpp
41     boost
42     zlib
43     curl
44     git
45     libusb-compat-0_1
46     cereal
47   ];
49   nativeBuildInputs = [
50     cmake
51     pkg-config
52     makeWrapper
53   ];
55   cmakeFlags = [
56     "-DUSE_BUILTIN_MQTT=false"
57     "-DUSE_BUILTIN_LUA=false"
58     "-DUSE_BUILTIN_SQLITE=false"
59     "-DUSE_BUILTIN_JSONCPP=false"
60     "-DUSE_BUILTIN_ZLIB=false"
61     "-DUSE_OPENSSL_STATIC=false"
62     "-DUSE_STATIC_BOOST=false"
63     "-DUSE_BUILTIN_MINIZIP=true"
64   ];
66   installPhase = ''
67     mkdir -p $out/share/domoticz
68     cp -r $src/www $out/share/domoticz/
69     cp -r $src/Config $out/share/domoticz
70     cp -r $src/scripts $out/share/domoticz
71     cp -r $src/plugins $out/share/domoticz
73     mkdir -p $out/bin
74     cp domoticz $out/bin
75     wrapProgram $out/bin/domoticz --set LD_LIBRARY_PATH ${python3}/lib;
76   '';
78   meta = with lib; {
79     description = "Home automation system";
80     longDescription = ''
81       Domoticz is a home automation system that lets you monitor and configure
82       various devices like: lights, switches, various sensors/meters like
83       temperature, rain, wind, UV, electra, gas, water and much more
84     '';
85     maintainers = with maintainers; [ edcragg ];
86     homepage = "https://www.domoticz.com/";
87     changelog = "https://github.com/domoticz/domoticz/blob/${version}/History.txt";
88     license = licenses.gpl3Plus;
89     platforms = platforms.all;
90     broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/staging-next/domoticz.x86_64-darwin
91     mainProgram = "domoticz";
92   };