nixpkgs/pkgs/development/python-modules/libarcus/default.nix
Felix Buehler 9812836f38 {cura,curaengine}: 4.10.0 -> 4.12.1,
{libnest2d,libarcus,libsavitar,pynest2d,uranium}: 4.10.0 -> 4.12.0
2021-12-14 16:22:07 +01:00

43 lines
1.3 KiB
Nix

{ lib, buildPythonPackage, python, fetchFromGitHub
, fetchpatch
, cmake, sip_4, protobuf, pythonOlder }:
buildPythonPackage rec {
pname = "libarcus";
version = "4.12.0";
format = "other";
src = fetchFromGitHub {
owner = "Ultimaker";
repo = "libArcus";
rev = version;
sha256 = "sha256-X33ptwYj9YkVWqUDPP+Ic+hoIb+rwsLdQXvHLA9z+3w=";
};
patches = [
# Fix build against protobuf 3.18+
# https://github.com/Ultimaker/libArcus/issues/121
(fetchpatch {
url = "https://raw.githubusercontent.com/coryan/vcpkg/f69b85aa403b04e7d442c90db3418d484e44024f/ports/arcus/0001-fix-protobuf-deprecated.patch";
sha256 = "0bqj7pxzpwsamknd6gadj419x6mwx8wnlfzg4zqn6cax3cmasjb2";
})
];
disabled = pythonOlder "3.4";
propagatedBuildInputs = [ sip_4 ];
nativeBuildInputs = [ cmake ];
buildInputs = [ protobuf ];
postPatch = ''
sed -i 's#''${Python3_SITEARCH}#${placeholder "out"}/${python.sitePackages}#' cmake/SIPMacros.cmake
'';
meta = with lib; {
description = "Communication library between internal components for Ultimaker software";
homepage = "https://github.com/Ultimaker/libArcus";
license = licenses.lgpl3Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ abbradar gebner ];
};
}