Corrected the filename for 'QGuiApplication.setDesktopFileName()' to not include the '.desktop' extension anymore (as directed by Qt).
10084
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1
|
#!/usr/bin/env python3 |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2
|
# -*- coding: utf-8 -*- |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4
|
# Copyright (c) 2023 Detlev Offenbach <detlev@die-offenbachs.de> |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5
|
# |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8
|
eric pip Packages Manager. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10
|
This is the main Python script to manage Python packages with 'pip' from |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11
|
outside of the IDE. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14
|
import os |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15
|
import sys |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17
|
from PyQt6.QtGui import QGuiApplication |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19
|
for arg in sys.argv[:]: |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20
|
if arg.startswith("--config="): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21
|
from eric7 import Globals |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23
|
configDir = arg.replace("--config=", "") |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24
|
Globals.setConfigDir(configDir) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25
|
sys.argv.remove(arg) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26
|
elif arg.startswith("--settings="): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27
|
from PyQt6.QtCore import QSettings |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29
|
settingsDir = os.path.expanduser(arg.replace("--settings=", "")) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30
|
if not os.path.isdir(settingsDir): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31
|
os.makedirs(settingsDir) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32
|
QSettings.setPath( |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33
|
QSettings.Format.IniFormat, QSettings.Scope.UserScope, settingsDir |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34
|
) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35
|
sys.argv.remove(arg) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37
|
from eric7.Globals import AppInfo |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38
|
from eric7.Toolbox import Startup |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41
|
def createMainWidget(argv): # noqa: U100 |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43
|
Function to create the main widget. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45
|
@param argv list of commandline parameters |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46
|
@type list of str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47
|
@return reference to the main widget |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48
|
@rtype QWidget |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50
|
from eric7.PipInterface.PipPackagesWindow import PipPackagesWindow |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52
|
return PipPackagesWindow(None) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55
|
def main(): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57
|
Main entry point into the application. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58
|
""" |
10238
9ea4634a697e
Corrected the filename for 'QGuiApplication.setDesktopFileName()' to not include the '.desktop' extension anymore (as directed by Qt).
Detlev Offenbach <detlev@die-offenbachs.de>
diff
changeset
|
59
|
QGuiApplication.setDesktopFileName("eric7_pip") |
10084
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61
|
options = [ |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62
|
( |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63
|
"--config=configDir", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64
|
"use the given directory as the one containing the config files", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65
|
), |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66
|
( |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67
|
"--settings=settingsDir", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68
|
"use the given directory to store the settings files", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69
|
), |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70
|
] |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71
|
appinfo = AppInfo.makeAppInfo( |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72
|
sys.argv, |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73
|
"eric Package Manager", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74
|
"", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75
|
"Utility to manage Python packages with 'pip'.", |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76
|
options, |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77
|
) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78
|
res = Startup.simpleAppStartup(sys.argv, appinfo, createMainWidget) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79
|
sys.exit(res) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82
|
if __name__ == "__main__": |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83
|
main() |