scripts/install-dependencies.py

Sun, 20 Apr 2025 15:41:59 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 20 Apr 2025 15:41:59 +0200
branch
eric7
changeset 11228
7d9e5c627e60
parent 11148
15e30f0c76a8
permissions
-rw-r--r--

Corrected some issues related to instantiating plugin manager objects or pip objects with a UI reference that does not contain the shutdown signal.

8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 #!/usr/bin/env python3
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2 # -*- coding: utf-8 -*-
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3
11090
f5f5f5803935 Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11053
diff changeset
4 # Copyright (c) 2022 - 2025 Detlev Offenbach <detlev@die-offenbachs.de>
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5 #
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 # This script installs all packages eric depends on.
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9 Installation script for the eric IDE dependencies.
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 """
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
12 import contextlib
9324
7f7f3e47b238 Set some security considerations to 'ok'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9314
diff changeset
13 import subprocess # secok
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 import sys
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
17 def exit(rcode=0):
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
18 """
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
19 Exit the install script.
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
20
10420
5ac83a87954d Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10341
diff changeset
21 @param rcode result code to report back
5ac83a87954d Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10341
diff changeset
22 @type int
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
23 """
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
24 print()
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
25
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
26 if sys.platform.startswith(("win", "cygwin")):
9328
49a0a9cb2505 Fixed some code style issues detected by the new checks.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9324
diff changeset
27 with contextlib.suppress(EOFError):
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
28 input("Press enter to continue...") # secok
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
29
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
30 sys.exit(rcode)
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
31
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
32
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
33 def pipInstall(packageName, proxy):
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 """
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 Install the given package via pip.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
36
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 @param packageName name of the package to be installed
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 @type str
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
39 @param proxy URL of a network proxy to be used
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
40 @type str
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 @return flag indicating a successful installation
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 @rtype bool
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 """
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44 ok = False
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
45 args = [
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
46 sys.executable,
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
47 "-m",
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
48 "pip",
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
49 "install",
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
50 "--prefer-binary",
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
51 "--upgrade",
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
52 ]
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
53 if proxy:
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
54 args.append(proxy)
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
55 args.append(packageName)
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
56 exitCode = subprocess.run(args).returncode # secok
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
57 ok = exitCode == 0
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
58
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 return ok
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 def main():
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 """
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 Function to install the eric dependencies.
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 """
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
66 requiredPackages = (
9209
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
67 "PyQt6>=6.2.0",
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
68 "PyQt6-Charts>=6.2.0",
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
69 "PyQt6-WebEngine>=6.2.0",
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
70 "PyQt6-QScintilla>=2.13.0",
9107
8e9525a780ae Syntax Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9016
diff changeset
71 "tomlkit",
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 "asttokens",
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 "EditorConfig",
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 "Pygments",
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 "parso",
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 "jedi",
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 "packaging",
9209
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
78 "cyclonedx-python-lib",
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
79 "cyclonedx-bom",
b99e7fd55fd3 Reorganized the project structure to use the source layout in order to support up-to-date build systems with "pyproject.toml".
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9107
diff changeset
80 "trove-classifiers",
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
81 "black>=22.6.0",
9632
dd907ee33b03 Removed use of 'send2trash'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9328
diff changeset
82 "isort>=5.10.0",
9694
90a7081e2837 Updated the various scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
83 "coverage>=6.5.0",
10679
4d3e0ce54322 General
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
84 "semver",
4d3e0ce54322 General
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
85 "pipdeptree",
4d3e0ce54322 General
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
86 "watchdog>=3.0.0",
10828
fc1310995b98 General
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10801
diff changeset
87 "psutil",
10998
6d7bddfde5fe Added the 'requests' package to the list of dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10868
diff changeset
88 "requests",
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89 )
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
90 optionalPackages = (
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
91 "docutils",
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
92 "Markdown",
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
93 "pyyaml",
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
94 "chardet",
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
95 "pyenchant",
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
96 "wheel",
10341
3fdffd9cc21d Syntax Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9694
diff changeset
97 "esprima",
10854
30c45bd597e6 Started implementing a dialog to manage FIDO2 security keys.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10828
diff changeset
98 "fido2",
11053
5f044e09aba5 MicroPython
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10998
diff changeset
99 "pyusb>=1.2.0",
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
100 )
10868
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
101 optionalWindowsPackages = (
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
102 "pywin32>=1.0",
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
103 "command-runner",
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
104 )
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
105
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
106 if "--proxy" in sys.argv:
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
107 proxyIndex = sys.argv.index("--proxy")
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
108 proxy = sys.argv[proxyIndex + 1]
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
109 del sys.argv[proxyIndex : proxyIndex + 2]
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
110 else:
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
111 proxy = None
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
112
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
113 packages = []
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
114 if len(sys.argv) == 2:
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
115 if sys.argv[1] == "--all":
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
116 packages = requiredPackages + optionalPackages
10868
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
117 if sys.platform.startswith(("win", "cygwin")):
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
118 packages += optionalWindowsPackages
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
119 elif sys.argv[1] == "--required":
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
120 packages = requiredPackages
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
121 elif sys.argv[1] == "--optional":
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
122 packages = optionalPackages
10868
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
123 if sys.platform.startswith(("win", "cygwin")):
ca5cd7faaf5e Changed the install scripts and the eric7_fido2.py[w] scripts because these scripts need admin rights on Windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10854
diff changeset
124 packages += optionalWindowsPackages
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
125
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
126 if not packages:
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
127 print("Usage:")
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
128 print(" install-dependencies [--proxy url] --all | --optional | --required")
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
129 print("where:")
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
130 print(" --all install all dependencies")
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
131 print(" --optional install all optional dependencies")
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
132 print(" --required install all required dependencies")
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
133
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
134 exit(42)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
135
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 failedPackages = []
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 for package in packages:
10801
5859861e7a1f Extended the install scripts to allow the configuration of a proxy URL for the pip command (see issue (see issue 563).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10679
diff changeset
138 ok = pipInstall(package, proxy)
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 if not ok:
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 failedPackages.append(package)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
141
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 print()
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 print("Installation Summary")
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 print("--------------------")
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 if failedPackages:
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 print("These packages could not be installed:")
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 for package in failedPackages:
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 print(" " + package)
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 else:
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 print("All packages installed successfully.")
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151
9314
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
152 exit(0)
7ba79b00ea96 install scripts
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
153
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
154
8988
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 if __name__ == "__main__":
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 main()
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157
ffa38e0415df Added a script to install all of eric's dependencies.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 #
11148
15e30f0c76a8 Adjusted the code to the modified issue codes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
159 # eflag: noqa = M-801

eric ide

mercurial