atomicshop 2.9.17__py3-none-any.whl → 2.9.18__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of atomicshop might be problematic. Click here for more details.
- atomicshop/__init__.py +1 -1
- atomicshop/permissions.py +19 -0
- atomicshop/wrappers/dockerw/install_docker.py +2 -0
- atomicshop/wrappers/factw/install/pre_install_and_install_before_restart.py +7 -2
- {atomicshop-2.9.17.dist-info → atomicshop-2.9.18.dist-info}/METADATA +1 -1
- {atomicshop-2.9.17.dist-info → atomicshop-2.9.18.dist-info}/RECORD +9 -9
- {atomicshop-2.9.17.dist-info → atomicshop-2.9.18.dist-info}/LICENSE.txt +0 -0
- {atomicshop-2.9.17.dist-info → atomicshop-2.9.18.dist-info}/WHEEL +0 -0
- {atomicshop-2.9.17.dist-info → atomicshop-2.9.18.dist-info}/top_level.txt +0 -0
atomicshop/__init__.py
CHANGED
atomicshop/permissions.py
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import os
|
|
2
|
+
import sys
|
|
2
3
|
import stat
|
|
3
4
|
import ctypes
|
|
4
5
|
import contextlib
|
|
5
6
|
import subprocess
|
|
6
7
|
|
|
8
|
+
from .print_api import print_api
|
|
9
|
+
|
|
7
10
|
|
|
8
11
|
def is_admin() -> bool:
|
|
9
12
|
"""
|
|
@@ -25,6 +28,22 @@ def is_admin() -> bool:
|
|
|
25
28
|
return result
|
|
26
29
|
|
|
27
30
|
|
|
31
|
+
def request_sudo_on_ubuntu():
|
|
32
|
+
"""
|
|
33
|
+
The function tries to request sudo on Ubuntu for the user to enter the password.
|
|
34
|
+
|
|
35
|
+
:return:
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
try:
|
|
39
|
+
# Attempt to re-execute the script using sudo
|
|
40
|
+
subprocess.check_call(['sudo', 'python3'] + sys.argv)
|
|
41
|
+
except subprocess.CalledProcessError:
|
|
42
|
+
# Handle the error in case sudo command fails (e.g., wrong password)
|
|
43
|
+
print_api("Failed to gain sudo access. Please try again.", color='red')
|
|
44
|
+
sys.exit(1)
|
|
45
|
+
|
|
46
|
+
|
|
28
47
|
def set_executable_permission(file_path: str):
|
|
29
48
|
"""
|
|
30
49
|
Function sets the executable permission on a file.
|
|
@@ -71,6 +71,8 @@ def install_docker_ubuntu():
|
|
|
71
71
|
|
|
72
72
|
process.execute_script(script, shell=True)
|
|
73
73
|
|
|
74
|
+
subprocess.check_call(['sudo', 'usermod', '-aG', 'docker', '$USER'])
|
|
75
|
+
|
|
74
76
|
# Verify the installation.
|
|
75
77
|
result: list = process.execute_with_live_output('sudo docker run hello-world')
|
|
76
78
|
|
|
@@ -3,6 +3,7 @@ from pathlib import Path
|
|
|
3
3
|
import sys
|
|
4
4
|
|
|
5
5
|
from .... import permissions, filesystem
|
|
6
|
+
from ....print_api import print_api
|
|
6
7
|
from ... import githubw
|
|
7
8
|
from ...dockerw import install_docker
|
|
8
9
|
from .. import config_install
|
|
@@ -20,8 +21,9 @@ def install_before_restart(installation_directory: str, remove_existing_installa
|
|
|
20
21
|
"""
|
|
21
22
|
|
|
22
23
|
if not permissions.is_admin():
|
|
23
|
-
|
|
24
|
-
|
|
24
|
+
permissions.request_sudo_on_ubuntu()
|
|
25
|
+
print_api("This script requires root privileges...", color='red')
|
|
26
|
+
sys.exit(1)
|
|
25
27
|
|
|
26
28
|
docker_keyring_file_path: str = "/etc/apt/keyrings/docker.gpg"
|
|
27
29
|
nodesource_keyring_file_path: str = "/etc/apt/keyrings/nodesource.gpg"
|
|
@@ -56,3 +58,6 @@ def install_before_restart(installation_directory: str, remove_existing_installa
|
|
|
56
58
|
# Install docker. FACT installs the docker, but there can be a problem with permissions, so we need to add
|
|
57
59
|
# the user permissions to the docker group before restart.
|
|
58
60
|
install_docker.install_docker_ubuntu()
|
|
61
|
+
|
|
62
|
+
print_api("FACT_core installation before restart is finished.", color='green')
|
|
63
|
+
print_api("Please restart the computer to continue the installation.", color='red')
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
atomicshop/__init__.py,sha256=
|
|
1
|
+
atomicshop/__init__.py,sha256=M9CdUd43TxcAkGoqpVIcLZJ3BXtWLn6o_tWhlRD4vsI,123
|
|
2
2
|
atomicshop/_basics_temp.py,sha256=6cu2dd6r2dLrd1BRNcVDKTHlsHs_26Gpw8QS6v32lQ0,3699
|
|
3
3
|
atomicshop/_create_pdf_demo.py,sha256=Yi-PGZuMg0RKvQmLqVeLIZYadqEZwUm-4A9JxBl_vYA,3713
|
|
4
4
|
atomicshop/_patch_import.py,sha256=ENp55sKVJ0e6-4lBvZnpz9PQCt3Otbur7F6aXDlyje4,6334
|
|
@@ -22,7 +22,7 @@ atomicshop/inspect_wrapper.py,sha256=sGRVQhrJovNygHTydqJj0hxES-aB2Eg9KbIk3G31apw
|
|
|
22
22
|
atomicshop/ip_addresses.py,sha256=Hvi4TumEFoTEpKWaq5WNF-YzcRzt24IxmNgv-Mgax1s,1190
|
|
23
23
|
atomicshop/keyboard_press.py,sha256=1W5kRtOB75fulVx-uF2yarBhW0_IzdI1k73AnvXstk0,452
|
|
24
24
|
atomicshop/pbtkmultifile_argparse.py,sha256=aEk8nhvoQVu-xyfZosK3ma17CwIgOjzO1erXXdjwtS4,4574
|
|
25
|
-
atomicshop/permissions.py,sha256=
|
|
25
|
+
atomicshop/permissions.py,sha256=tala8vSLhcfZ9sTTrhji8m7c7WFa1XoVuE-s6QbBRDI,3096
|
|
26
26
|
atomicshop/print_api.py,sha256=DhbCQd0MWZZ5GYEk4oTu1opRFC-b31g1VWZgTGewG2Y,11568
|
|
27
27
|
atomicshop/process.py,sha256=SXaqG8pzNkHvppPhuhixEIXSaqbeDlTUFLaS5bYSp54,14176
|
|
28
28
|
atomicshop/process_name_cmd.py,sha256=TNAK6kQZm5JKWzEW6QLqVHEG98ZLNDQiSS4YwDk8V8c,3830
|
|
@@ -154,7 +154,7 @@ atomicshop/wrappers/certauthw/certauthw.py,sha256=4WvhjANI7Kzqrr_nKmtA8Kf7B6rute
|
|
|
154
154
|
atomicshop/wrappers/ctyping/process_winapi.py,sha256=QcXL-ETtlSSkoT8F7pYle97ubGWsjYp8cx8HxkVMgAc,2762
|
|
155
155
|
atomicshop/wrappers/dockerw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
156
156
|
atomicshop/wrappers/dockerw/dockerw.py,sha256=w8zSJr5C7cbvbuG09ORCpAe0BOcibqqL_Z2EKEBHYK4,6266
|
|
157
|
-
atomicshop/wrappers/dockerw/install_docker.py,sha256
|
|
157
|
+
atomicshop/wrappers/dockerw/install_docker.py,sha256=-lCb8mNVTQBlXaYqDCPlryLpCdHsoUdugoFZN-tCIFY,3068
|
|
158
158
|
atomicshop/wrappers/elasticsearchw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
159
159
|
atomicshop/wrappers/elasticsearchw/config_basic.py,sha256=XJMKKfDrUq9ZKxYnQ-xFJxSA51z31Nn4eB8_n_hryVk,800
|
|
160
160
|
atomicshop/wrappers/elasticsearchw/elasticsearchw.py,sha256=7TqFdEFznO8NlligJhEKk1vm641ALpCYdaRl1uoXdzM,9768
|
|
@@ -177,7 +177,7 @@ atomicshop/wrappers/factw/fact_extractor/docker_image.py,sha256=jJAoJNQ4aoATjn3x
|
|
|
177
177
|
atomicshop/wrappers/factw/fact_extractor/get_extractor.py,sha256=2mfOAftHIlCcGt1s7MWdq7DsDCuI6wX3MtvcEZ4SK-0,756
|
|
178
178
|
atomicshop/wrappers/factw/install/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
179
179
|
atomicshop/wrappers/factw/install/install_after_restart.py,sha256=roM1W2hkDynpEKda55xd7AsZxodsFj8i4wmFGt_HHzA,1558
|
|
180
|
-
atomicshop/wrappers/factw/install/pre_install_and_install_before_restart.py,sha256=
|
|
180
|
+
atomicshop/wrappers/factw/install/pre_install_and_install_before_restart.py,sha256=iLpPnnVyP7wOGgly_JymU5TRtsem_QSHNqZFTGf30eM,2913
|
|
181
181
|
atomicshop/wrappers/factw/postgresql/__init__.py,sha256=xMBn2d3Exo23IPP2F_9-SXmOlhFbwWDgS9KwozSTjA0,162
|
|
182
182
|
atomicshop/wrappers/factw/postgresql/analysis.py,sha256=2Rxzy2jyq3zEKIo53z8VkjuslKE_i5mq2ZpmJAvyd6U,716
|
|
183
183
|
atomicshop/wrappers/factw/postgresql/file_object.py,sha256=VRiCXnsd6yDbnsE-TEKYPC-gkAgFVkE6rygRrJLQShI,713
|
|
@@ -230,8 +230,8 @@ atomicshop/wrappers/socketw/socket_server_tester.py,sha256=AhpurHJmP2kgzHaUbq5ey
|
|
|
230
230
|
atomicshop/wrappers/socketw/socket_wrapper.py,sha256=aXBwlEIJhFT0-c4i8iNlFx2It9VpCEpsv--5Oqcpxao,11624
|
|
231
231
|
atomicshop/wrappers/socketw/ssl_base.py,sha256=k4V3gwkbq10MvOH4btU4onLX2GNOsSfUAdcHmL1rpVE,2274
|
|
232
232
|
atomicshop/wrappers/socketw/statistics_csv.py,sha256=t3dtDEfN47CfYVi0CW6Kc2QHTEeZVyYhc57IYYh5nmA,826
|
|
233
|
-
atomicshop-2.9.
|
|
234
|
-
atomicshop-2.9.
|
|
235
|
-
atomicshop-2.9.
|
|
236
|
-
atomicshop-2.9.
|
|
237
|
-
atomicshop-2.9.
|
|
233
|
+
atomicshop-2.9.18.dist-info/LICENSE.txt,sha256=lLU7EYycfYcK2NR_1gfnhnRC8b8ccOTElACYplgZN88,1094
|
|
234
|
+
atomicshop-2.9.18.dist-info/METADATA,sha256=0z6bpso-RwK8-9HXDDyuoR9nWCmH3kyBjqeljzn3vmI,10423
|
|
235
|
+
atomicshop-2.9.18.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
236
|
+
atomicshop-2.9.18.dist-info/top_level.txt,sha256=EgKJB-7xcrAPeqTRF2laD_Np2gNGYkJkd4OyXqpJphA,11
|
|
237
|
+
atomicshop-2.9.18.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|