Pip install olympe

Hi,

Is there a reason that Olympe can’t be packaged and installed via pip?

It would greatly simplify the installation process and allow easier management of virtual environments.

Thanks for the great tool!

Ollie.

I think the reason is that it relies on the drone’s SDKs.

Hi,

TL;DR: It would be great but it’s not that easy.

Olympe relies on C dependencies (libarsdk, libarsdkctrl, libpomp, libpdraw, …) bundled with GroundSDK. Some of those C dependencies have system dependencies (libjson, libavcodec, …) that would probably also need to be packaged in a binary distribution if we want to follow the road of the manylinux2010 PEP and support a wide range of Linux distributions.

Another possibility would be to continue asking the user to install the required system dependencies (mainly the olympe postinst script job) and then provide a pip build backend (PEP-517, PEP-518) for Alchemy (the Parrot build system used by the GroundSDK). When the user “pip install olympe” it would download Olympe+GroundSDK source code and use this bundled backend to ./build.sh -p olympe-linux -A all final into a TBD directory somewhere inside the olympe python directory… Olympe would then need to dynamically add this directory to the LD_LIBRARY_PATH when imported…

Either solutions should work and I have a personal preference for the second option (the pip build backend for alchemy) because it put far less constraint on what we can/cannot do. I also think that it would be easier for us to maintain this solution in the long run.

Anyway, we are not currently working on it so any help on the subject would be greatly appreciated.

Thanks

Thanks a lot for the response. Appreciate it.

I agree that the second option would be good.

It’s certainly not an essential request, but thanks for helping me to understand the constraints.

Cheers