machineconfig 6.83__py3-none-any.whl → 6.85__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.

Files changed (42) hide show
  1. machineconfig/cluster/sessions_managers/wt_local.py +16 -221
  2. machineconfig/cluster/sessions_managers/wt_local_manager.py +33 -174
  3. machineconfig/cluster/sessions_managers/wt_remote_manager.py +39 -197
  4. machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +52 -0
  5. machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +50 -0
  6. machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +76 -0
  7. machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
  8. machineconfig/scripts/linux/mcfgs +1 -1
  9. machineconfig/scripts/linux/term +39 -0
  10. machineconfig/scripts/python/ai/vscode_tasks.py +7 -2
  11. machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
  12. machineconfig/scripts/python/fire_jobs.py +30 -65
  13. machineconfig/scripts/python/helpers_devops/cli_config.py +1 -1
  14. machineconfig/scripts/python/helpers_devops/cli_nw.py +50 -0
  15. machineconfig/scripts/python/helpers_devops/cli_self.py +3 -3
  16. machineconfig/scripts/python/helpers_devops/cli_utils.py +1 -1
  17. machineconfig/scripts/python/helpers_fire/helpers4.py +15 -0
  18. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +1 -1
  19. machineconfig/scripts/python/nw/mount_nfs +1 -1
  20. machineconfig/scripts/python/nw/wifi_conn.py +1 -53
  21. machineconfig/scripts/python/terminal.py +110 -0
  22. machineconfig/scripts/python/utils.py +2 -0
  23. machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
  24. machineconfig/scripts/windows/term.ps1 +48 -0
  25. machineconfig/settings/shells/bash/init.sh +2 -0
  26. machineconfig/settings/shells/pwsh/init.ps1 +1 -0
  27. machineconfig/setup_linux/web_shortcuts/interactive.sh +2 -1
  28. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +2 -1
  29. machineconfig/utils/code.py +21 -14
  30. machineconfig/utils/installer.py +0 -1
  31. machineconfig/utils/options.py +12 -2
  32. machineconfig/utils/path_helper.py +1 -1
  33. machineconfig/utils/scheduling.py +0 -2
  34. machineconfig/utils/ssh.py +2 -2
  35. {machineconfig-6.83.dist-info → machineconfig-6.85.dist-info}/METADATA +1 -1
  36. {machineconfig-6.83.dist-info → machineconfig-6.85.dist-info}/RECORD +39 -35
  37. {machineconfig-6.83.dist-info → machineconfig-6.85.dist-info}/entry_points.txt +1 -0
  38. machineconfig/scripts/linux/other/share_smb +0 -1
  39. machineconfig/scripts/linux/warp-cli.sh +0 -122
  40. machineconfig/scripts/linux/z_ls +0 -104
  41. {machineconfig-6.83.dist-info → machineconfig-6.85.dist-info}/WHEEL +0 -0
  42. {machineconfig-6.83.dist-info → machineconfig-6.85.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,110 @@
1
+ import subprocess
2
+ # from machineconfig.utils.schemas.layouts.layout_types import LayoutConfig
3
+ import typer
4
+ from typing import Annotated
5
+
6
+
7
+ def strip_ansi_codes(text: str) -> str:
8
+ """Remove ANSI color codes from text."""
9
+ import re
10
+ return re.sub(r'\x1b\[[0-9;]*[a-zA-Z]', '', text)
11
+
12
+
13
+ def choose_zellij_session(
14
+ new_session: Annotated[bool, typer.Option("--new-session", "-n", help="Create a new Zellij session instead of attaching to an existing one.", show_default=True)] = False,
15
+ kill_all: Annotated[bool, typer.Option("--kill-all", "-k", help="Kill all existing Zellij sessions before creating a new one.", show_default=True)] = False):
16
+
17
+ if new_session:
18
+ cmd = """
19
+ zellij --layout st2
20
+ """
21
+ if kill_all:
22
+ cmd = f"""zellij kill-sessions
23
+ {cmd}"""
24
+ from machineconfig.utils.code import exit_then_run_shell_script
25
+ exit_then_run_shell_script(cmd, strict=True)
26
+ typer.Exit()
27
+ return
28
+ cmd = "zellij list-sessions"
29
+ sessions: list[str] = subprocess.check_output(cmd, shell=True).decode().strip().split("\n")
30
+ sessions.sort(key=lambda s: "EXITED" in s)
31
+ if "current" in sessions:
32
+ print("Already in a Zellij session, avoiding nesting and exiting.")
33
+ raise typer.Exit()
34
+ if len(sessions) == 0:
35
+ print("No Zellij sessions found, creating a new one.")
36
+ result = """zellij --layout st2"""
37
+ elif len(sessions) == 1:
38
+ session = sessions[0].split(" [Created")[0]
39
+ print(f"Only one Zellij session found: {session}, attaching to it.")
40
+ result = f"zellij attach {session}"
41
+ else:
42
+ from machineconfig.utils.options import choose_from_options
43
+ session = choose_from_options(msg="Choose a Zellij session to attach to:", multi=False, options=sessions, fzf=True)
44
+ session = session.split(" [Created")[0]
45
+ result = f"zellij attach {session}"
46
+ from machineconfig.utils.code import exit_then_run_shell_script
47
+ exit_then_run_shell_script(result, strict=True)
48
+
49
+
50
+
51
+ def get_session_tabs() -> list[tuple[str, str]]:
52
+ cmd = "zellij list-sessions"
53
+ sessions: list[str] = subprocess.check_output(cmd, shell=True).decode().strip().split("\n")
54
+ sessions = [strip_ansi_codes(s) for s in sessions]
55
+ active_sessions = [s for s in sessions if "EXITED" not in s]
56
+ result: list[tuple[str, str]] = []
57
+ for session_line in active_sessions:
58
+ session_name = session_line.split(" [Created")[0].strip()
59
+ # Query tab names for the session
60
+ tab_cmd = f"zellij --session {session_name} action query-tab-names"
61
+ try:
62
+ tabs: list[str] = subprocess.check_output(tab_cmd, shell=True).decode().strip().split("\n")
63
+ for tab in tabs:
64
+ if tab.strip():
65
+ result.append((session_name, tab.strip()))
66
+ except subprocess.CalledProcessError:
67
+ # Skip if query fails
68
+ continue
69
+ print(result)
70
+ return result
71
+
72
+ def start_wt(layout_name: Annotated[str, typer.Argument(help="Layout name to start.")]):
73
+ from pathlib import Path
74
+ layouts_file = Path.home().joinpath("dotfiles/machineconfig/layouts.json")
75
+ if not layouts_file.exists():
76
+ typer.echo(f"❌ Layouts file not found: {layouts_file}")
77
+ # available
78
+ raise typer.Exit(code=1)
79
+ import json
80
+ from machineconfig.utils.schemas.layouts.layout_types import LayoutsFile
81
+ layouts_data: LayoutsFile = json.loads(layouts_file.read_text(encoding="utf-8"))
82
+ chosen_layout = next((a_layout for a_layout in layouts_data["layouts"] if a_layout["layoutName"] == layout_name), None)
83
+ if not chosen_layout:
84
+ typer.echo(f"❌ Layout '{layout_name}' not found in layouts file.")
85
+ available_layouts = [a_layout["layoutName"] for a_layout in layouts_data["layouts"]]
86
+ typer.echo(f"Available layouts: {', '.join(available_layouts)}")
87
+ raise typer.Exit(code=1)
88
+ from machineconfig.cluster.sessions_managers.wt_local import run_wt_layout
89
+ run_wt_layout(layout_config=chosen_layout)
90
+
91
+ # cmd = f'powershell -ExecutionPolicy Bypass -File "./{layout_name}_layout.ps1"'
92
+ # from machineconfig.utils.code import exit_then_run_shell_script
93
+ # exit_then_run_shell_script(cmd, strict=True)
94
+
95
+
96
+ def main():
97
+ app = typer.Typer(help="🖥️ Terminal utilities", no_args_is_help=True, add_help_option=False)
98
+ app.command(name="attach-to-zellij", no_args_is_help=False, help="[z] Choose a Zellij session to attach to")(choose_zellij_session)
99
+ app.command(name="z", hidden=True, no_args_is_help=False, help="[z] Choose a Zellij session to attach to")(choose_zellij_session)
100
+
101
+ app.command(name="start-wt", no_args_is_help=True, help="[w] Start a Windows Terminal layout by name.")(start_wt)
102
+ app.command(name="w", hidden=True, no_args_is_help=True, help="[w] Start a Windows Terminal layout by name.")(start_wt)
103
+
104
+ app.command(name="get-session-tabs", no_args_is_help=False, help="[zt] Get all Zellij session tabs.")(get_session_tabs)
105
+ app.command(name="zt", hidden=True, no_args_is_help=False, help="[zt] Get all Zellij session tabs.")(get_session_tabs)
106
+ app()
107
+
108
+
109
+ if __name__ == "__main__":
110
+ main()
@@ -41,6 +41,7 @@ uv add nbformat ipdb ipykernel ipython pylint pyright mypy pyrefly ty pytest
41
41
 
42
42
 
43
43
 
44
+
44
45
  def get_app() -> typer.Typer:
45
46
  app = typer.Typer(help="🛠️ utilities operations", no_args_is_help=True, add_help_option=False, add_completion=False)
46
47
  app.command(name="kill-process", no_args_is_help=False, help="[k] Choose a process to kill")(kill_process)
@@ -56,6 +57,7 @@ def get_app() -> typer.Typer:
56
57
  app.command(name="pm", no_args_is_help=True, hidden=True)(merge_pdfs)
57
58
  app.command(name="pdf-compress", no_args_is_help=True, help="[pc] Compress a PDF file.")(compress_pdf)
58
59
  app.command(name="pc", no_args_is_help=True, hidden=True)(compress_pdf)
60
+
59
61
  return app
60
62
 
61
63
  # def func():
@@ -7,7 +7,7 @@ $user = ''
7
7
  $sharePath = ''
8
8
  $driveLetter = ''
9
9
 
10
- uv run --python 3.14 --with "machineconfig>=6.83" python -m machineconfig.scripts.python.mount_ssh
10
+ uv run --python 3.14 --with "machineconfig>=6.85" python -m machineconfig.scripts.python.mount_ssh
11
11
 
12
12
  net use T: \\sshfs.kr\$user@$host.local
13
13
  # this worked: net use T: \\sshfs\alex@alex-p51s-5.local
@@ -0,0 +1,48 @@
1
+ # Equivalent PowerShell script for term.ps1
2
+
3
+ Set-StrictMode -Version Latest
4
+ $ErrorActionPreference = 'Stop'
5
+
6
+ # Generate random name using timestamp and SHA256 hash
7
+ $timestampNs = [DateTimeOffset]::Now.ToUnixTimeMilliseconds() * 1000000
8
+ $hashInput = [System.Text.Encoding]::UTF8.GetBytes($timestampNs.ToString())
9
+ $sha256 = [System.Security.Cryptography.SHA256]::Create()
10
+ $hashBytes = $sha256.ComputeHash($hashInput)
11
+ $hashString = -join ($hashBytes | ForEach-Object { $_.ToString('x2') })
12
+ $randomName = $hashString.Substring(0, 16)
13
+
14
+ $opDir = "$env:USERPROFILE\tmp_results\tmp_scripts\machineconfig"
15
+ $opProgramPath = "$opDir\$randomName.ps1"
16
+ $global:OP_PROGRAM_PATH = $opProgramPath
17
+
18
+ # ANSI color/style codes (using Write-Host colors)
19
+ $bold = [char]27 + '[1m'
20
+ $reset = [char]27 + '[0m'
21
+ $green = [char]27 + '[32m'
22
+ $yellow = [char]27 + '[33m'
23
+ $blue = [char]27 + '[34m'
24
+ $red = [char]27 + '[31m'
25
+
26
+ $timestamp = Get-Date -Format 'u'
27
+
28
+ Write-Host "${bold}${blue}🛠️ terminal — running term${reset}"
29
+ Write-Host "${blue}Timestamp:${reset} ${timestamp}"
30
+ Write-Host "${blue}Op program path:${reset} ${opProgramPath}"
31
+
32
+ terminal $args
33
+
34
+ if (Test-Path $opProgramPath) {
35
+ Write-Host "${green}✅ Found op program:${reset} ${opProgramPath}"
36
+ # Assuming bat is available; otherwise, use Get-Content
37
+ & bat --style=plain --paging=never $opProgramPath
38
+ Write-Host "${green}▶ Running...${reset}"
39
+ . $opProgramPath
40
+ $status = $LASTEXITCODE
41
+ if ($status -eq 0) {
42
+ Write-Host "${green}✅ Completed successfully (exit ${status})${reset}"
43
+ } else {
44
+ Write-Host "${yellow}⚠️ Program exited with status ${status}${reset}"
45
+ }
46
+ } else {
47
+ Write-Host "${yellow}⚠️ No op program found at: ${opProgramPath}${reset}"
48
+ }
@@ -53,6 +53,8 @@ alias ff=ftpx
53
53
  alias f=fire
54
54
  alias r=croshell
55
55
  alias u=utils
56
+ alias t=term
57
+
56
58
 
57
59
  # alias gcs='gh copilot suggest -t shell'
58
60
  # alias gcg='gh copilot suggest -t git'
@@ -39,6 +39,7 @@ function ff { ftpx @args }
39
39
  function f { fire @args }
40
40
  function rr { croshell @args }
41
41
  function u { utils @args }
42
+ function t { terminal @args }
42
43
 
43
44
  # try {
44
45
  # Set-Alias -Name gcs -Value {gh copilot suggest -t shell}
@@ -1,7 +1,7 @@
1
1
  #!/bin/bash
2
2
  . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
3
3
  mcfg() {
4
- "$HOME/.local/bin/uv" run --python 3.14 --with "machineconfig>=6.83" mcfg "$@"
4
+ "$HOME/.local/bin/uv" run --python 3.14 --with "machineconfig>=6.85" mcfg "$@"
5
5
  }
6
6
  alias d="mcfg devops"
7
7
  alias c="mcfg cloud"
@@ -11,4 +11,5 @@ alias ff="mcfg ftpx"
11
11
  alias f="mcfg fire"
12
12
  alias rr="mcfg croshell"
13
13
  alias u="mcfg utils"
14
+ alias t="mcfg terminal"
14
15
  echo "mcfg command is now defined in this shell session."
@@ -2,7 +2,7 @@
2
2
 
3
3
  iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/uv.ps1").Content
4
4
  function mcfg {
5
- & "$HOME\.local\bin\uv.exe" run --python 3.14 --with "machineconfig>=6.83" mcfg $args
5
+ & "$HOME\.local\bin\uv.exe" run --python 3.14 --with "machineconfig>=6.85" mcfg $args
6
6
  }
7
7
  function d { mcfg devops @args }
8
8
  function c { mcfg cloud @args }
@@ -12,4 +12,5 @@ function ff { mcfg ftpx @args }
12
12
  function f { mcfg fire @args }
13
13
  function rr { mcfg croshell @args }
14
14
  function u { mcfg utils @args }
15
+ function t { mcfg terminal @args }
15
16
  Write-Host "mcfg command aliases are now defined in this PowerShell session."
@@ -7,18 +7,23 @@ from pathlib import Path
7
7
 
8
8
  def print_code(code: str, lexer: str, desc: str, subtitle: str = ""):
9
9
  import platform
10
- from rich.console import Console
11
- from rich.panel import Panel
12
- from rich.syntax import Syntax
13
- if lexer == "shell":
14
- if platform.system() == "Windows":
15
- lexer = "powershell"
16
- elif platform.system() in ["Linux", "Darwin"]:
17
- lexer = "sh"
18
- else:
19
- raise NotImplementedError(f"Platform {platform.system()} not supported for lexer {lexer}")
20
- console = Console()
21
- console.print(Panel(Syntax(code=code, lexer=lexer), title=f"📄 {desc}", subtitle=subtitle), style="bold red")
10
+ try:
11
+ from rich.console import Console
12
+ from rich.panel import Panel
13
+ from rich.syntax import Syntax
14
+ if lexer == "shell":
15
+ if platform.system() == "Windows":
16
+ lexer = "powershell"
17
+ elif platform.system() in ["Linux", "Darwin"]:
18
+ lexer = "sh"
19
+ else:
20
+ raise NotImplementedError(f"Platform {platform.system()} not supported for lexer {lexer}")
21
+ console = Console()
22
+ console.print(Panel(Syntax(code=code, lexer=lexer), title=f"📄 {desc}", subtitle=subtitle), style="bold red")
23
+ except ImportError:
24
+ print(f"--- {desc} ---")
25
+ print(code)
26
+ print(f"--- End of {desc} ---")
22
27
 
23
28
 
24
29
  def get_uv_command_executing_python_script(python_script: str, uv_with: Optional[list[str]], uv_project_dir: Optional[str]) -> tuple[str, Path]:
@@ -51,7 +56,7 @@ def run_python_script_in_marimo(py_script: str, uv_project_with: Optional[str]):
51
56
  if uv_project_with is not None:
52
57
  requirements = f"""--with "marimo" --project {uv_project_with} """
53
58
  else:
54
- requirements = f"""--with "marimo" """
59
+ requirements = """--with "marimo" """
55
60
  fire_line = f"""
56
61
  cd {tmp_dir}
57
62
  uv run {requirements} marimo convert {pyfile.name} -o marimo_nb.py
@@ -103,9 +108,11 @@ def run_shell_script(script: str, display_script: bool = True, clean_env: bool =
103
108
  return proc
104
109
 
105
110
 
106
- def exit_then_run_shell_script(script: str):
111
+ def exit_then_run_shell_script(script: str, strict: bool = False):
107
112
  import os
108
113
  op_program_path = os.environ.get("OP_PROGRAM_PATH", None)
114
+ if strict and op_program_path is None:
115
+ raise ValueError("OP_PROGRAM_PATH environment variable is not set in strict mode.")
109
116
  if op_program_path is not None:
110
117
  op_program_path = Path(op_program_path)
111
118
  op_program_path.parent.mkdir(parents=True, exist_ok=True)
@@ -214,7 +214,6 @@ def get_machineconfig_version() -> str:
214
214
  from importlib.metadata import PackageNotFoundError, version as _pkg_version
215
215
  from pathlib import Path
216
216
  import tomllib
217
-
218
217
  name: str = "machineconfig"
219
218
  try:
220
219
  return _pkg_version(name)
@@ -4,7 +4,14 @@ from rich.text import Text
4
4
  from rich.panel import Panel
5
5
  from rich.console import Console
6
6
  import subprocess
7
- from typing import Optional, Union, Iterable, overload, Literal
7
+ from typing import Optional, Union, Iterable, overload, Literal, cast
8
+
9
+
10
+ # def strip_ansi_codes(text: str) -> str:
11
+ # """Remove ANSI color codes from text."""
12
+ # import re
13
+ # return re.sub(r'\x1b\[[0-9;]*[a-zA-Z]', '', text)
14
+
8
15
 
9
16
  @overload
10
17
  def choose_from_options[T](msg: str, options: Iterable[T], multi: Literal[False], custom_input: bool = False, header: str = "", tail: str = "", prompt: str = "", default: Optional[T] = None, fzf: bool = False) -> T: ...
@@ -22,17 +29,20 @@ def choose_from_options[T](msg: str, options: Iterable[T], multi: bool, custom_i
22
29
  from pyfzf.pyfzf import FzfPrompt
23
30
  fzf_prompt = FzfPrompt()
24
31
  nl = "\n"
25
- choice_string_multi: list[str] = fzf_prompt.prompt(choices=options_strings, fzf_options=("--multi" if multi else "") + f' --prompt "{prompt.replace(nl, " ")}" ') # --border-label={msg.replace(nl, ' ')}")
32
+ choice_string_multi: list[str] = fzf_prompt.prompt(choices=options_strings, fzf_options=("--multi" if multi else "") + f' --prompt "{prompt.replace(nl, " ")}" --ansi') # --border-label={msg.replace(nl, ' ')}")
26
33
  # --border=rounded doens't work on older versions of fzf installed at Ubuntu 20.04
27
34
  if not multi:
28
35
  try:
29
36
  choice_one_string = choice_string_multi[0]
37
+ if isinstance(list(options)[0], str): return cast(T, choice_one_string)
30
38
  choice_idx = options_strings.index(choice_one_string)
31
39
  return list(options)[choice_idx]
32
40
  except IndexError as ie:
33
41
  print(f"❌ Error: {options=}, {choice_string_multi=}")
34
42
  print(f"🔍 Available choices: {choice_string_multi}")
35
43
  raise ie
44
+ if isinstance(list(options)[0], str):
45
+ return cast(list[T], choice_string_multi)
36
46
  choice_idx_s = [options_strings.index(x) for x in choice_string_multi]
37
47
  return [list(options)[x] for x in choice_idx_s]
38
48
  else:
@@ -77,7 +77,7 @@ def match_file_name(sub_string: str, search_root: PathExtended, suffixes: set[st
77
77
  if len(filename_matches) < 20:
78
78
  print("\n".join([a_potential_match.as_posix() for a_potential_match in filename_matches]))
79
79
  if len(filename_matches) > 1:
80
- print("Try to narrow down filename_matches search by case-sensitivity.")
80
+ print(f"Try to narrow down filename_matches search by case-sensitivity, found {len(filename_matches)} results. First @ {filename_matches[0].as_posix()}")
81
81
  # let's see if avoiding .lower() helps narrowing down to one result
82
82
  reduced_scripts = [a_potential_match for a_potential_match in filename_matches if sub_string in a_potential_match.name]
83
83
  if len(reduced_scripts) == 1:
@@ -139,8 +139,6 @@
139
139
  # start: datetime
140
140
  # end: datetime
141
141
  # status: str
142
-
143
- # @classmethod
144
142
  # def from_path(cls, path: PathExtended, return_default_if_not_found: bool=False):
145
143
  # if not path.exists():
146
144
  # if return_default_if_not_found:
@@ -8,7 +8,7 @@ from machineconfig.utils.terminal import Response
8
8
  from machineconfig.utils.accessories import pprint, randstr
9
9
  from machineconfig.utils.meta import lambda_to_python_script
10
10
  UV_RUN_CMD = "$HOME/.local/bin/uv run" if platform.system() != "Windows" else """& "$env:USERPROFILE/.local/bin/uv" run"""
11
- MACHINECONFIG_VERSION = "machineconfig>=6.83"
11
+ MACHINECONFIG_VERSION = "machineconfig>=6.85"
12
12
  DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
13
13
 
14
14
  class SSH:
@@ -115,7 +115,7 @@ class SSH:
115
115
  self.tqdm_wrap = RichProgressWrapper
116
116
  from machineconfig.scripts.python.helpers_devops.cli_utils import get_machine_specs
117
117
  self.local_specs: MachineSpecs = get_machine_specs()
118
- resp = self.run_shell(command=f"""~/.local/bin/utils get-machine-specs """, verbose_output=False, description="Getting remote machine specs", strict_stderr=False, strict_return_code=False)
118
+ resp = self.run_shell(command="""~/.local/bin/utils get-machine-specs """, verbose_output=False, description="Getting remote machine specs", strict_stderr=False, strict_return_code=False)
119
119
  json_str = resp.op
120
120
  import ast
121
121
  self.remote_specs: MachineSpecs = cast(MachineSpecs, ast.literal_eval(json_str))
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: machineconfig
3
- Version: 6.83
3
+ Version: 6.85
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -14,10 +14,10 @@ machineconfig/cluster/remote/run_remote.py,sha256=vCc56t8BUAUJp7tyb0PFfwy5hlmIdR
14
14
  machineconfig/cluster/remote/script_execution.py,sha256=d1NZdIHlB0H69cyLgOv81vS9ui81d9ClM4WA4ICHKLY,9857
15
15
  machineconfig/cluster/remote/script_notify_upon_completion.py,sha256=GRxnnbnOl1-hTovTN-zI_M9wdV7x293yA77_mou9I1o,2032
16
16
  machineconfig/cluster/sessions_managers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- machineconfig/cluster/sessions_managers/wt_local.py,sha256=6XQL4J1QJlqVyvvTkPASJ4Nvlx5d1iyZAeIktffrkoE,18998
18
- machineconfig/cluster/sessions_managers/wt_local_manager.py,sha256=B7qpdRakeS1XFx4_xapIekii2B_2Nm8XHMvNWlcr7uk,24370
17
+ machineconfig/cluster/sessions_managers/wt_local.py,sha256=AwiSXXOX4XLfrAkgZoy1sSYkNo-7Nq_n4hxPYFAoYqo,9781
18
+ machineconfig/cluster/sessions_managers/wt_local_manager.py,sha256=Y4NT-ukc7z8BVO2tqRZU0tzbLro3uWwU9UUI5MVLut4,19841
19
19
  machineconfig/cluster/sessions_managers/wt_remote.py,sha256=yofv3Zlj2aClDUKYhUJVyvO-Wh76Wka71n-DY1ODj0Q,9072
20
- machineconfig/cluster/sessions_managers/wt_remote_manager.py,sha256=wxfZPJd4_21LAEoaf1kVDIyhUOYlJfWfNfFvlCOPLqo,20303
20
+ machineconfig/cluster/sessions_managers/wt_remote_manager.py,sha256=XC6JUlUsPAuKkw42T0s8wrJNOaXttley2BcfMicH6X0,14490
21
21
  machineconfig/cluster/sessions_managers/zellij_local.py,sha256=eI3nLzlg1lrKDBu-RscTUEAvsJVRd06TrcdVABNgVu4,10076
22
22
  machineconfig/cluster/sessions_managers/zellij_local_manager.py,sha256=YJVhBTWh4FVduvnysMeka_uQ7cckRTLpMrBx5O386zs,17701
23
23
  machineconfig/cluster/sessions_managers/zellij_remote.py,sha256=TFx-Xjmoue8KjbzBFtvFSOSx3zgoTdS_N1WWPPdMBm8,8513
@@ -27,10 +27,14 @@ machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py,sha256=i
27
27
  machineconfig/cluster/sessions_managers/utils/load_balancer.py,sha256=Y4RQmhROY6o7JXSJXRrBTkoAuEmu1gvmvN_7JKPw5sc,3178
28
28
  machineconfig/cluster/sessions_managers/utils/maker.py,sha256=V8_ywAEaD9VZQ5GIAm0S0XO_5pf7nAcnVBEyD_R8TSY,2643
29
29
  machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py,sha256=OA50j16uUS9ZTjL38TLuR3jufIOln_EszMZpbWyejTo,6972
30
+ machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py,sha256=LWgK-886QMERLRJwQ4rH2Nr2RGlyKu6P7JYoBMVWMGc,1604
31
+ machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py,sha256=e75rdp0G8cDfF9SfkJ7LX3TAJ8R3JWR5v-C_SDkDa14,1627
30
32
  machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py,sha256=Mitm7mKiKl5lT0OiEUHAqVg2Q21RjsKO1-hpJTHJ5lM,15196
31
33
  machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py,sha256=lApUy67_WhfaBXqt0meZSx_QvwiXjN0YLdyE3c7kP_s,6744
32
34
  machineconfig/cluster/sessions_managers/wt_utils/session_manager.py,sha256=-PNcYwPqwdNRnLU9QGKxRR9i6ewY02Id-tgnODB_OzQ,12552
33
35
  machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py,sha256=t5EWNOVS-PTc2fWE8aWNBrDyqR8akLtwtRinztxOdpY,9590
36
+ machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py,sha256=OE24ggT2IWwR22rLHPc6fKxnafjPqIqoPa5VqeMDV90,3961
37
+ machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py,sha256=T6u7Ae2F84VEoQykAZotJdkm8KtwLSyAW-LLC9PQKZE,7824
34
38
  machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py,sha256=FyYsqowiFAvqv4M0eXRnw2U38r7u8EI1I3p580kV5Y0,2976
35
39
  machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py,sha256=FMpwaSeDCc71pEiVk99s8f5NkZEQ8zKQNUuaSXojgq4,4615
36
40
  machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py,sha256=8l8OAfWYy5xv-EaVqtXLqvPo9YaR9i8kFqGMhPzk0nw,2616
@@ -106,13 +110,11 @@ machineconfig/scripts/linux/fzfag,sha256=x0rX7vM_YjKLZ822D2Xh0HdaTj5kR_gG3g_5_w6
106
110
  machineconfig/scripts/linux/fzffg,sha256=jjeeyFkWmBbwH2taRqC3EOzZep2KR-ZYoI4UI-5kHqg,1090
107
111
  machineconfig/scripts/linux/fzfg,sha256=ClGnJZUsIk4y0qs3W5iXGo-nd0FaqAHMsnh8uoXQFy8,1190
108
112
  machineconfig/scripts/linux/fzfrga,sha256=xSdws6ae28ZXkkqz_uupZ0MYw_vxE2qpLT2DLS3WITM,460
109
- machineconfig/scripts/linux/mcfgs,sha256=O47lVLPPK2uRCAdt_Ll87PsukTY_cAGa35ZFdjZEM5w,1150
113
+ machineconfig/scripts/linux/mcfgs,sha256=tjlIG2qEpmx1EuMBYflYcp6GfgiFgSj4OMOD-d94xio,1179
110
114
  machineconfig/scripts/linux/skrg,sha256=JgQJGwxaChr148bDnpTB0rrqZMe2o2zGSDA9x_oUhWM,133
111
- machineconfig/scripts/linux/warp-cli.sh,sha256=shFFZ9viet_DSEEHT8kxlGRHoJpO6o85pKYnc3rIkaA,3868
112
- machineconfig/scripts/linux/z_ls,sha256=h5YJYfnJrmtLe4c2iKk5aZdaK_Zeaj3CpQX8SSr7fr0,3310
115
+ machineconfig/scripts/linux/term,sha256=CNPY8p6SitOmtOPKXPervPPabjJNYBerA12SHN_v7w4,1139
113
116
  machineconfig/scripts/linux/other/share_cloud.sh,sha256=lIZrXiaOT11kzu4NFNTXvANhc2bMdSPDYD1-7XUO_C0,2027
114
117
  machineconfig/scripts/linux/other/share_nfs,sha256=LDQZQ9TV7z2y7RtNHiO4Wb513MztyGjaAV-GzTGwUdc,1374
115
- machineconfig/scripts/linux/other/share_smb,sha256=HZX8BKgMlS9JzkGIYnxTsPvoxEBBuVLVkqzR3pmGFGY,20
116
118
  machineconfig/scripts/linux/other/start_docker,sha256=_yDN_PPqgzSUnPT7dmniMTpL4IfeeaGy1a2OL3IJlDU,525
117
119
  machineconfig/scripts/linux/other/switch_ip,sha256=NQfeKMBSbFY3eP6M-BadD-TQo5qMP96DTp77KHk2tU8,613
118
120
  machineconfig/scripts/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -121,16 +123,17 @@ machineconfig/scripts/python/cloud.py,sha256=yAD6ciKiEtv2CH3g2NScDK5cpCZQi7Vu8yy
121
123
  machineconfig/scripts/python/croshell.py,sha256=QyQbVboNqDQHJkUeSsJvdT212t4TW46yat3GBzneqsQ,8649
122
124
  machineconfig/scripts/python/devops.py,sha256=Lv4d-UlyOREj4VTcu_pxswYo54Mawe3XGeKjreGQDYg,2222
123
125
  machineconfig/scripts/python/devops_navigator.py,sha256=5Cm384D4S8_GsvMzTwr0C16D0ktf8_5Mk5bEJncwDO8,237
124
- machineconfig/scripts/python/fire_jobs.py,sha256=UrxCwFKg7ZtBYKFpsSHe62ngcpmHFomSxFWDLnM7CmQ,14645
126
+ machineconfig/scripts/python/fire_jobs.py,sha256=bW2RHIP1qD54d_WZHflNwTej7lrdE8OOuJ7ZKQpiB8I,13897
125
127
  machineconfig/scripts/python/ftpx.py,sha256=A13hL_tDYfcsaK9PkshK-0lrUS6KPhPCtwqWtLSo6IM,9764
126
128
  machineconfig/scripts/python/interactive.py,sha256=zt3g6nGKR_Y5A57UnR4Y5-JpLzrpnCOSaqU1bnaikK0,11666
127
129
  machineconfig/scripts/python/mcfg.py,sha256=TB5lZDZDImGqX4_mMSEv4ZoFigIPA0RXn-9H2cmPS6g,2457
128
130
  machineconfig/scripts/python/sessions.py,sha256=JfN8M7r7f8DkfiGJ4jz2NfXvABm90nOZJmLGxPgw_2M,9518
129
- machineconfig/scripts/python/utils.py,sha256=Pdk75UjapwE3gou-CMHtqqPhNhpPZP2t1Pm1LPbam-Y,3280
131
+ machineconfig/scripts/python/terminal.py,sha256=5D0RlZkx9ut5WlwjDI8j-t_z6u-H_jJD1eKBnWy_TGU,5191
132
+ machineconfig/scripts/python/utils.py,sha256=1960YceYJyjo0UFAiVaxIMIXm031wdYRA8l1U6k6h9s,3282
130
133
  machineconfig/scripts/python/ai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
134
  machineconfig/scripts/python/ai/generate_files.py,sha256=VfjKdwgF8O6E4oiRtfWNliibLmmwGe7f9ld6wpOsXTw,14498
132
135
  machineconfig/scripts/python/ai/initai.py,sha256=P4-NCLJPWeNef_k-l4TQ92AB1Xm1k3xzdqSBIjmevnQ,1573
133
- machineconfig/scripts/python/ai/vscode_tasks.py,sha256=61wMMIhtNTUO8Zvl8IziEdyadzgi5H0h8ACwq3cw6Ho,1255
136
+ machineconfig/scripts/python/ai/vscode_tasks.py,sha256=OF8q4oKu53lJy8u36h3alHx3XmMhqHaaXZ-T5nr7b18,1481
134
137
  machineconfig/scripts/python/ai/command_runner/command_runner.sh,sha256=PRaQyeI3lDi3s8pm_0xZc71gRvUFO0bEt8o1g1rwwD4,761
135
138
  machineconfig/scripts/python/ai/command_runner/prompt.txt,sha256=-2NFBMf-8yk5pOe-3LBX3RTIhqIZHJS_m-v4k-j9sWI,779
136
139
  machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1,sha256=m_z4vzLrvi6bgTZumN8twcbIWb9i8ZHfVJPE8jPdxyc,5074
@@ -159,7 +162,7 @@ machineconfig/scripts/python/ai/solutions/opencode/opencode.json,sha256=nahHKRw1
159
162
  machineconfig/scripts/python/ai/solutions/opencode/opencode.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
160
163
  machineconfig/scripts/python/env_manager/__init__.py,sha256=E4LAHbU1wo2dLjE36ntv8U7QNTe8TasujUAYK9SLvWk,6
161
164
  machineconfig/scripts/python/env_manager/path_manager_backend.py,sha256=ZVGlGJALhg7zNABDdwXxL7MFbL2BXPebObipXSLGbic,1552
162
- machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=VL_VuM9XuZL6dekAOq_vpU4meluHnwSv6_MTxIo1_30,6932
165
+ machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=fu03lfRAzf7NSyMdbKFfA-eqNWtUeyZAF02QAiOxEY8,6932
163
166
  machineconfig/scripts/python/helpers_cloud/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
164
167
  machineconfig/scripts/python/helpers_cloud/cloud_copy.py,sha256=OV1w3ajFVFs6FJytjIPOntYB_aW2ywGohKi73V4Dm2Y,8691
165
168
  machineconfig/scripts/python/helpers_cloud/cloud_helpers.py,sha256=GA-bxXouUmknk9fyQAsPT-Xl3RG9-yBed71a2tu9Pig,4914
@@ -175,15 +178,15 @@ machineconfig/scripts/python/helpers_croshell/start_slidev.py,sha256=HfJReOusTPh
175
178
  machineconfig/scripts/python/helpers_croshell/viewer.py,sha256=heQNjB9fwn3xxbPgMofhv1Lp6Vtkl76YjjexWWBM0pM,2041
176
179
  machineconfig/scripts/python/helpers_croshell/viewer_template.py,sha256=ve3Q1-iKhCLc0VJijKvAeOYp2xaFOeIOC_XW956GWCc,3944
177
180
  machineconfig/scripts/python/helpers_devops/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
178
- machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=AhnxhxlmnfktAOJ7p46HHide2OGcoj4Ti7VhnHg_nYM,7218
181
+ machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=Dt1ePdB8oIz2cBZNKdzhWqEa8Fe9C5gLrh55qoYZmMY,7218
179
182
  machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py,sha256=fluxRtD6hlbh131_RmeKr2Dy8tZpeC4H9-wp2sYt0dM,2486
180
183
  machineconfig/scripts/python/helpers_devops/cli_data.py,sha256=79Xvx7YnbueruEnl69hrDg2AhVxf_zCUdlVcKfeMGyQ,1774
181
- machineconfig/scripts/python/helpers_devops/cli_nw.py,sha256=B5Xa9pV5MdC4vPo3EmKaHvNMlThsY3c5F92YPE5j3rI,4176
184
+ machineconfig/scripts/python/helpers_devops/cli_nw.py,sha256=edeZPhQrm-hvOx80TPt9GNZXlXq9kkTaRSZSpNdku8w,6441
182
185
  machineconfig/scripts/python/helpers_devops/cli_repos.py,sha256=Xwkv1adqHZvTfRSPWiqSK3PZ1XADyx3llw_YkbxaKyE,12505
183
- machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=ixRdjOHgLdyfAz8jRucgCnWpNtpioH6U4yuri4CBSwQ,6225
186
+ machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=-XLkpJHc9s-Hi9ZiLPzCIV1gdeQwsbOIlpchxJNV4Gs,6225
184
187
  machineconfig/scripts/python/helpers_devops/cli_share_server.py,sha256=q9pFJ6AxPuygMr3onMNOKEuuQHbVE_6Qoyo7xRT5FX0,4196
185
188
  machineconfig/scripts/python/helpers_devops/cli_terminal.py,sha256=k_PzXaiGyE0vXr0Ii1XcJz2A7UvyPJrR31TRWt4RKRI,6019
186
- machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=KGIU1uTWC4g3kvBBkGrM-TtmcR8V1jTxVMGKXDSLnLA,10183
189
+ machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=P_PoJnY8ltCmhCarh74dxF2cm5cRBeyU95xPrRzJANU,10182
187
190
  machineconfig/scripts/python/helpers_devops/devops_backup_retrieve.py,sha256=Dn8luB6QJzxKiiFSC-NMqiYddWZoca3A8eOjMYZDzTc,5598
188
191
  machineconfig/scripts/python/helpers_devops/devops_status.py,sha256=PJVPhfhXq8der6Xd-_fjZfnizfM-RGfJApkRGhGBmNo,20525
189
192
  machineconfig/scripts/python/helpers_devops/devops_update_repos.py,sha256=kSln8_-Wn7Qu0NaKdt-QTN_bBVyTIAWHH8xVYKK-vCM,10133
@@ -197,7 +200,7 @@ machineconfig/scripts/python/helpers_fire/fire_agents_help_launch.py,sha256=GBhi
197
200
  machineconfig/scripts/python/helpers_fire/fire_agents_help_search.py,sha256=qIfSS_su2YJ1Gb0_lu4cbjlJlYMBw0v52NTGiSrGjk8,2991
198
201
  machineconfig/scripts/python/helpers_fire/fire_agents_helper_types.py,sha256=umX-Na6W_8kGZX7ccElnvGP8yxJ8prGBiG3-dO9vXJ0,1304
199
202
  machineconfig/scripts/python/helpers_fire/fire_agents_load_balancer.py,sha256=mpqx3uaQdBXYieuvhdK-qsvLepf9oIMo3pwPj9mSEDI,1079
200
- machineconfig/scripts/python/helpers_fire/helpers4.py,sha256=iKR5vVJygaDIpFXhcdma9jOpyxKtUhmqcmalFxJmY0w,4749
203
+ machineconfig/scripts/python/helpers_fire/helpers4.py,sha256=VCrnv5n42SbDXKDJ8VNu_bA0UruTLWXQBK9SxhflzTY,5477
201
204
  machineconfig/scripts/python/helpers_fire/prompt.txt,sha256=Ni6r-Dh0Ez2XwfOZl3MOMDhfn6BJ2z4IdK3wFvA3c_o,116
202
205
  machineconfig/scripts/python/helpers_fire/template.ps1,sha256=9F7h9NMIJisunMIii2wETpgonQmiGLHLHfWg9k_QWKo,859
203
206
  machineconfig/scripts/python/helpers_fire/template.sh,sha256=rOND8s0-MuymFMn6lUspa0SkDikQkKlnJRl2Kyo57Ho,837
@@ -222,7 +225,7 @@ machineconfig/scripts/python/helpers_navigator/search_bar.py,sha256=kDi8Jhxap8wd
222
225
  machineconfig/scripts/python/helpers_repos/action.py,sha256=8je051kpGZ7A_GRsQyWKhPZ8xVW7tSm4bnPu6VjxaXk,9755
223
226
  machineconfig/scripts/python/helpers_repos/action_helper.py,sha256=XRCtkGkNrxauqUd9qkxtfJt02Mx2gejSYDLL0jyWn24,6176
224
227
  machineconfig/scripts/python/helpers_repos/clone.py,sha256=UULEG5xJuXlPGU0nqXH6U45jA9DOFqLw8B4iPytCwOQ,5471
225
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=B1vZC587lRYvAWxWKfZqm2URZUUuMB3AuCtvYo4MicI,10450
228
+ machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=ZiQgOHuc0GYGSmIOB833W-5C4Plt75FpgeYcRipraak,10450
226
229
  machineconfig/scripts/python/helpers_repos/count_lines.py,sha256=Q5c7b-DxvTlQmljoic7niTuiAVyFlwYvkVQ7uRJHiTo,16009
227
230
  machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=vSDtrF4829jziwp6WZmGt9G8MJ9jY4hfXqtf0vhkYSE,607
228
231
  machineconfig/scripts/python/helpers_repos/entrypoint.py,sha256=WYEFGUJp9HWImlFjbs_hiFZrUqM_KEYm5VvSUjWd04I,2810
@@ -238,7 +241,7 @@ machineconfig/scripts/python/nw/add_ssh_key.py,sha256=9JLmWu8pE7PAL5VuCFd19iVEdC
238
241
  machineconfig/scripts/python/nw/devops_add_identity.py,sha256=aPjcHbTLhxYwWYcandyAHdwuO15ZBu3fB82u6bI0tMQ,3773
239
242
  machineconfig/scripts/python/nw/devops_add_ssh_key.py,sha256=CkIl85hZLtG9k7yXLSzqi88YrilHV4hIUWHAPBwxWjw,8922
240
243
  machineconfig/scripts/python/nw/mount_drive,sha256=zemKofv7hOmRN_V3qK0q580GkfWw3VdikyVVQyiu8j8,3514
241
- machineconfig/scripts/python/nw/mount_nfs,sha256=TBTU0sFK2d_v-A-XBsZG3gTrsHYj8MbpMsrM9LySXX4,1855
244
+ machineconfig/scripts/python/nw/mount_nfs,sha256=YcDHqe9fEnOk01qEd4ItnlHZr2GQce-e-o7V3HHK-pI,1855
242
245
  machineconfig/scripts/python/nw/mount_nfs.py,sha256=lOMDY4RS7tx8gsCazVR5tNNwFbaRyO2PJlnwBCDQgCM,3573
243
246
  machineconfig/scripts/python/nw/mount_nw_drive,sha256=BqjGBCbwe5ZAsZDO3L0zHhh_gJfZy1CYOcqXA4Y-WkQ,2262
244
247
  machineconfig/scripts/python/nw/mount_nw_drive.py,sha256=iru6AtnTyvyuk6WxlK5R4lDkuliVpPV5_uBTVVhXtjQ,1550
@@ -247,16 +250,17 @@ machineconfig/scripts/python/nw/mount_ssh.py,sha256=qt0P4T4pheszexBxaDeLVrGdLIVR
247
250
  machineconfig/scripts/python/nw/onetimeshare.py,sha256=xRd8by6qUm-od2Umty2MYsXyJwzXw-CBTd7VellNaKY,2498
248
251
  machineconfig/scripts/python/nw/ssh_debug_linux.py,sha256=VSFhyzYQeLIoSwsUFJFW1Wc89DinrpZ_YxyYB2Ndy-4,30966
249
252
  machineconfig/scripts/python/nw/ssh_debug_windows.py,sha256=2prJs3PMsoAUu5LlZhHIKGVgqj7h6OviGEjAMJLJ7LI,29986
250
- machineconfig/scripts/python/nw/wifi_conn.py,sha256=4GdLhgma9GRmZ6OFg3oxOX-qY3sr45njPckozlpM_A0,15566
253
+ machineconfig/scripts/python/nw/wifi_conn.py,sha256=wnSs16kHwhELS7wX3UtRVXgR_5En-x4nD27_JpJIflw,13590
251
254
  machineconfig/scripts/python/nw/wsl_windows_transfer.py,sha256=jHJyFTuks_Kw4cgE8xuGDVjO_71JgICrsV9ZQt53meY,3524
252
255
  machineconfig/scripts/windows/fzfb.ps1,sha256=Bmngm2aY8hnPa3iKAOK6EPDYdKzGLUc81wYOnJhNoqg,149
253
256
  machineconfig/scripts/windows/fzfg.ps1,sha256=CHJbMrMuZePd4dxwIwz3g4XWAEmWmckuX-Nrx2xgRkg,27
254
257
  machineconfig/scripts/windows/fzfrga.bat,sha256=rU_KBMO6ii2EZ0akMnmDk9vpuhKSUZqkV0o8a8ywXcM,488
255
258
  machineconfig/scripts/windows/mcfgs.ps1,sha256=uuK5pEz38D3_SOjfhbvkDT8Kt4I62YhNzkExlW8VSps,577
259
+ machineconfig/scripts/windows/term.ps1,sha256=nme_OWis84qN-zI2c0rdysNcDIdoaEKajXZhP2QioQs,1742
256
260
  machineconfig/scripts/windows/mounts/mount_nfs.ps1,sha256=XrAdzpxE6a4OccSmWJ7YWHJTnsZK8uXnFE5j9GOPA20,2026
257
261
  machineconfig/scripts/windows/mounts/mount_nw.ps1,sha256=puxcfZc3ZCJerm8pj8OZGVoTYkhzp-h7oV-MrksSqIE,454
258
262
  machineconfig/scripts/windows/mounts/mount_smb.ps1,sha256=PzYWpIO9BpwXjdWlUQL9pnMRnOGNSkxfh4bHukJFme8,69
259
- machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=TGTSzYfJ8kOx1Anx2CIUpWzRd6E3cQ2rmzkQcm5QwxA,322
263
+ machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=fK9_qWP_-xCfvM1eexaOgWp32HYZGq257_s448V5I44,322
260
264
  machineconfig/scripts/windows/mounts/share_cloud.cmd,sha256=exD7JCdxw2LqVjw2MKCYHbVZlEqmelXtwnATng-dhJ4,1028
261
265
  machineconfig/scripts/windows/mounts/share_smb.ps1,sha256=U7x8ULYSjbgzTtiHNSKQuTaZ_apilDvkGV5Xm5hXk5M,384
262
266
  machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1,sha256=Wv-SLscdckV-1mG3p82VXKPY9zW3hgkRmcLUXIZ1daE,253
@@ -327,7 +331,7 @@ machineconfig/settings/rofi/config.rasi,sha256=nDX5B8wdXQYF1fwiOTBRJUI4l_gQbYaLa
327
331
  machineconfig/settings/rofi/config_default.rasi,sha256=rTfKnC-bZuWX1l-lWQACCUOE1ShhkfykAxtXX9PlQHE,4694
328
332
  machineconfig/settings/shells/alacritty/alacritty.toml,sha256=EbL-2Y4QunW1pvRWB2yuLCw8MMPONheJr5LFoWRieUQ,871
329
333
  machineconfig/settings/shells/alacritty/alacritty.yml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
330
- machineconfig/settings/shells/bash/init.sh,sha256=sSocJ3oyi47Oe_Ryg3VMjWRzRsV9n1NCo15nW7MB9XE,2695
334
+ machineconfig/settings/shells/bash/init.sh,sha256=JiZ6UUar6nmNiu9-sMemYnxIF6pjVlqxBMwKKq8hu9o,2709
331
335
  machineconfig/settings/shells/hyper/.hyper.js,sha256=h-HqeYlvPvPD4Ee7828Cxo87uVkzbMGJFqXTZIWoegw,8884
332
336
  machineconfig/settings/shells/ipy/profiles/default/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
333
337
  machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -335,7 +339,7 @@ machineconfig/settings/shells/ipy/profiles/default/startup/playext.py,sha256=OJ3
335
339
  machineconfig/settings/shells/kitty/kitty.conf,sha256=lDdx-dUX3jbKGb3BkS2f2TOpmgGiS-CI-_-lFvhD5A4,52870
336
340
  machineconfig/settings/shells/nushell/config.nu,sha256=xtko80MPteDXuOJmwJHNFhXmfHT6fIBfmTgsF29GiEc,748
337
341
  machineconfig/settings/shells/nushell/env.nu,sha256=4VmaXb-qP6qnMD5TPzkXMLFNlB5QC4l9HEzCvXZE2GQ,315
338
- machineconfig/settings/shells/pwsh/init.ps1,sha256=g1C4bgy2ZVTGD4fhBYMmSI526QBU5cqKYEO0hK7iWj0,1970
342
+ machineconfig/settings/shells/pwsh/init.ps1,sha256=5DfRhHt8kMSh74JbW4ALJOH6NRa_MlRgG34ouew7qsc,2000
339
343
  machineconfig/settings/shells/pwsh/profile.ps1,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
340
344
  machineconfig/settings/shells/starship/starship.toml,sha256=5rQTY7ZpKnrnhgu2Y9OJKUYMz5lPLIftO1p1VRuVZwQ,1150
341
345
  machineconfig/settings/shells/vtm/settings.xml,sha256=5TNXd-i0eUGo2w3tuhY9aOkwoJdqih8_HO_U6uL2Dts,18262
@@ -373,7 +377,7 @@ machineconfig/setup_linux/others/cli_installation.sh,sha256=gVvszYZJgKPRJx2SEaE3
373
377
  machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh,sha256=F5dbg0n9RHsKGPn8fIdZMn3p0RrHEkb8rWBGsdVGbus,1207
374
378
  machineconfig/setup_linux/ssh/openssh_all.sh,sha256=3dg6HEUFbHQOzLfSAtzK_D_GB8rGCCp_aBnxNdnidVc,824
375
379
  machineconfig/setup_linux/ssh/openssh_wsl.sh,sha256=1eeRGrloVB34K5z8yWVUMG5b9pV-WBfHgV9jqXiYgCQ,1398
376
- machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=Bkw6JQMZlDqshUjxRBvmf6PPtn_eUtgGRyYdJn2LI5k,464
380
+ machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=s1HGck3ZSTz2OhybyA42K-s2mEOjrJouElzmwOwuS9Y,488
377
381
  machineconfig/setup_mac/__init__.py,sha256=Q1waupi5vCBroLqc8Rtnw69_7jLnm2Cs7_zH_GSZgMs,616
378
382
  machineconfig/setup_mac/apps.sh,sha256=R0N6fBwLCzwy4qAormyMerXXXrHazibSkY6NrNOpTQU,2772
379
383
  machineconfig/setup_mac/uv.sh,sha256=CSN8oCBKS-LK1vJJqYOhAMcrouTf4Q_F3cpplc_ddMA,1157
@@ -387,25 +391,25 @@ machineconfig/setup_windows/others/power_options.ps1,sha256=c7Hn94jBD5GWF29CxMhm
387
391
  machineconfig/setup_windows/ssh/add-sshkey.ps1,sha256=qfPdqCpd9KP3VhH4ifsUm1Xvec7c0QVl4Wt8JIAm9HQ,1653
388
392
  machineconfig/setup_windows/ssh/add_identity.ps1,sha256=b8ZXpmNUSw3IMYvqSY7ClpdWPG39FS7MefoWnRhWN2U,506
389
393
  machineconfig/setup_windows/ssh/openssh-server.ps1,sha256=OMlYQdvuJQNxF5EILLPizB6BZAT3jAmDsv1WcVVxpFQ,2529
390
- machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=tSaANlJUcCi_sYBIp38KXrYqqYj7ambmaSHk6kYQN4E,581
394
+ machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=Jq0jg6azu1wPPybq2gsxpQoOKlcMdSxXmELKgGCyBsU,616
391
395
  machineconfig/setup_windows/wt_and_pwsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
392
396
  machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py,sha256=ogxJnwpdcpH7N6dFJu95UCNoGYirZKQho_3X0F_hmXs,6791
393
397
  machineconfig/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
394
398
  machineconfig/utils/accessories.py,sha256=Rs8R0GUb2Ub6YimkgXHnI02CShS5BKlrZdCigVxfPlk,4339
395
- machineconfig/utils/code.py,sha256=2hz171Uw706QGbvup0X7RUH0L_0ELRBekKjco71hFEQ,5493
396
- machineconfig/utils/installer.py,sha256=UzI_DtTcKbgvkAkWkNLAPUtx-RVqITHCpvZyLiCpD9g,10377
399
+ machineconfig/utils/code.py,sha256=yEsBswdx94hZedsb_Gy0-H6_CeivHzOiv8-aK9tGIgg,5823
400
+ machineconfig/utils/installer.py,sha256=m92KwGeep0FrT8V42xJDQdcT74HK9RB-xza0Ii50nHA,10376
397
401
  machineconfig/utils/io.py,sha256=4dSieoqZO8Vvi4vW8lLoITDHBvmFp4dtl3kyeZHQ6Co,2528
398
402
  machineconfig/utils/links.py,sha256=KM6vIn3hag9FYEzLSHP5MAM9tU_RStw2mCq2_OvmmZA,23672
399
403
  machineconfig/utils/meta.py,sha256=RXbq3_DSFAFNAEt9GjWqP2TjCWUs0v7gAkKCgRpdwO8,9853
400
404
  machineconfig/utils/notifications.py,sha256=tuXIudcip0tEioG-bm8BbLr3FMDve4f6BktlznBhKxM,9013
401
- machineconfig/utils/options.py,sha256=vUO4Kej-vDOv64wHr2HNDyu6PATURpjd7xp6N8OOoJg,7083
405
+ machineconfig/utils/options.py,sha256=VWYx3EKJxIp-CJ8gDGYdjclKSc1tMUhyrC8v3seeneo,7447
402
406
  machineconfig/utils/path_extended.py,sha256=WyJwoHnXdvSQQJ-yrxTX78FpqYmgVeKDYpNEB9UsRck,53223
403
- machineconfig/utils/path_helper.py,sha256=0e3Xh3BAEv27oqcezNeVLHJllGmLEgLH4T1l90m-650,8014
407
+ machineconfig/utils/path_helper.py,sha256=Yxj8qlf-g_254-dfvRx5rlisM2WA0P-BhZBEbmReeys,8095
404
408
  machineconfig/utils/procs.py,sha256=YPA_vEYQGwPd_o_Lc6nOTBo5BrB1tSs8PJ42XiGpenM,10957
405
409
  machineconfig/utils/scheduler.py,sha256=fguwvINyaupOxdU5Uadyxalh_jXTXDzt0ioEgjEOKcM,14705
406
- machineconfig/utils/scheduling.py,sha256=6x5zLA7sY5gohrEtN6zGrXIqNFasMoyBfwLcOjrjiME,11109
410
+ machineconfig/utils/scheduling.py,sha256=vcJgajeJPSWkJNlarYJSmLvasdOuCtBM4druOAB1Nwc,11089
407
411
  machineconfig/utils/source_of_truth.py,sha256=ZAnCRltiM07ig--P6g9_6nEAvNFC4X4ERFTVcvpIYsE,764
408
- machineconfig/utils/ssh.py,sha256=3jsTdPocNGLnJBMmkKBEsRCgE_p9u3ts02FcweqQTxE,39009
412
+ machineconfig/utils/ssh.py,sha256=QeS0SHvtJzGtXTbC_7Qns--QjQlfk0uIDT--vOKA9OA,39008
409
413
  machineconfig/utils/terminal.py,sha256=VDgsjTjBmMGgZN0YIc0pJ8YksLDrBtiXON1EThy7_is,4264
410
414
  machineconfig/utils/tst.py,sha256=6u1GI49NdcpxH2BYGAusNfY5q9G_ytCGVzFM5b6HYpM,674
411
415
  machineconfig/utils/upgrade_packages.py,sha256=TCohwiwc0btSsInOloxDVuk5i88yc1vBK8RZcoMWoUw,3425
@@ -434,8 +438,8 @@ machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoS
434
438
  machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
435
439
  machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
436
440
  machineconfig/utils/ssh_utils/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
437
- machineconfig-6.83.dist-info/METADATA,sha256=av1Q9f0ye-XEKl0wkJXHAVKpL_N1Yxee12RH2ktRdWQ,2928
438
- machineconfig-6.83.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
439
- machineconfig-6.83.dist-info/entry_points.txt,sha256=2OetLXw0yXtfG6MmJXbzZipCQfPueeM3oMgTORSEfYs,465
440
- machineconfig-6.83.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
441
- machineconfig-6.83.dist-info/RECORD,,
441
+ machineconfig-6.85.dist-info/METADATA,sha256=1GTj08560el2P_sSeVjfViYjV0ZJoVX5E--oKQiFWRQ,2928
442
+ machineconfig-6.85.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
443
+ machineconfig-6.85.dist-info/entry_points.txt,sha256=uf_ZPJa02_y3Fw5Z7m22cq7PwxhYd1QV2FfPNZTl_dQ,519
444
+ machineconfig-6.85.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
445
+ machineconfig-6.85.dist-info/RECORD,,
@@ -7,4 +7,5 @@ fire = machineconfig.scripts.python.fire_jobs:main
7
7
  ftpx = machineconfig.scripts.python.ftpx:main
8
8
  mcfg = machineconfig.scripts.python.mcfg:main
9
9
  sessions = machineconfig.scripts.python.sessions:main
10
+ terminal = machineconfig.scripts.python.terminal:main
10
11
  utils = machineconfig.scripts.python.utils:main
@@ -1 +0,0 @@
1
- #!/usr/bin/env bash