brainvisa / casa-distro

Unified development environment for BrainVISA projects.
2 stars 1 forks source link

Missing packages in Conda distribution #357

Open denisri opened 8 months ago

denisri commented 8 months ago

The Conda distribution is starting to work. However some optional packages are missing for a full-featured brainvisa distribution. This ticket will list missing optional packages and try to find solutions.

sapetnioc commented 7 months ago

With an up-to-date Conda environment, I have been able to install pytorch and torchvision without conflict. I check them but I did not test their use.

sapetnioc commented 7 months ago

We can install pip packages from conda packages using scripts that are called after installation. This is not the recommended way of doing things but it works for installation. It will make uninstallation difficult because we can only remove the pip package without knowing if another package needs it or if the user decided to manually install the package.

sapetnioc commented 7 months ago

For dracopy, there is a draco package in conda-forge. However, the package contains symlinks for the commands draco-decoder and draco_encoder but they are not installed. Therefore, for my installation only draco_decoder-1.5.7 and draco_encoder-1.5.7 are available in PATH. Despite this bug, there is more in the Conda package than in the pip one (e.g. CMake files). I will make a dependency on the conda package.

sapetnioc commented 7 months ago

For webp there is a conda package pywebp. I will make a dependency on the Conda package.

sapetnioc commented 7 months ago

For pygltflib, I will use the pip version.

sapetnioc commented 7 months ago

Pip dependencies are now supported and checked software had been included in casa-distro source and in test packages.

sapetnioc commented 7 months ago

I have been able to create a conda package for virtualgl. I added code to create a repository called brainvisa-forge on setup and to create a brainvisa-virtualgl package in that repository. This repository is added in the list of conda repositories. Therefore brainvisa-virtualgl can be used as a dependency. I added a brainvisa-forge specific list of dependencies that we can define for our packages.

sapetnioc commented 7 months ago

There is a package on conda-forge containing xvfb : xorg-x11-server-xvfb-cos7-x86_64 It is specific to an architecture (x86_64) and a low level libraries (cos7 for CentOS 7). These packages are not installed in the standard path. Therefore I modified bv_env in brainvisa-cmake to add this specific directory in the PATH in conda environment.