diff --git a/python/ide/src/com/jetbrains/python/configuration/PyConfigurableInterpreterList.java b/python/ide/src/com/jetbrains/python/configuration/PyConfigurableInterpreterList.java index f06d751d3596..ca91a0999e1a 100644 --- a/python/ide/src/com/jetbrains/python/configuration/PyConfigurableInterpreterList.java +++ b/python/ide/src/com/jetbrains/python/configuration/PyConfigurableInterpreterList.java @@ -27,6 +27,7 @@ import com.jetbrains.python.sdk.PySdkUtil; import com.jetbrains.python.sdk.PythonSdkAdditionalData; import com.jetbrains.python.sdk.PythonSdkType; import com.jetbrains.python.sdk.flavors.PythonSdkFlavor; +import com.jetbrains.python.sdk.flavors.VirtualEnvSdkFlavor; import javax.swing.*; import java.util.*; @@ -75,7 +76,6 @@ public class PyConfigurableInterpreterList { result.add(sdk); } } - Collection sdkHomes = PythonSdkType.getInstance().suggestHomePaths(); Collections.sort(result, new Comparator() { @Override @@ -113,6 +113,14 @@ public class PyConfigurableInterpreterList { return Comparing.compare(o1.getName(), o2.getName()); } }); + + Collection sdkHomes = new ArrayList(); + sdkHomes.addAll(VirtualEnvSdkFlavor.INSTANCE.suggestHomePaths()); + for (PythonSdkFlavor flavor : PythonSdkFlavor.getApplicableFlavors()) { + if (flavor instanceof VirtualEnvSdkFlavor) continue; + sdkHomes.addAll(flavor.suggestHomePaths()); + } + for (String sdkHome : SdkConfigurationUtil.filterExistingPaths(PythonSdkType.getInstance(), sdkHomes, getModel().getSdks())) { result.add(new PyDetectedSdk(sdkHome, PythonSdkType.getInstance())); }