is there any means of telling QGIS to use a different Python installation than the default, system-wide one? E.g. use some virtualenv Python /myvirtualenv/bin/python instead of /usr/bin/python?

Background: I'm developing a custom plugin that uses some modules which are only installed in a certain virtualenv, but not system-wide.

The virtualenv is allowed to access system-wide packages, so the qgis core libs should still be accessible when using that virtualenv.

The only solution that I see right now is to install the required modules in the system-wide Python. However, I'd like to keep them in the virtualenv only, if possible.

2 Answers 2


You can first load your virtual environment and then start QGIS in the same terminal where you loaded the virtual environment.

for example in linux:

source /myvirtualenv/bin/activate
  • 1
    this didn't work for me (QGIS 3.4.4, linux mint 18) Commented Jul 18, 2019 at 17:04

I cannot guarantee this will work but perhaps you could try setting a custom variable to load your python version:

System Environment

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.