machineconfig 6.51__py3-none-any.whl → 6.53__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 machineconfig might be problematic. Click here for more details.
- machineconfig/cluster/sessions_managers/utils/maker.py +3 -3
- machineconfig/jobs/installer/check_installations.py +0 -1
- machineconfig/jobs/installer/installer_data.json +17 -0
- machineconfig/scripts/python/croshell.py +4 -4
- machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
- machineconfig/scripts/python/fire_jobs.py +9 -7
- machineconfig/scripts/python/helpers_devops/cli_config.py +3 -2
- machineconfig/scripts/python/helpers_devops/cli_self.py +3 -3
- machineconfig/scripts/python/helpers_devops/cli_utils.py +43 -0
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +24 -20
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +1 -1
- machineconfig/scripts/python/helpers_repos/sync.py +5 -5
- machineconfig/scripts/python/nw/mount_nfs +1 -1
- machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
- machineconfig/setup_linux/web_shortcuts/interactive.sh +1 -1
- machineconfig/setup_mac/__init__.py +17 -0
- machineconfig/setup_mac/apps.sh +73 -0
- machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
- machineconfig/setup_mac/uv.sh +36 -0
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +1 -1
- machineconfig/utils/code.py +46 -84
- machineconfig/utils/installer.py +8 -3
- machineconfig/utils/meta.py +5 -251
- machineconfig/utils/scheduling.py +0 -1
- machineconfig/utils/ssh.py +46 -45
- {machineconfig-6.51.dist-info → machineconfig-6.53.dist-info}/METADATA +1 -1
- {machineconfig-6.51.dist-info → machineconfig-6.53.dist-info}/RECORD +30 -26
- {machineconfig-6.51.dist-info → machineconfig-6.53.dist-info}/WHEEL +0 -0
- {machineconfig-6.51.dist-info → machineconfig-6.53.dist-info}/entry_points.txt +0 -0
- {machineconfig-6.51.dist-info → machineconfig-6.53.dist-info}/top_level.txt +0 -0
machineconfig/utils/ssh.py
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
from typing import Callable, Optional, Any, Union
|
|
2
2
|
import os
|
|
3
3
|
from pathlib import Path
|
|
4
|
+
import platform
|
|
4
5
|
import rich.console
|
|
5
6
|
from machineconfig.utils.terminal import Response, MACHINE
|
|
6
7
|
from machineconfig.utils.accessories import pprint
|
|
7
8
|
|
|
8
|
-
UV_RUN_CMD = "$HOME/.local/bin/uv run"
|
|
9
|
-
MACHINECONFIG_VERSION = "machineconfig>=6.
|
|
9
|
+
UV_RUN_CMD = "$HOME/.local/bin/uv run" if platform.system() != "Windows" else """& "$env:USERPROFILE/.local/bin/uv" run"""
|
|
10
|
+
MACHINECONFIG_VERSION = "machineconfig>=6.52"
|
|
10
11
|
DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
|
|
11
12
|
|
|
12
13
|
|
|
@@ -176,7 +177,6 @@ class SSH:
|
|
|
176
177
|
res.output.returncode = os.system(command)
|
|
177
178
|
return res
|
|
178
179
|
|
|
179
|
-
|
|
180
180
|
def run_shell(self, command: str, verbose_output: bool, description: str, strict_stderr: bool, strict_return_code: bool) -> Response:
|
|
181
181
|
raw = self.ssh.exec_command(command)
|
|
182
182
|
res = Response(stdin=raw[0], stdout=raw[1], stderr=raw[2], cmd=command, desc=description) # type: ignore
|
|
@@ -186,31 +186,30 @@ class SSH:
|
|
|
186
186
|
res.capture().print_if_unsuccessful(desc=description, strict_err=strict_stderr, strict_returncode=strict_return_code, assert_success=False)
|
|
187
187
|
self.terminal_responses.append(res)
|
|
188
188
|
return res
|
|
189
|
-
def run_py(self, python_code: str,
|
|
189
|
+
def run_py(self, python_code: str, uv_with: Optional[list[str]], uv_project_dir: Optional[str],
|
|
190
190
|
description: str, verbose_output: bool, strict_stderr: bool, strict_return_code: bool) -> Response:
|
|
191
191
|
from machineconfig.utils.accessories import randstr
|
|
192
192
|
cmd_path = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/runpy_{randstr()}.py")
|
|
193
193
|
cmd_path.parent.mkdir(parents=True, exist_ok=True)
|
|
194
194
|
cmd_path.write_text(python_code, encoding="utf-8")
|
|
195
195
|
self.copy_from_here(source_path=cmd_path, target_path=None, compress_with_zip=False, recursive=False, overwrite_existing=False)
|
|
196
|
-
if len(
|
|
197
|
-
with_clause = " --with " + '"'
|
|
196
|
+
if uv_with is not None and len(uv_with) > 0:
|
|
197
|
+
with_clause = " --with " + '"' + ",".join(uv_with) + '"'
|
|
198
198
|
else:
|
|
199
199
|
with_clause = ""
|
|
200
|
+
if uv_project_dir is not None:
|
|
201
|
+
with_clause += f" --project {uv_project_dir}"
|
|
202
|
+
else:
|
|
203
|
+
with_clause += ""
|
|
200
204
|
uv_cmd = f"""{UV_RUN_CMD} {with_clause} python {cmd_path.relative_to(Path.home())}"""
|
|
201
|
-
if venv_path is not None:
|
|
202
|
-
if self.get_remote_machine() == "Windows":
|
|
203
|
-
venv_export = f"$env:VIRTUAL_ENV='{venv_path}';"
|
|
204
|
-
uv_cmd = venv_export + uv_cmd
|
|
205
|
-
else:
|
|
206
|
-
venv_export = f"VIRTUAL_ENV={venv_path}"
|
|
207
|
-
uv_cmd = venv_export + " " + uv_cmd
|
|
208
205
|
return self.run_shell(command=uv_cmd, verbose_output=verbose_output, description=description or f"run_py on {self.get_remote_repr(add_machine=False)}", strict_stderr=strict_stderr, strict_return_code=strict_return_code)
|
|
209
206
|
|
|
210
|
-
def run_py_func(self, func: Callable[..., Any],
|
|
211
|
-
from machineconfig.utils.meta import
|
|
212
|
-
command =
|
|
213
|
-
return self.run_py(python_code=command,
|
|
207
|
+
def run_py_func(self, func: Callable[..., Any], uv_with: Optional[list[str]], uv_project_dir: Optional[str]) -> Response:
|
|
208
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
209
|
+
command = lambda_to_defstring(lmb=lambda: func, in_global=True)
|
|
210
|
+
return self.run_py(python_code=command, uv_with=uv_with, uv_project_dir=uv_project_dir,
|
|
211
|
+
description=f"run_py_func {func.__name__} on {self.get_remote_repr(add_machine=False)}",
|
|
212
|
+
verbose_output=True, strict_stderr=True, strict_return_code=True)
|
|
214
213
|
|
|
215
214
|
def _simple_sftp_get(self, remote_path: str, local_path: Path) -> None:
|
|
216
215
|
"""Simple SFTP get without any recursion or path expansion - for internal use only."""
|
|
@@ -238,11 +237,14 @@ class SSH:
|
|
|
238
237
|
json_result_path.write_text(json.dumps(result_path_posix, indent=2), encoding="utf-8")
|
|
239
238
|
print(json_result_path.as_posix())
|
|
240
239
|
return result_path_posix
|
|
241
|
-
from machineconfig.utils.meta import
|
|
240
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
242
241
|
from machineconfig.utils.accessories import randstr
|
|
243
242
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
244
|
-
command = function_to_script(func=create_target_dir, call_with_kwargs={"target_dir_path": Path(target_path).as_posix(), "overwrite": overwrite_existing, "json_output_path": remote_json_output})
|
|
245
|
-
|
|
243
|
+
# command = function_to_script(func=create_target_dir, call_with_kwargs={"target_dir_path": Path(target_path).as_posix(), "overwrite": overwrite_existing, "json_output_path": remote_json_output})
|
|
244
|
+
command = lambda_to_defstring(lmb=lambda: create_target_dir(target_dir_path=str(target_path), overwrite=overwrite_existing, json_output_path=remote_json_output), in_global=True)
|
|
245
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None,
|
|
246
|
+
description=f"Creating target directory `{Path(target_path).parent.as_posix()}` @ {self.get_remote_repr(add_machine=False)}",
|
|
247
|
+
verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
246
248
|
remote_json_path = response.op.strip()
|
|
247
249
|
if not remote_json_path:
|
|
248
250
|
raise RuntimeError(f"Failed to create target directory {target_path} - no response from remote")
|
|
@@ -323,11 +325,10 @@ class SSH:
|
|
|
323
325
|
with zipfile.ZipFile(archive_path, "r") as archive_handle:
|
|
324
326
|
archive_handle.extractall(extraction_directory)
|
|
325
327
|
archive_path.unlink()
|
|
326
|
-
from machineconfig.utils.meta import
|
|
327
|
-
command =
|
|
328
|
-
_resp = self.run_py(python_code=command,
|
|
328
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
329
|
+
command = lambda_to_defstring(lmb=lambda: unzip_archive(zip_file_path=remotepath.as_posix(), overwrite_flag=overwrite_existing), in_global=True)
|
|
330
|
+
_resp = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description=f"UNZIPPING {remotepath.as_posix()}", verbose_output=False, strict_stderr=True, strict_return_code=True)
|
|
329
331
|
source_obj.unlink()
|
|
330
|
-
print("\n")
|
|
331
332
|
return source_obj
|
|
332
333
|
|
|
333
334
|
def _check_remote_is_dir(self, source_path: Union[str, Path]) -> bool:
|
|
@@ -342,11 +343,11 @@ class SSH:
|
|
|
342
343
|
print(json_result_path.as_posix())
|
|
343
344
|
return is_directory
|
|
344
345
|
|
|
345
|
-
from machineconfig.utils.meta import
|
|
346
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
346
347
|
from machineconfig.utils.accessories import randstr
|
|
347
348
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
348
|
-
command =
|
|
349
|
-
response = self.run_py(python_code=command,
|
|
349
|
+
command = lambda_to_defstring(lmb=lambda: check_is_dir(path_to_check=str(source_path), json_output_path=remote_json_output), in_global=True)
|
|
350
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description=f"Check if source `{source_path}` is a dir", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
350
351
|
remote_json_path = response.op.strip()
|
|
351
352
|
if not remote_json_path:
|
|
352
353
|
raise RuntimeError(f"Failed to check if {source_path} is directory - no response from remote")
|
|
@@ -376,11 +377,11 @@ class SSH:
|
|
|
376
377
|
print(json_result_path.as_posix())
|
|
377
378
|
return expanded_path_posix
|
|
378
379
|
|
|
379
|
-
from machineconfig.utils.meta import
|
|
380
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
380
381
|
from machineconfig.utils.accessories import randstr
|
|
381
382
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
382
|
-
command =
|
|
383
|
-
response = self.run_py(python_code=command,
|
|
383
|
+
command = lambda_to_defstring(lmb=lambda: expand_source(path_to_expand=str(source_path), json_output_path=remote_json_output), in_global=True)
|
|
384
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Resolving source path by expanding user", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
384
385
|
remote_json_path = response.op.strip()
|
|
385
386
|
if not remote_json_path:
|
|
386
387
|
raise RuntimeError(f"Could not resolve source path {source_path} - no response from remote")
|
|
@@ -425,11 +426,11 @@ class SSH:
|
|
|
425
426
|
print(json_result_path.as_posix())
|
|
426
427
|
return file_paths_list
|
|
427
428
|
|
|
428
|
-
from machineconfig.utils.meta import
|
|
429
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
429
430
|
from machineconfig.utils.accessories import randstr
|
|
430
431
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
431
|
-
command =
|
|
432
|
-
response = self.run_py(python_code=command,
|
|
432
|
+
command = lambda_to_defstring(lmb=lambda: search_files(directory_path=expanded_source, json_output_path=remote_json_output), in_global=True)
|
|
433
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Searching for files in source", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
433
434
|
remote_json_path = response.op.strip()
|
|
434
435
|
if not remote_json_path:
|
|
435
436
|
raise RuntimeError(f"Could not resolve source path {source} - no response from remote")
|
|
@@ -463,11 +464,11 @@ class SSH:
|
|
|
463
464
|
except ValueError:
|
|
464
465
|
raise RuntimeError(f"Source path must be relative to home directory: {source_absolute_path}")
|
|
465
466
|
|
|
466
|
-
from machineconfig.utils.meta import
|
|
467
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
467
468
|
from machineconfig.utils.accessories import randstr
|
|
468
469
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
469
|
-
command =
|
|
470
|
-
response = self.run_py(python_code=command,
|
|
470
|
+
command = lambda_to_defstring(lmb=lambda: collapse_to_home_dir(absolute_path=expanded_source, json_output_path=remote_json_output), in_global=True)
|
|
471
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Finding default target via relative source path", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
471
472
|
remote_json_path_dir = response.op.strip()
|
|
472
473
|
if not remote_json_path_dir:
|
|
473
474
|
raise RuntimeError("Could not resolve target path - no response from remote")
|
|
@@ -515,11 +516,11 @@ class SSH:
|
|
|
515
516
|
print(json_result_path.as_posix())
|
|
516
517
|
return zip_file_path
|
|
517
518
|
|
|
518
|
-
from machineconfig.utils.meta import
|
|
519
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
519
520
|
from machineconfig.utils.accessories import randstr
|
|
520
521
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
521
|
-
command =
|
|
522
|
-
response = self.run_py(python_code=command,
|
|
522
|
+
command = lambda_to_defstring(lmb=lambda: zip_source(path_to_zip=expanded_source, json_output_path=remote_json_output), in_global=True)
|
|
523
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description=f"Zipping source file {source}", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
523
524
|
remote_json_path = response.op.strip()
|
|
524
525
|
if not remote_json_path:
|
|
525
526
|
raise RuntimeError(f"Could not zip {source} - no response from remote")
|
|
@@ -554,11 +555,11 @@ class SSH:
|
|
|
554
555
|
except ValueError:
|
|
555
556
|
raise RuntimeError(f"Source path must be relative to home directory: {source_absolute_path}")
|
|
556
557
|
|
|
557
|
-
from machineconfig.utils.meta import
|
|
558
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
558
559
|
from machineconfig.utils.accessories import randstr
|
|
559
560
|
remote_json_output = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/return_{randstr()}.json").as_posix()
|
|
560
|
-
command =
|
|
561
|
-
response = self.run_py(python_code=command,
|
|
561
|
+
command = lambda_to_defstring(lmb=lambda: collapse_to_home(absolute_path=expanded_source, json_output_path=remote_json_output), in_global=True)
|
|
562
|
+
response = self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Finding default target via relative source path", verbose_output=False, strict_stderr=False, strict_return_code=False)
|
|
562
563
|
remote_json_path = response.op.strip()
|
|
563
564
|
if not remote_json_path:
|
|
564
565
|
raise RuntimeError("Could not resolve target path - no response from remote")
|
|
@@ -612,9 +613,9 @@ class SSH:
|
|
|
612
613
|
else:
|
|
613
614
|
file_or_dir_path.unlink()
|
|
614
615
|
|
|
615
|
-
from machineconfig.utils.meta import
|
|
616
|
-
command =
|
|
617
|
-
self.run_py(python_code=command,
|
|
616
|
+
from machineconfig.utils.meta import lambda_to_defstring
|
|
617
|
+
command = lambda_to_defstring(lmb=lambda: delete_temp_zip(path_to_delete=expanded_source), in_global=True)
|
|
618
|
+
self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Cleaning temp zip files @ remote.", verbose_output=False, strict_stderr=True, strict_return_code=True)
|
|
618
619
|
|
|
619
620
|
print("\n")
|
|
620
621
|
return target_obj
|
|
@@ -25,7 +25,7 @@ machineconfig/cluster/sessions_managers/zellij_remote_manager.py,sha256=xzih0y8_
|
|
|
25
25
|
machineconfig/cluster/sessions_managers/helpers/enhanced_command_runner.py,sha256=3vcQVg-HHa_WTxBGPtKMAdoSqJVa2EO5KAtrY8a6I3c,5264
|
|
26
26
|
machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py,sha256=i5TRittC1IWTgMZNyG8AR5qq-3WrGp3xgIx2m5ktT7g,7526
|
|
27
27
|
machineconfig/cluster/sessions_managers/utils/load_balancer.py,sha256=Y4RQmhROY6o7JXSJXRrBTkoAuEmu1gvmvN_7JKPw5sc,3178
|
|
28
|
-
machineconfig/cluster/sessions_managers/utils/maker.py,sha256=
|
|
28
|
+
machineconfig/cluster/sessions_managers/utils/maker.py,sha256=_Af8kCmWfE_17tQFjb7jBpjAclCku7SME-5Y26j_wHQ,2123
|
|
29
29
|
machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py,sha256=OA50j16uUS9ZTjL38TLuR3jufIOln_EszMZpbWyejTo,6972
|
|
30
30
|
machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py,sha256=Mitm7mKiKl5lT0OiEUHAqVg2Q21RjsKO1-hpJTHJ5lM,15196
|
|
31
31
|
machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py,sha256=lApUy67_WhfaBXqt0meZSx_QvwiXjN0YLdyE3c7kP_s,6744
|
|
@@ -46,8 +46,8 @@ machineconfig/cluster/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm
|
|
|
46
46
|
machineconfig/cluster/templates/cli_trogon.py,sha256=PFWGy8SFYIhT9r3ZV4oIEYfImsQwzAHH_04stPuV5bY,647
|
|
47
47
|
machineconfig/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
48
48
|
machineconfig/jobs/installer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
49
|
-
machineconfig/jobs/installer/check_installations.py,sha256=
|
|
50
|
-
machineconfig/jobs/installer/installer_data.json,sha256=
|
|
49
|
+
machineconfig/jobs/installer/check_installations.py,sha256=hkHmmT7Bx3_QWRn2v8dCKOzAapFzqHRzbe-Q08GLnKE,10743
|
|
50
|
+
machineconfig/jobs/installer/installer_data.json,sha256=04KvR0X55GRYh8gyzOCtJItfVrNYpzF0GM9n08Kv89g,75876
|
|
51
51
|
machineconfig/jobs/installer/package_groups.py,sha256=i4z83F_rk7BVsrwFhz5Vn4SLF0IHxyQBFSxpAaZBl8M,5270
|
|
52
52
|
machineconfig/jobs/installer/custom/gh.py,sha256=gn7TUSrsLx7uqFqj1Z-iYglS0EYBSgtJ9jWHxaJIfXM,4119
|
|
53
53
|
machineconfig/jobs/installer/custom/hx.py,sha256=YQClQXqWtGvon8BLFGf1Fp20JPkHgZeEZ6ebmCJQQfI,5838
|
|
@@ -122,11 +122,11 @@ machineconfig/scripts/linux/other/switch_ip,sha256=NQfeKMBSbFY3eP6M-BadD-TQo5qMP
|
|
|
122
122
|
machineconfig/scripts/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
123
123
|
machineconfig/scripts/python/agents.py,sha256=gGeeWCI0AN_DyDJ3G5KR9qSsXv8zkUd5dBRRWqz-dQE,10722
|
|
124
124
|
machineconfig/scripts/python/cloud.py,sha256=yAD6ciKiEtv2CH3g2NScDK5cpCZQi7Vu8yyeehw_cU8,1263
|
|
125
|
-
machineconfig/scripts/python/croshell.py,sha256=
|
|
125
|
+
machineconfig/scripts/python/croshell.py,sha256=BCwiH_Wi_2_Y8fr-D2Cn9TpSTnzMPufXF7SF7Ri2fn8,8046
|
|
126
126
|
machineconfig/scripts/python/devops.py,sha256=LGra1YiLEQYjaRevNjJB51Bia81IgjrvUQkA6z8wq8I,2440
|
|
127
127
|
machineconfig/scripts/python/devops_navigator.py,sha256=5Cm384D4S8_GsvMzTwr0C16D0ktf8_5Mk5bEJncwDO8,237
|
|
128
128
|
machineconfig/scripts/python/entry.py,sha256=a0Zk_3RnIFTQ55zSQrvOOiKom_SaoxElPMmWQgGy4V0,2221
|
|
129
|
-
machineconfig/scripts/python/fire_jobs.py,sha256=
|
|
129
|
+
machineconfig/scripts/python/fire_jobs.py,sha256=My7sFn1R2vh21uIHGfNppgX99WTEitCFgJ1MSasBUOQ,13597
|
|
130
130
|
machineconfig/scripts/python/ftpx.py,sha256=vm4QNJA0z1Vu-85wFliGNoDHMZZ-Yy8zQACL6x7Wo6U,9760
|
|
131
131
|
machineconfig/scripts/python/interactive.py,sha256=zt3g6nGKR_Y5A57UnR4Y5-JpLzrpnCOSaqU1bnaikK0,11666
|
|
132
132
|
machineconfig/scripts/python/sessions.py,sha256=UERxO472EDtN7nKHEULbn6G3S5PJIpsDG9Gq3TlByqI,9823
|
|
@@ -162,7 +162,7 @@ machineconfig/scripts/python/ai/solutions/opencode/opencode.json,sha256=nahHKRw1
|
|
|
162
162
|
machineconfig/scripts/python/ai/solutions/opencode/opencode.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
163
163
|
machineconfig/scripts/python/env_manager/__init__.py,sha256=E4LAHbU1wo2dLjE36ntv8U7QNTe8TasujUAYK9SLvWk,6
|
|
164
164
|
machineconfig/scripts/python/env_manager/path_manager_backend.py,sha256=ZVGlGJALhg7zNABDdwXxL7MFbL2BXPebObipXSLGbic,1552
|
|
165
|
-
machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=
|
|
165
|
+
machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=SuaYgj8UFgFYLf1fAKCSLIJC7dDqsscCw3Epp3uyqlY,6932
|
|
166
166
|
machineconfig/scripts/python/helpers_cloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
167
167
|
machineconfig/scripts/python/helpers_cloud/cloud_copy.py,sha256=OV1w3ajFVFs6FJytjIPOntYB_aW2ywGohKi73V4Dm2Y,8691
|
|
168
168
|
machineconfig/scripts/python/helpers_cloud/cloud_helpers.py,sha256=GA-bxXouUmknk9fyQAsPT-Xl3RG9-yBed71a2tu9Pig,4914
|
|
@@ -178,15 +178,15 @@ machineconfig/scripts/python/helpers_croshell/start_slidev.py,sha256=HfJReOusTPh
|
|
|
178
178
|
machineconfig/scripts/python/helpers_croshell/viewer.py,sha256=heQNjB9fwn3xxbPgMofhv1Lp6Vtkl76YjjexWWBM0pM,2041
|
|
179
179
|
machineconfig/scripts/python/helpers_croshell/viewer_template.py,sha256=ve3Q1-iKhCLc0VJijKvAeOYp2xaFOeIOC_XW956GWCc,3944
|
|
180
180
|
machineconfig/scripts/python/helpers_devops/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
181
|
-
machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=
|
|
181
|
+
machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=kbIULtkfHecOzfUA3gbRyRKxdIOXjitnoO3BH1HleEg,5654
|
|
182
182
|
machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py,sha256=rjTys4FNf9_feP9flWM7Zvq17dxWmetSiGaHPxp25nk,2737
|
|
183
183
|
machineconfig/scripts/python/helpers_devops/cli_data.py,sha256=79Xvx7YnbueruEnl69hrDg2AhVxf_zCUdlVcKfeMGyQ,1774
|
|
184
184
|
machineconfig/scripts/python/helpers_devops/cli_nw.py,sha256=B5Xa9pV5MdC4vPo3EmKaHvNMlThsY3c5F92YPE5j3rI,4176
|
|
185
185
|
machineconfig/scripts/python/helpers_devops/cli_repos.py,sha256=Xwkv1adqHZvTfRSPWiqSK3PZ1XADyx3llw_YkbxaKyE,12505
|
|
186
|
-
machineconfig/scripts/python/helpers_devops/cli_self.py,sha256
|
|
186
|
+
machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=-IyJpuw8Wnttls8y2vcNNkxtI9jUveROMPT-eudOoC4,6171
|
|
187
187
|
machineconfig/scripts/python/helpers_devops/cli_share_server.py,sha256=q9pFJ6AxPuygMr3onMNOKEuuQHbVE_6Qoyo7xRT5FX0,4196
|
|
188
188
|
machineconfig/scripts/python/helpers_devops/cli_terminal.py,sha256=k_PzXaiGyE0vXr0Ii1XcJz2A7UvyPJrR31TRWt4RKRI,6019
|
|
189
|
-
machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=
|
|
189
|
+
machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=FcvC_795dKxZQM7hL4uRzmhysKi9YV-v9qu2Gb_Fun8,5622
|
|
190
190
|
machineconfig/scripts/python/helpers_devops/devops_backup_retrieve.py,sha256=Dn8luB6QJzxKiiFSC-NMqiYddWZoca3A8eOjMYZDzTc,5598
|
|
191
191
|
machineconfig/scripts/python/helpers_devops/devops_status.py,sha256=PJVPhfhXq8der6Xd-_fjZfnizfM-RGfJApkRGhGBmNo,20525
|
|
192
192
|
machineconfig/scripts/python/helpers_devops/devops_update_repos.py,sha256=kSln8_-Wn7Qu0NaKdt-QTN_bBVyTIAWHH8xVYKK-vCM,10133
|
|
@@ -222,14 +222,14 @@ machineconfig/scripts/python/helpers_navigator/main_app.py,sha256=R1vOBMUKaiFHOg
|
|
|
222
222
|
machineconfig/scripts/python/helpers_navigator/search_bar.py,sha256=kDi8Jhxap8wdm7YpDBtfhwcPnSqDPFrV2LqbcSBWMT4,414
|
|
223
223
|
machineconfig/scripts/python/helpers_repos/action.py,sha256=9AxWy8mB9HFeV5t11-qD_l-KA5jkUmm0pXVKT1L6-Qk,14894
|
|
224
224
|
machineconfig/scripts/python/helpers_repos/clone.py,sha256=UULEG5xJuXlPGU0nqXH6U45jA9DOFqLw8B4iPytCwOQ,5471
|
|
225
|
-
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=
|
|
225
|
+
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=vVJZjZW2rrNRyIwZJ8O2W4QR9aY2faCinK9eu5Ijuz4,10526
|
|
226
226
|
machineconfig/scripts/python/helpers_repos/count_lines.py,sha256=Q5c7b-DxvTlQmljoic7niTuiAVyFlwYvkVQ7uRJHiTo,16009
|
|
227
|
-
machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=
|
|
227
|
+
machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=epbXDwuXe_9jXaX3KA2JlG1sPXybdGq1NX4dRljHpF8,607
|
|
228
228
|
machineconfig/scripts/python/helpers_repos/entrypoint.py,sha256=WYEFGUJp9HWImlFjbs_hiFZrUqM_KEYm5VvSUjWd04I,2810
|
|
229
229
|
machineconfig/scripts/python/helpers_repos/grource.py,sha256=oJj1-gqlkV3Z_BrIOXRmtzoXcuBl0xTYfulJ5D0srOc,14656
|
|
230
230
|
machineconfig/scripts/python/helpers_repos/record.py,sha256=FQo0swuJZOp0I2XGK-t1OQU4zJHmQ2z9zTpDD30Tmg4,11001
|
|
231
231
|
machineconfig/scripts/python/helpers_repos/secure_repo.py,sha256=fW_GyHqWrpnf7nexHojfWHv4eLBa71IhVL_LSVMyGnE,1115
|
|
232
|
-
machineconfig/scripts/python/helpers_repos/sync.py,sha256=
|
|
232
|
+
machineconfig/scripts/python/helpers_repos/sync.py,sha256=P0P7Dog2uFDvwxcLP3YHPwm6AtvCm6QOz1BLqw53xOo,3259
|
|
233
233
|
machineconfig/scripts/python/helpers_repos/update.py,sha256=cUIMUMm-50HrY6fzxSMZnFplhToVjVPZMm1j_otTha4,11060
|
|
234
234
|
machineconfig/scripts/python/helpers_sessions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
235
235
|
machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py,sha256=zLssrCT3WRReiK0AFwctELN_o_svKypagUwJj0nT6i4,3122
|
|
@@ -238,7 +238,7 @@ machineconfig/scripts/python/nw/add_ssh_key.py,sha256=9JLmWu8pE7PAL5VuCFd19iVEdC
|
|
|
238
238
|
machineconfig/scripts/python/nw/devops_add_identity.py,sha256=aPjcHbTLhxYwWYcandyAHdwuO15ZBu3fB82u6bI0tMQ,3773
|
|
239
239
|
machineconfig/scripts/python/nw/devops_add_ssh_key.py,sha256=CkIl85hZLtG9k7yXLSzqi88YrilHV4hIUWHAPBwxWjw,8922
|
|
240
240
|
machineconfig/scripts/python/nw/mount_drive,sha256=zemKofv7hOmRN_V3qK0q580GkfWw3VdikyVVQyiu8j8,3514
|
|
241
|
-
machineconfig/scripts/python/nw/mount_nfs,sha256=
|
|
241
|
+
machineconfig/scripts/python/nw/mount_nfs,sha256=OCPbADc0AlkYOb0hcEWyHXOhjnnkA3uoP2uP5yqqwcQ,1855
|
|
242
242
|
machineconfig/scripts/python/nw/mount_nfs.py,sha256=lOMDY4RS7tx8gsCazVR5tNNwFbaRyO2PJlnwBCDQgCM,3573
|
|
243
243
|
machineconfig/scripts/python/nw/mount_nw_drive,sha256=BqjGBCbwe5ZAsZDO3L0zHhh_gJfZy1CYOcqXA4Y-WkQ,2262
|
|
244
244
|
machineconfig/scripts/python/nw/mount_nw_drive.py,sha256=iru6AtnTyvyuk6WxlK5R4lDkuliVpPV5_uBTVVhXtjQ,1550
|
|
@@ -255,7 +255,7 @@ machineconfig/scripts/windows/fzfrga.bat,sha256=rU_KBMO6ii2EZ0akMnmDk9vpuhKSUZqk
|
|
|
255
255
|
machineconfig/scripts/windows/mounts/mount_nfs.ps1,sha256=XrAdzpxE6a4OccSmWJ7YWHJTnsZK8uXnFE5j9GOPA20,2026
|
|
256
256
|
machineconfig/scripts/windows/mounts/mount_nw.ps1,sha256=puxcfZc3ZCJerm8pj8OZGVoTYkhzp-h7oV-MrksSqIE,454
|
|
257
257
|
machineconfig/scripts/windows/mounts/mount_smb.ps1,sha256=PzYWpIO9BpwXjdWlUQL9pnMRnOGNSkxfh4bHukJFme8,69
|
|
258
|
-
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=
|
|
258
|
+
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=eKKep-_E-eQLUEN8d3yPEjLaJF5yxE_L5l8_pBatGZU,322
|
|
259
259
|
machineconfig/scripts/windows/mounts/share_cloud.cmd,sha256=exD7JCdxw2LqVjw2MKCYHbVZlEqmelXtwnATng-dhJ4,1028
|
|
260
260
|
machineconfig/scripts/windows/mounts/share_smb.ps1,sha256=U7x8ULYSjbgzTtiHNSKQuTaZ_apilDvkGV5Xm5hXk5M,384
|
|
261
261
|
machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1,sha256=Wv-SLscdckV-1mG3p82VXKPY9zW3hgkRmcLUXIZ1daE,253
|
|
@@ -371,7 +371,11 @@ machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh,sha256=F5dbg0n9RHsKG
|
|
|
371
371
|
machineconfig/setup_linux/ssh/openssh_all.sh,sha256=3dg6HEUFbHQOzLfSAtzK_D_GB8rGCCp_aBnxNdnidVc,824
|
|
372
372
|
machineconfig/setup_linux/ssh/openssh_wsl.sh,sha256=1eeRGrloVB34K5z8yWVUMG5b9pV-WBfHgV9jqXiYgCQ,1398
|
|
373
373
|
machineconfig/setup_linux/web_shortcuts/android.sh,sha256=gzep6bBhK7FCBvGcXK0fdJCtkSfBOftt0aFyDZq_eMs,68
|
|
374
|
-
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256
|
|
374
|
+
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=4DjErSCQ4A2TUPYCkqFITqsJRfnViqZd0jWbVzx8JyQ,441
|
|
375
|
+
machineconfig/setup_mac/__init__.py,sha256=Q1waupi5vCBroLqc8Rtnw69_7jLnm2Cs7_zH_GSZgMs,616
|
|
376
|
+
machineconfig/setup_mac/apps.sh,sha256=R0N6fBwLCzwy4qAormyMerXXXrHazibSkY6NrNOpTQU,2772
|
|
377
|
+
machineconfig/setup_mac/uv.sh,sha256=CSN8oCBKS-LK1vJJqYOhAMcrouTf4Q_F3cpplc_ddMA,1157
|
|
378
|
+
machineconfig/setup_mac/ssh/openssh_setup.sh,sha256=TxfySnwFYg1UQLXmJbEQ2gfEWIT084F5JvNZI9ncpc0,3537
|
|
375
379
|
machineconfig/setup_windows/__init__.py,sha256=NnSVZkIBoxoMgkj-_KAqGonH3YziBIWXOKDEcmNAGTY,386
|
|
376
380
|
machineconfig/setup_windows/apps.ps1,sha256=dmZQZD4ZlNZo9jYkjIS3ag4qDAYZvaLysjmo9ELwBA4,11218
|
|
377
381
|
machineconfig/setup_windows/uv.ps1,sha256=ukk1Abh-q-RfpoEqI2XTE2dcQJmHk0VFF6WqkK3TW8Q,350
|
|
@@ -381,25 +385,25 @@ machineconfig/setup_windows/others/power_options.ps1,sha256=c7Hn94jBD5GWF29CxMhm
|
|
|
381
385
|
machineconfig/setup_windows/ssh/add-sshkey.ps1,sha256=qfPdqCpd9KP3VhH4ifsUm1Xvec7c0QVl4Wt8JIAm9HQ,1653
|
|
382
386
|
machineconfig/setup_windows/ssh/add_identity.ps1,sha256=b8ZXpmNUSw3IMYvqSY7ClpdWPG39FS7MefoWnRhWN2U,506
|
|
383
387
|
machineconfig/setup_windows/ssh/openssh-server.ps1,sha256=OMlYQdvuJQNxF5EILLPizB6BZAT3jAmDsv1WcVVxpFQ,2529
|
|
384
|
-
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=
|
|
388
|
+
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=AXszMmuVfiukqy_9E56G-0JzcDDitF0epTpqPqNG75A,547
|
|
385
389
|
machineconfig/setup_windows/wt_and_pwsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
386
390
|
machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py,sha256=ogxJnwpdcpH7N6dFJu95UCNoGYirZKQho_3X0F_hmXs,6791
|
|
387
391
|
machineconfig/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
388
392
|
machineconfig/utils/accessories.py,sha256=W_9dLzjwNTW5JQk_pe3B2ijQ1nA2-8Kdg2r7VBtzgQs,4340
|
|
389
|
-
machineconfig/utils/code.py,sha256=
|
|
390
|
-
machineconfig/utils/installer.py,sha256=
|
|
393
|
+
machineconfig/utils/code.py,sha256=h6g7cvmUG0AQ_hUiMPZZ3rDtN1_0N1aLhRHI2dJVze8,5774
|
|
394
|
+
machineconfig/utils/installer.py,sha256=UzI_DtTcKbgvkAkWkNLAPUtx-RVqITHCpvZyLiCpD9g,10377
|
|
391
395
|
machineconfig/utils/io.py,sha256=4dSieoqZO8Vvi4vW8lLoITDHBvmFp4dtl3kyeZHQ6Co,2528
|
|
392
396
|
machineconfig/utils/links.py,sha256=KM6vIn3hag9FYEzLSHP5MAM9tU_RStw2mCq2_OvmmZA,23672
|
|
393
|
-
machineconfig/utils/meta.py,sha256
|
|
397
|
+
machineconfig/utils/meta.py,sha256=-ki5JxPZoPhg5omM2YChUNExNx5mOoX-a2w0rx51NBE,7453
|
|
394
398
|
machineconfig/utils/notifications.py,sha256=tuXIudcip0tEioG-bm8BbLr3FMDve4f6BktlznBhKxM,9013
|
|
395
399
|
machineconfig/utils/options.py,sha256=vUO4Kej-vDOv64wHr2HNDyu6PATURpjd7xp6N8OOoJg,7083
|
|
396
400
|
machineconfig/utils/path_extended.py,sha256=WyJwoHnXdvSQQJ-yrxTX78FpqYmgVeKDYpNEB9UsRck,53223
|
|
397
401
|
machineconfig/utils/path_helper.py,sha256=0e3Xh3BAEv27oqcezNeVLHJllGmLEgLH4T1l90m-650,8014
|
|
398
402
|
machineconfig/utils/procs.py,sha256=YPA_vEYQGwPd_o_Lc6nOTBo5BrB1tSs8PJ42XiGpenM,10957
|
|
399
403
|
machineconfig/utils/scheduler.py,sha256=44CASABJg3epccxhAwv2CX7TVgZh6zVy3K4vqHKTuf4,14228
|
|
400
|
-
machineconfig/utils/scheduling.py,sha256=
|
|
404
|
+
machineconfig/utils/scheduling.py,sha256=6x5zLA7sY5gohrEtN6zGrXIqNFasMoyBfwLcOjrjiME,11109
|
|
401
405
|
machineconfig/utils/source_of_truth.py,sha256=ZAnCRltiM07ig--P6g9_6nEAvNFC4X4ERFTVcvpIYsE,764
|
|
402
|
-
machineconfig/utils/ssh.py,sha256=
|
|
406
|
+
machineconfig/utils/ssh.py,sha256=x3JZGbUVexn_OvsIIRGC7CafOOpu-M9H-LkK9nYyL_k,39315
|
|
403
407
|
machineconfig/utils/terminal.py,sha256=IlmOByfQG-vjhaFFxxzU5rWzP5_qUzmalRfuey3PAmc,11801
|
|
404
408
|
machineconfig/utils/tst.py,sha256=6u1GI49NdcpxH2BYGAusNfY5q9G_ytCGVzFM5b6HYpM,674
|
|
405
409
|
machineconfig/utils/upgrade_packages.py,sha256=mSFyKvB3JhHte_x1dtmEgrJZCAXgTUQoaJUSx1OXQ3Y,4145
|
|
@@ -428,8 +432,8 @@ machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoS
|
|
|
428
432
|
machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
|
|
429
433
|
machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
|
|
430
434
|
machineconfig/utils/ssh_utils/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
431
|
-
machineconfig-6.
|
|
432
|
-
machineconfig-6.
|
|
433
|
-
machineconfig-6.
|
|
434
|
-
machineconfig-6.
|
|
435
|
-
machineconfig-6.
|
|
435
|
+
machineconfig-6.53.dist-info/METADATA,sha256=JtRwcaUo25t5Th849tT7K2ZBOUMP-FM5FRRckm4auYE,2928
|
|
436
|
+
machineconfig-6.53.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
437
|
+
machineconfig-6.53.dist-info/entry_points.txt,sha256=M0jwN_brZdXWhmNVeXLvdKxfkv8WhhXFZYcuKBA9qnk,418
|
|
438
|
+
machineconfig-6.53.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
|
|
439
|
+
machineconfig-6.53.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|