diff --git a/flake.nix b/flake.nix index 09c5c303b..7eb7349c6 100644 --- a/flake.nix +++ b/flake.nix @@ -70,7 +70,7 @@ default = villas; villas-python = pkgs.callPackage (nixDir + "/python.nix") { - src = ./python; + src = ./.; }; villas-minimal = pkgs.callPackage (nixDir + "/villas.nix") { diff --git a/packaging/nix/python.nix b/packaging/nix/python.nix index d1a4dac58..3d51314c8 100644 --- a/packaging/nix/python.nix +++ b/packaging/nix/python.nix @@ -2,16 +2,21 @@ # SPDX-License-Identifier: Apache-2.0 { src, + pkgs, python3Packages, villas-minimal, }: python3Packages.buildPythonPackage { name = "villas-python"; - src = src; + src = "${src}/python"; + format = "pyproject"; propagatedBuildInputs = with python3Packages; [ linuxfd requests - villas-minimal + protobuf + ]; + build-system = with python3Packages; [ + setuptools ]; nativeCheckInputs = with python3Packages; [ black @@ -20,4 +25,8 @@ python3Packages.buildPythonPackage { pytest types-requests ]; + + postPatch = '' + ${pkgs.protobuf}/bin/protoc --proto_path ${src}/lib/formats --python_out=villas/node/ ${src}/lib/formats/villas.proto + ''; }