222 if Utilities.isWindowsPlatform(): |
222 if Utilities.isWindowsPlatform(): |
223 exe += ".exe" |
223 exe += ".exe" |
224 self.__createProgramEntry( |
224 self.__createProgramEntry( |
225 self.tr("conda Manager"), exe, '--version', 'conda', -1) |
225 self.tr("conda Manager"), exe, '--version', 'conda', -1) |
226 |
226 |
227 # 6. do the CORBA and Protobuf programs |
227 # 6. do the pip program(s) |
228 # 6a. omniORB |
228 virtualenvManager = e5App().getObject("VirtualEnvManager") |
|
229 for venvName in virtualenvManager.getVirtualenvNames(): |
|
230 interpreter = virtualenvManager.getVirtualenvInterpreter(venvName) |
|
231 self.__createProgramEntry( |
|
232 self.tr("PyPI Package Management"), interpreter, '--version', |
|
233 'pip', 1, exeModule=["-m", "pip"]) |
|
234 |
|
235 # 7. do the CORBA and Protobuf programs |
|
236 # 7a. omniORB |
229 exe = Preferences.getCorba("omniidl") |
237 exe = Preferences.getCorba("omniidl") |
230 if not exe: |
238 if not exe: |
231 exe = "omniidl" |
239 exe = "omniidl" |
232 if Utilities.isWindowsPlatform(): |
240 if Utilities.isWindowsPlatform(): |
233 exe += ".exe" |
241 exe += ".exe" |
234 self.__createProgramEntry( |
242 self.__createProgramEntry( |
235 self.tr("CORBA IDL Compiler"), exe, '-V', 'omniidl', -1) |
243 self.tr("CORBA IDL Compiler"), exe, '-V', 'omniidl', -1) |
236 # 6b. protobuf |
244 # 7b. protobuf |
237 exe = Preferences.getProtobuf("protoc") |
245 exe = Preferences.getProtobuf("protoc") |
238 if not exe: |
246 if not exe: |
239 exe = "protoc" |
247 exe = "protoc" |
240 if Utilities.isWindowsPlatform(): |
248 if Utilities.isWindowsPlatform(): |
241 exe += ".exe" |
249 exe += ".exe" |
242 self.__createProgramEntry( |
250 self.__createProgramEntry( |
243 self.tr("Protobuf Compiler"), exe, '--version', 'libprotoc', -1) |
251 self.tr("Protobuf Compiler"), exe, '--version', 'libprotoc', -1) |
244 # 6c. grpc |
252 # 7c. grpc |
245 exe = Preferences.getProtobuf("grpcPython") |
253 exe = Preferences.getProtobuf("grpcPython") |
246 if not exe: |
254 if not exe: |
247 exe = sys.executable |
255 exe = sys.executable |
248 self.__createProgramEntry( |
256 self.__createProgramEntry( |
249 self.tr("gRPC Compiler"), exe, '--version', 'libprotoc', -1, |
257 self.tr("gRPC Compiler"), exe, '--version', 'libprotoc', -1, |
250 exeModule=['-m', 'grpc_tools.protoc']) |
258 exeModule=['-m', 'grpc_tools.protoc']) |
251 |
259 |
252 # 7. do the spell checking entry |
260 # 8. do the spell checking entry |
253 try: |
261 try: |
254 import enchant |
262 import enchant |
255 try: |
263 try: |
256 text = os.path.dirname(enchant.__file__) |
264 text = os.path.dirname(enchant.__file__) |
257 except AttributeError: |
265 except AttributeError: |
281 text = "pygments" |
289 text = "pygments" |
282 version = "" |
290 version = "" |
283 self.__createEntry( |
291 self.__createEntry( |
284 self.tr("Source Highlighter - Pygments"), text, version) |
292 self.tr("Source Highlighter - Pygments"), text, version) |
285 |
293 |
286 # 9. do the plugin related programs |
294 # 10. do the plugin related programs |
287 pm = e5App().getObject("PluginManager") |
295 pm = e5App().getObject("PluginManager") |
288 for info in pm.getPluginExeDisplayData(): |
296 for info in pm.getPluginExeDisplayData(): |
289 if info["programEntry"]: |
297 if info["programEntry"]: |
290 if "exeModule" not in info: |
298 if "exeModule" not in info: |
291 info["exeModule"] = None |
299 info["exeModule"] = None |