at master 76 lines 1.6 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitHub, 5 autoreconfHook, 6 bison, 7 flex, 8 pkg-config, 9 libftdi1, 10 libuuid, 11 cppunit, 12 protobuf, 13 zlib, 14 avahi, 15 libmicrohttpd, 16 perl, 17 python3, 18 fetchpatch, 19}: 20 21stdenv.mkDerivation rec { 22 pname = "ola"; 23 version = "0.10.9"; 24 25 src = fetchFromGitHub { 26 owner = "OpenLightingProject"; 27 repo = "ola"; 28 tag = version; 29 hash = "sha256-8w8ZT3D/+8Pxl9z2KTXeydVxE5xiPjxZevgmMFgrblU="; 30 }; 31 patches = [ 32 # Fix build error with GCC 14 due to stricter C++20 compliance (template-id in constructors) 33 (fetchpatch { 34 url = "https://github.com/OpenLightingProject/ola/commit/d9b9c78645c578adb7c07b692842e841c48310be.patch"; 35 hash = "sha256-BplSqQv8ztWMpiX/M3/3wvf6LsPTBglh48gHlUoM6rw="; 36 }) 37 ]; 38 nativeBuildInputs = [ 39 autoreconfHook 40 bison 41 flex 42 pkg-config 43 perl 44 ]; 45 buildInputs = [ 46 # required for ola-ftdidmx plugin (support for 'dumb' FTDI devices) 47 libftdi1 48 libuuid 49 cppunit 50 protobuf 51 zlib 52 avahi 53 libmicrohttpd 54 python3 55 ]; 56 propagatedBuildInputs = [ 57 (python3.pkgs.protobuf4.override { protobuf = protobuf; }) 58 python3.pkgs.numpy 59 ]; 60 61 configureFlags = [ "--enable-python-libs" ]; 62 63 enableParallelBuilding = true; 64 65 meta = with lib; { 66 broken = stdenv.hostPlatform.isDarwin; 67 description = "Framework for controlling entertainment lighting equipment"; 68 homepage = "https://www.openlighting.org/ola/"; 69 maintainers = [ ]; 70 license = with licenses; [ 71 lgpl21 72 gpl2Plus 73 ]; 74 platforms = platforms.all; 75 }; 76}