Usually, in other distros, I use conda as my Python package manager.
But, pacman (with AUR) usually contains most Python packages that are on conda, and these packages are usually up to date. This gives me the option of using Pacman as my Python package manager as well.
But, there is the old adage of "Don't mess with your system Python". Does that hold true here, and might it cause any issues?
So this is how I see it,
- the advantage of using Pacman as my Python package manager is that it avoids the common issue of packages being linked to the wrong Python (usually when building something from source), because there is just one Python. And this also removes the need to have multiple versions of the same package installed on the system. For eg. there could be a Python package that is a dependency for something you installed via Pacman, but you also installed that package as a dependency for something in Conda.
- the advantage of using Conda is that the packages are more upto date and there are more packages (this might be a minor point, since Pacman + AUR contains most packages, but the one package that is not on Pacman might cause the problem). It also enables the use of virtual environments.
So should I be using Conda or Pacman as my Python package manager?
This entire post is motivated by the fact that cupy is outdated in AUR, and the fact that I have had to install some packages via pip, that were not available on Pacman + AUR.