diff -r 2cef38eac83c -r 62397ab8df8c src/eric7/VirtualEnv/VirtualenvManager.py --- a/src/eric7/VirtualEnv/VirtualenvManager.py Fri Nov 11 15:58:13 2022 +0100 +++ b/src/eric7/VirtualEnv/VirtualenvManager.py Fri Nov 11 17:14:21 2022 +0100 @@ -37,6 +37,7 @@ """ DefaultKey = "<default>" + SystemKey = "<system>" virtualEnvironmentAdded = pyqtSignal() virtualEnvironmentRemoved = pyqtSignal() @@ -111,7 +112,9 @@ # only check for a non-embedded environment found = False for venvName in self.__virtualEnvironments: - if defaultPy == self.__virtualEnvironments[venvName]["interpreter"]: + if os.path.samefile( + defaultPy, self.__virtualEnvironments[venvName]["interpreter"] + ): found = True break if not found: @@ -183,9 +186,14 @@ """ py = interpreter.replace("w.exe", ".exe") for venvName in self.__virtualEnvironments: - if py == self.__virtualEnvironments[venvName]["interpreter"]: + if os.path.samefile( + py, self.__virtualEnvironments[venvName]["interpreter"] + ): return (venvName, copy.copy(self.__virtualEnvironments[venvName])) + if os.path.samefile(interpreter, sys.executable): + return (VirtualenvManager.SystemKey, {}) + return ("", {}) @pyqtSlot() @@ -605,6 +613,8 @@ return self.__virtualEnvironments[venvName]["interpreter"].replace( "w.exe", ".exe" ) + elif venvName == VirtualenvManager.SystemKey: + return sys.executable else: return ""