machineconfig 7.53__py3-none-any.whl → 7.55__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 (24) hide show
  1. machineconfig/jobs/installer/custom/hx.py +12 -9
  2. machineconfig/jobs/installer/custom_dev/sysabc.py +3 -6
  3. machineconfig/jobs/installer/installer_data.json +4 -4
  4. machineconfig/jobs/installer/package_groups.py +8 -0
  5. machineconfig/scripts/python/croshell.py +4 -4
  6. machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
  7. machineconfig/scripts/python/helpers_devops/cli_self.py +3 -3
  8. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +1 -1
  9. machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +1 -1
  10. machineconfig/scripts/python/helpers_utils/path.py +1 -1
  11. machineconfig/scripts/python/interactive.py +8 -11
  12. machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
  13. machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
  14. machineconfig/settings/yazi/shell/yazi_cd.ps1 +29 -5
  15. machineconfig/setup_linux/web_shortcuts/interactive.sh +12 -11
  16. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +12 -11
  17. machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +1 -0
  18. machineconfig/utils/ssh.py +1 -1
  19. {machineconfig-7.53.dist-info → machineconfig-7.55.dist-info}/METADATA +11 -15
  20. {machineconfig-7.53.dist-info → machineconfig-7.55.dist-info}/RECORD +23 -24
  21. machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
  22. {machineconfig-7.53.dist-info → machineconfig-7.55.dist-info}/WHEEL +0 -0
  23. {machineconfig-7.53.dist-info → machineconfig-7.55.dist-info}/entry_points.txt +0 -0
  24. {machineconfig-7.53.dist-info → machineconfig-7.55.dist-info}/top_level.txt +0 -0
@@ -14,6 +14,7 @@ from rich.panel import Panel
14
14
  from machineconfig.utils.schemas.installer.installer_types import InstallerData
15
15
 
16
16
 
17
+ LANGUAGES_SUPPORTED_GRAMMER = ["python.so", "nu.so", "bash.so", "lua.so", "powershell.so"]
17
18
  config_dict: InstallerData = {
18
19
  "appName": "hx",
19
20
  "repoURL": "CMD",
@@ -102,11 +103,12 @@ def main(installer_data: InstallerData, version: Optional[str], install_lib: boo
102
103
  if not child.exists():
103
104
  continue
104
105
  if child.name == "grammars":
105
- # copy only the python.so file from runtime/grammars if it exists
106
- python_so = child.joinpath("python.so")
107
- if python_so.exists() and python_so.is_file():
108
- dest = target_runtime.joinpath("grammars")
109
- python_so.copy(folder=dest, overwrite=True)
106
+ # copy only the specific language files from runtime/grammars if they exist
107
+ for a_language in LANGUAGES_SUPPORTED_GRAMMER:
108
+ lang_file = child.joinpath(a_language)
109
+ if lang_file.exists() and lang_file.is_file():
110
+ dest = target_runtime.joinpath("grammars")
111
+ lang_file.copy(folder=dest, overwrite=True)
110
112
  else:
111
113
  # copy the whole child (file or directory) into target_runtime
112
114
  # for directories, copy will create target_runtime/<child.name>
@@ -148,10 +150,11 @@ def main(installer_data: InstallerData, version: Optional[str], install_lib: boo
148
150
  if not child.exists():
149
151
  continue
150
152
  if child.name == "grammars":
151
- python_so = child.joinpath("python.so")
152
- if python_so.exists() and python_so.is_file():
153
- dest = target_runtime.joinpath("grammars")
154
- python_so.copy(folder=dest, overwrite=True)
153
+ for a_language in LANGUAGES_SUPPORTED_GRAMMER:
154
+ lang_file = child.joinpath(a_language)
155
+ if lang_file.exists() and lang_file.is_file():
156
+ dest = target_runtime.joinpath("grammars")
157
+ lang_file.copy(folder=dest, overwrite=True)
155
158
  else:
156
159
  try:
157
160
  child.copy(folder=target_runtime, overwrite=True)
@@ -8,7 +8,7 @@ from rich.panel import Panel
8
8
  from machineconfig.utils.schemas.installer.installer_types import InstallerData
9
9
 
10
10
 
11
- ps1 = """
11
+ ps1 = r"""
12
12
  winget install --no-upgrade --name "Powershell" --Id "Microsoft.PowerShell" --source winget --scope user --accept-package-agreements --accept-source-agreements # powershell require admin
13
13
  winget install --no-upgrade --name "Windows Terminal" --Id "Microsoft.WindowsTerminal" --source winget --scope user --accept-package-agreements --accept-source-agreements # Terminal is is installed by default on W 11
14
14
  winget install --no-upgrade --name "GNU Nano" --Id "GNU.Nano" --source winget --scope user --accept-package-agreements --accept-source-agreements
@@ -20,7 +20,7 @@ winget install --no-upgrade --name "GNU Nano" --Id "GNU.Nano
20
20
 
21
21
  """
22
22
 
23
- zsh = """
23
+ zsh = r"""
24
24
  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
25
25
  echo "🔄 Updating Homebrew..."
26
26
  brew update || true
@@ -48,7 +48,7 @@ nvm install node || true
48
48
  echo "✅ Essential tools installation complete."
49
49
  """
50
50
 
51
- bash = """
51
+ bash = r"""
52
52
  echo "🔄 Updating apt package lists..."
53
53
  echo "📥 Installing nala package manager..."
54
54
  echo "📥 Installing essential network tools..."
@@ -87,12 +87,9 @@ nvm install node || true
87
87
  # sudo nala install hollywood -y || true
88
88
 
89
89
  # --GROUP:net: sshfs,samba,fuse3,nfs-common
90
- echo "📥 Installing sshfs - mount remote filesystems over SSH..."
91
- echo "📥 Installing Samba - LAN-based file sharing..."
92
90
  sudo nala install samba
93
91
  sudo nala install fuse3 -y || true
94
92
  sudo nala install nfs-common -y || true
95
-
96
93
  # --GROUP:dev: graphviz,make,rust,libssl-dev,sqlite3,postgresql-client,redis-tools
97
94
  # sudo nala install ffmpeg -y || true # Required by some dev tools
98
95
  # sudo nala install make -y || true # Required by LunarVim and SpaceVim
@@ -993,12 +993,12 @@
993
993
  "doc": "⚡ Blazing Fast Terminal File Manager.",
994
994
  "fileNamePattern": {
995
995
  "amd64": {
996
- "linux": "yazi-x86_64-unknown-linux-gnu.zip",
996
+ "linux": "yazi-x86_64-unknown-linux-musl.zip",
997
997
  "macos": "yazi-x86_64-apple-darwin.zip",
998
998
  "windows": "yazi-x86_64-pc-windows-msvc.zip"
999
999
  },
1000
1000
  "arm64": {
1001
- "linux": "yazi-aarch64-unknown-linux-gnu.zip",
1001
+ "linux": "yazi-aarch64-unknown-linux-musl.zip",
1002
1002
  "macos": "yazi-aarch64-apple-darwin.zip",
1003
1003
  "windows": "yazi-aarch64-pc-windows-msvc.zip"
1004
1004
  }
@@ -2570,7 +2570,7 @@
2570
2570
  }
2571
2571
  },
2572
2572
  {
2573
- "appName": "Brave",
2573
+ "appName": "brave",
2574
2574
  "repoURL": "CMD",
2575
2575
  "doc": "Privacy-focused web browser with built-in ad blocking",
2576
2576
  "fileNamePattern": {
@@ -2706,7 +2706,7 @@
2706
2706
  }
2707
2707
  },
2708
2708
  {
2709
- "appName": "Wezterm",
2709
+ "appName": "wezterm",
2710
2710
  "repoURL": "CMD",
2711
2711
  "doc": "Modern, GPU-accelerated terminal emulator",
2712
2712
  "fileNamePattern": {
@@ -1,4 +1,11 @@
1
1
 
2
+ GUI = [
3
+ "brave",
4
+ "code",
5
+ "git",
6
+ "wezterm",
7
+ ]
8
+
2
9
  # AI/LLM Tools - AI-powered coding and chat assistants
3
10
  AGENTS = [
4
11
  "aider",
@@ -221,6 +228,7 @@ PACKAGES_TERMINAL_SHELL = [
221
228
  PACKAGE_GROUP2NAMES: dict[str, list[str]] = {
222
229
  "sysabc": ["sysabc"],
223
230
  "termabc": [*PACKAGES_CODE_ANALYSIS, *PACKAGES_SYSTEM_MONITORS, *PACKAGES_TERMINAL_SHELL, *PACKAGES_FILE,],
231
+ "gui": GUI,
224
232
  "dev": [*PACKAGES_TERMINAL_EMULATORS, *PACKAGES_BROWSERS, *PACKAGES_CODE_EDITORS, *PACKAGES_DATABASE, *PACKAGES_MEDIA, *PACKAGES_FILE_SHARING, *PACKAGES_DEV_UTILS, *PACKAGES_CODE_ANALYSIS, *PACKAGES_PRODUCTIVITY, *PACKAGES_MISC_DEV,],
225
233
  "dev-utils": PACKAGES_DEV_UTILS,
226
234
  "dev-msc": PACKAGES_MISC_DEV,
@@ -107,7 +107,7 @@ def croshell(
107
107
  fire_line = f"uv run --python 3.14 --with visidata,pyarrow vd {str(file_obj)}"
108
108
  elif marimo:
109
109
  if Path.home().joinpath("code/machineconfig").exists(): requirements = f"""--with marimo --project "{str(Path.home().joinpath("code/machineconfig"))}" """
110
- else: requirements = """--python 3.14 --with "marimo,cowsay,machineconfig[plot]>=7.53" """
110
+ else: requirements = """--python 3.14 --with "marimo,cowsay,machineconfig[plot]>=7.55" """
111
111
  fire_line = f"""
112
112
  cd {str(pyfile.parent)}
113
113
  uv run --python 3.14 --with "marimo" marimo convert {pyfile.name} -o marimo_nb.py
@@ -115,14 +115,14 @@ uv run {requirements} marimo edit --host 0.0.0.0 marimo_nb.py
115
115
  """
116
116
  elif jupyter:
117
117
  if Path.home().joinpath("code/machineconfig").exists(): requirements = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" --with jupyterlab """
118
- else: requirements = """--with "cowsay,machineconfig[plot]>=7.53" """
118
+ else: requirements = """--with "cowsay,machineconfig[plot]>=7.55" """
119
119
  fire_line = f"uv run {requirements} jupyter-lab {str(nb_target)}"
120
120
  elif vscode:
121
121
  fire_line = f"""
122
122
  cd {str(pyfile.parent)}
123
123
  uv init --python 3.14
124
124
  uv venv
125
- uv add "cowsay,machineconfig[plot]>=7.53"
125
+ uv add "cowsay,machineconfig[plot]>=7.55"
126
126
  # code serve-web
127
127
  code --new-window {str(pyfile)}
128
128
  """
@@ -130,7 +130,7 @@ code --new-window {str(pyfile)}
130
130
  if interpreter == "ipython": profile = f" --profile {ipython_profile} --no-banner"
131
131
  else: profile = ""
132
132
  if Path.home().joinpath("code/machineconfig").exists(): ve_line = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" """
133
- else: ve_line = """--python 3.14 --with "cowsay,machineconfig[plot]>=7.53" """
133
+ else: ve_line = """--python 3.14 --with "cowsay,machineconfig[plot]>=7.55" """
134
134
  # ve_path_maybe, ipython_profile_maybe = get_ve_path_and_ipython_profile(Path.cwd())
135
135
  # --python 3.14
136
136
  fire_line = f"uv run {ve_line} {interpreter} {interactivity} {profile} {str(pyfile)}"
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.13"
4
4
  # dependencies = [
5
- # "machineconfig>=7.53",
5
+ # "machineconfig>=7.55",
6
6
  # "textual",
7
7
  # "pyperclip",
8
8
  # ]
@@ -52,9 +52,9 @@ def install(no_copy_assets: Annotated[bool, typer.Option("--no-assets-copy", "-n
52
52
  else:
53
53
  import platform
54
54
  if platform.system() == "Windows":
55
- run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.53" """)
55
+ run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.55" """)
56
56
  else:
57
- run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.53" """)
57
+ run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.55" """)
58
58
  from machineconfig.profile.create_shell_profile import create_default_shell_profile
59
59
  if not no_copy_assets:
60
60
  create_default_shell_profile() # involves copying assets too
@@ -79,7 +79,7 @@ def navigate():
79
79
  path = Path(navigator.__file__).resolve().parent.joinpath("devops_navigator.py")
80
80
  from machineconfig.utils.code import run_shell_script
81
81
  if Path.home().joinpath("code/machineconfig").exists(): executable = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" --with textual"""
82
- else: executable = """--with "machineconfig>=7.53,textual" """
82
+ else: executable = """--with "machineconfig>=7.55,textual" """
83
83
  run_shell_script(f"""uv run {executable} {path}""")
84
84
 
85
85
 
@@ -99,7 +99,7 @@ git pull originEnc master
99
99
  uv_project_dir = f"""{str(Path.home().joinpath("code/machineconfig"))}"""
100
100
  uv_with = None
101
101
  else:
102
- uv_with = ["machineconfig>=7.53"]
102
+ uv_with = ["machineconfig>=7.55"]
103
103
  uv_project_dir = None
104
104
 
105
105
  import tempfile
@@ -8,7 +8,7 @@ def analyze_repo_development(repo_path: Annotated[str, typer.Argument(..., help=
8
8
  from pathlib import Path
9
9
  count_lines_path = Path(count_lines.__file__)
10
10
  # --project $HOME/code/ machineconfig --group plot
11
- cmd = f"""uv run --python 3.14 --with "machineconfig[plot]>=7.53" {count_lines_path} analyze-over-time {repo_path}"""
11
+ cmd = f"""uv run --python 3.14 --with "machineconfig[plot]>=7.55" {count_lines_path} analyze-over-time {repo_path}"""
12
12
  from machineconfig.utils.code import run_shell_script
13
13
  run_shell_script(cmd)
14
14
 
@@ -17,7 +17,7 @@ def path():
17
17
  uv_with = ["textual"]
18
18
  uv_project_dir = None
19
19
  if not Path.home().joinpath("code/machineconfig").exists():
20
- uv_with.append("machineconfig>=7.53")
20
+ uv_with.append("machineconfig>=7.55")
21
21
  else:
22
22
  uv_project_dir = str(Path.home().joinpath("code/machineconfig"))
23
23
  run_shell_script(get_uv_command_executing_python_script(python_script=path.read_text(encoding="utf-8"), uv_with=uv_with, uv_project_dir=uv_project_dir)[0])
@@ -19,9 +19,7 @@ for better user experience with checkbox selections.
19
19
 
20
20
  import sys
21
21
  from pathlib import Path
22
- # from typing import cast
23
22
  import platform
24
-
25
23
  import questionary
26
24
  from questionary import Choice
27
25
  from rich.console import Console
@@ -29,7 +27,6 @@ from rich.panel import Panel
29
27
  from rich.text import Text
30
28
  from machineconfig.utils.code import run_shell_script
31
29
 
32
- # _ = cast
33
30
  console = Console()
34
31
 
35
32
 
@@ -96,13 +93,13 @@ def display_dotfiles_instructions() -> None:
96
93
  def get_installation_choices() -> list[str]:
97
94
  """Get user choices for installation options."""
98
95
  choices = [
99
- Choice(value="install_machineconfig", title="🐍 Install machineconfig.", checked=False),
100
- Choice(value="sysabc", title="📥 Install Essential System Packages.", checked=False),
96
+ Choice(value="install_machineconfig", title="🐍 Install machineconfig cli.", checked=False),
97
+ Choice(value="sysabc", title="📥 Install System Package Manager (Needed for other apps to be installed).", checked=False),
101
98
  Choice(value="termabc", title="⚡ Install Terminal CLI apps essentials", checked=False),
102
- Choice(value="install_shell_profile", title="🐚 Configure Shell Profile.", checked=False),
103
- Choice(value="install_ssh_server", title="🔒 Install SSH Server", checked=False),
104
- Choice(value="retrieve_repositories", title="📚 Retrieve Repositories", checked=False),
105
- Choice(value="retrieve_data", title="💾 Retrieve Data.", checked=False),
99
+ Choice(value="install_shell_profile", title="🐚 Configure Shell Profile And Map Other Configs.", checked=False),
100
+ Choice(value="install_ssh_server", title="🔒 [ADVANCED] Configure SSH Server", checked=False),
101
+ Choice(value="retrieve_repositories", title="📚 [ADVANCED] Retrieve Repositories", checked=False),
102
+ Choice(value="retrieve_data", title="💾 [ADVANCED] Retrieve Data.", checked=False),
106
103
  ]
107
104
  selected = questionary.checkbox("Select the installation options you want to execute:", choices=choices, show_description=True).ask()
108
105
  return selected or []
@@ -119,7 +116,6 @@ def execute_installations(selected_options: list[str]) -> None:
119
116
  console.print("✅ CLI applications installed successfully", style="bold green")
120
117
  except Exception as e:
121
118
  console.print(f"❌ Error installing CLI applications: {e}", style="bold red")
122
- import platform
123
119
  if platform.system() != "Windows":
124
120
  run_shell_script(". $HOME/.bashrc")
125
121
 
@@ -130,7 +126,6 @@ def execute_installations(selected_options: list[str]) -> None:
130
126
 
131
127
  if "install_ssh_server" in selected_options:
132
128
  console.print(Panel("🔒 [bold red]SSH SERVER[/bold red]\n[italic]Remote access setup[/italic]", border_style="red"))
133
- import platform
134
129
  if platform.system() == "Windows":
135
130
  powershell_script = """Write-Host "🔧 Installing and configuring SSH server..."
136
131
  Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
@@ -147,6 +142,8 @@ Set-Service -Name sshd -StartupType 'Automatic'"""
147
142
  from machineconfig.profile.create_shell_profile import create_default_shell_profile
148
143
  create_default_shell_profile()
149
144
  console.print("✅ Shell profile configured successfully", style="bold green")
145
+ from machineconfig.profile.create_links_export import main_public_from_parser
146
+ main_public_from_parser(method="copy", on_conflict="overwrite-default-path", which="all", interactive=False)
150
147
  if platform.system() == "Windows":
151
148
  from machineconfig.jobs.installer.custom_dev.nerfont_windows_helper import install_nerd_fonts
152
149
  install_nerd_fonts()
@@ -7,7 +7,7 @@ $user = ''
7
7
  $sharePath = ''
8
8
  $driveLetter = ''
9
9
 
10
- uv run --python 3.14 --with "machineconfig>=7.53" python -m machineconfig.scripts.python.mount_ssh
10
+ uv run --python 3.14 --with "machineconfig>=7.55" 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
@@ -190,4 +190,6 @@ end
190
190
 
191
191
 
192
192
  -- and finally, return the configuration to wezterm
193
+ config.enable_osc133 = false -- to silence: P>|WezTerm 20240203-110809-5046fc22\
194
+
193
195
  return config
@@ -1,9 +1,33 @@
1
+ # function y {
2
+ # $tmp = (New-TemporaryFile).FullName
3
+ # yazi $args --cwd-file="$tmp"
4
+ # $cwd = Get-Content -Path $tmp -Encoding UTF8
5
+ # if (-not [String]::IsNullOrEmpty($cwd) -and $cwd -ne $PWD.Path) {
6
+ # Set-Location -LiteralPath (Resolve-Path -LiteralPath $cwd).Path
7
+ # }
8
+ # Remove-Item -Path $tmp
9
+ # }
1
10
  function y {
11
+ # Save + temporarily disable WezTerm/Starship prompt marking
12
+ $oldWez = $env:WEZTERM_SHELL_SKIP_ALL
13
+ $env:WEZTERM_SHELL_SKIP_ALL = "1" # tells WezTerm integration to skip markers (supported knob)
14
+ $oldTransient = $env:STARSHIP_DISABLE_TRANSIENT_PROMPT
15
+ $env:STARSHIP_DISABLE_TRANSIENT_PROMPT = "true"
16
+
2
17
  $tmp = (New-TemporaryFile).FullName
3
- yazi $args --cwd-file="$tmp"
4
- $cwd = Get-Content -Path $tmp -Encoding UTF8
5
- if (-not [String]::IsNullOrEmpty($cwd) -and $cwd -ne $PWD.Path) {
6
- Set-Location -LiteralPath (Resolve-Path -LiteralPath $cwd).Path
18
+ try {
19
+ yazi $args --cwd-file="$tmp"
20
+ $cwd = Get-Content -Path $tmp -Encoding UTF8
21
+ if (-not [string]::IsNullOrEmpty($cwd) -and $cwd -ne $PWD.Path) {
22
+ Set-Location -LiteralPath (Resolve-Path -LiteralPath $cwd).Path
23
+ }
24
+ } finally {
25
+ # Clean up temp file
26
+ Remove-Item -Path $tmp -ErrorAction SilentlyContinue
27
+ # Restore env
28
+ if ($null -ne $oldWez) { $env:WEZTERM_SHELL_SKIP_ALL = $oldWez } else { Remove-Item Env:\WEZTERM_SHELL_SKIP_ALL -ErrorAction SilentlyContinue }
29
+ if ($null -ne $oldTransient) { $env:STARSHIP_DISABLE_TRANSIENT_PROMPT = $oldTransient } else { Remove-Item Env:\STARSHIP_DISABLE_TRANSIENT_PROMPT -ErrorAction SilentlyContinue }
30
+ # Nudge terminal back to sane modes (cursor on, no mouse, no bracketed paste)
31
+ Write-Host -NoNewline "`e[0m`e[?25h`e[?1000l`e[?1002l`e[?1006l`e[?2004l"
7
32
  }
8
- Remove-Item -Path $tmp
9
33
  }
@@ -2,16 +2,16 @@
2
2
  . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
3
3
  . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/wrap_mcfg")
4
4
 
5
- alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" devops'
6
- alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" cloud'
7
- alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" agents'
8
- alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" sessions'
9
- alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" ftpx'
10
- alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" fire'
11
- alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" croshell'
12
- alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" utils'
13
- alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" terminal'
14
- alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.53" msearch'
5
+ alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" devops'
6
+ alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" cloud'
7
+ alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" agents'
8
+ alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" sessions'
9
+ alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" ftpx'
10
+ alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" fire'
11
+ alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" croshell'
12
+ alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" utils'
13
+ alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" terminal'
14
+ alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.55" msearch'
15
15
 
16
16
  alias d='wrap_in_shell_script devops'
17
17
  alias c='wrap_in_shell_script cloud'
@@ -24,5 +24,6 @@ alias u='wrap_in_shell_script utils'
24
24
  alias t='wrap_in_shell_script terminal'
25
25
  alias ms='wrap_in_shell_script msearch'
26
26
 
27
- devops self
28
27
  echo "mcfg command aliases are now defined in this shell session."
28
+
29
+ devops self interactive
@@ -3,16 +3,16 @@
3
3
  iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/uv.ps1").Content
4
4
  iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/windows/wrap_mcfg.ps1").Content
5
5
 
6
- function devops { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" devops $args }
7
- function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" cloud $args }
8
- function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" agents $args }
9
- function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" sessions $args }
10
- function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" ftpx $args }
11
- function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" fire $args }
12
- function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" croshell $args }
13
- function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" utils $args }
14
- function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" terminal $args }
15
- function msearch { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.53" msearch $args }
6
+ function devops { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" devops $args }
7
+ function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" cloud $args }
8
+ function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" agents $args }
9
+ function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" sessions $args }
10
+ function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" ftpx $args }
11
+ function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" fire $args }
12
+ function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" croshell $args }
13
+ function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" utils $args }
14
+ function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" terminal $args }
15
+ function msearch { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.55" msearch $args }
16
16
 
17
17
  function d { wrap_in_shell_script devops @args }
18
18
  function c { wrap_in_shell_script cloud @args }
@@ -25,5 +25,6 @@ function u { wrap_in_shell_script utils @args }
25
25
  function t { wrap_in_shell_script terminal @args }
26
26
  function ms { wrap_in_shell_script msearch @args }
27
27
 
28
- devops self
29
28
  Write-Host "mcfg command aliases are now defined in this PowerShell session."
29
+
30
+ devops self interactive
@@ -13,3 +13,4 @@ devops config shell --which nushell
13
13
 
14
14
  wt # start Windows Terminal to pick up config changes
15
15
  devops install --group termabc
16
+ devops install --group gui
@@ -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>=7.53"
11
+ MACHINECONFIG_VERSION = "machineconfig>=7.55"
12
12
  DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
13
13
 
14
14
  class SSH:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: machineconfig
3
- Version: 7.53
3
+ Version: 7.55
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -59,27 +59,23 @@ Dotfiles are divided into private and public. Examples of private ones are, `~/.
59
59
  # Install On Windows:
60
60
 
61
61
  ```powershell
62
- # Temporary install:
63
- iex (iwr bit.ly/cfgwindows).Content
64
- # Or, if UV is installed:
65
- iex (uvx machineconfig define)
66
- # Permanent install:
62
+ # install tool the tool only:
67
63
  powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # Skip if UV is already installed
68
- uv tool install --upgrade --python 3.14 machineconfig both
69
- devops config copy-assets
70
-
64
+ uv tool install --upgrade --python 3.14 machineconfig
65
+ # interactive install of machineconfig and following on to run it and make basic machine configuration (RECOMMENDED):
66
+ iex (iwr bit.ly/cfgwindows).Content # Or, if UV is installed: iex (uvx machineconfig define)
67
+ # Quick install and configure (optionals are accepted by default):
68
+ iex (iwr bit.ly/cfgwq).Content
71
69
  ```
72
70
 
73
71
  # Install On Linux and MacOS
74
72
 
75
73
  ```bash
76
- # Temporary install:
77
- . <(curl -L bit.ly/cfglinux)
78
- # Or, if UV is installed:
79
- . <(uvx machineconfig define)
80
- # Permanent install:
74
+ # install tool the tool only:
81
75
  curl -LsSf https://astral.sh/uv/install.sh | sh # Skip if UV is already installed
82
- uv tool install --upgrade --upgrade 3.14 machineconfig
76
+ uv tool install --upgrade --python 3.14 machineconfig
77
+ # interactive install of machineconfig and following on to run it and make basic machine configuration (RECOMMENDED):
78
+ . <(curl -L bit.ly/cfglinux) # Or, if UV is installed: . <(uvx machineconfig define)
83
79
  ```
84
80
 
85
81
 
@@ -51,11 +51,11 @@ machineconfig/cluster/templates/cli_trogon.py,sha256=PFWGy8SFYIhT9r3ZV4oIEYfImsQ
51
51
  machineconfig/jobs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
52
  machineconfig/jobs/installer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
53
53
  machineconfig/jobs/installer/check_installations.py,sha256=hkHmmT7Bx3_QWRn2v8dCKOzAapFzqHRzbe-Q08GLnKE,10743
54
- machineconfig/jobs/installer/installer_data.json,sha256=luCTMa15H3FIWO9cSc5Z2VTVud5lzV6wnk6oJKLPVm4,110054
55
- machineconfig/jobs/installer/package_groups.py,sha256=QZ9Baup-CjWOc29uBGL-fFfXMzUTy_Gyy-pQit-ST7k,4642
54
+ machineconfig/jobs/installer/installer_data.json,sha256=C9IwwiS29812Iwco2rEzANHebIpwbigiHtSdC3HB-Vc,110056
55
+ machineconfig/jobs/installer/package_groups.py,sha256=HUCnLV6s3qkGXjT4VomOUUzMSqrUX_aJibPfPUWhYrU,4720
56
56
  machineconfig/jobs/installer/custom/boxes.py,sha256=ws8QRbDn48oKhbQntr54I0nSfkwINbprjTy0HOpuX40,1974
57
57
  machineconfig/jobs/installer/custom/gh.py,sha256=gn7TUSrsLx7uqFqj1Z-iYglS0EYBSgtJ9jWHxaJIfXM,4119
58
- machineconfig/jobs/installer/custom/hx.py,sha256=8Vy7NNCiXsyG_xl78TAYPYpiISNCDFiVJJRSZceq1Fk,8729
58
+ machineconfig/jobs/installer/custom/hx.py,sha256=R1d7JrL6No-0VYivWX5LbTpaROyU7mw3l1stm20DCuU,8994
59
59
  machineconfig/jobs/installer/custom_dev/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
60
  machineconfig/jobs/installer/custom_dev/alacritty.py,sha256=STXertp5pE6VVhcjAfZSKBxAC94S2HAzas646jwd4ow,2754
61
61
  machineconfig/jobs/installer/custom_dev/brave.py,sha256=1WTUgEHlpzA9POK6hMeL4-ZxDs_PvLm9q_l19edI_K8,2887
@@ -69,7 +69,7 @@ machineconfig/jobs/installer/custom_dev/lvim.py,sha256=2-wbh_IClTFcFkSYk9EsRiv88
69
69
  machineconfig/jobs/installer/custom_dev/nerdfont.py,sha256=dsPmiqP9AJCack7mNeJ8Qzo4dSOwC0bsupH0Hn3gqSg,4149
70
70
  machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py,sha256=bVUPigzov1v87tgKY-lWz3HDEHMI8dSTNDgB7--0o80,5620
71
71
  machineconfig/jobs/installer/custom_dev/redis.py,sha256=bReDLsgy37eJyTU4TXE7FQpKFi-_usQC7bwhfXvZuBU,3259
72
- machineconfig/jobs/installer/custom_dev/sysabc.py,sha256=XbktwRZjIb0lNEuVoxiCUprMnHTKJZgmCWydxwZYRSk,6458
72
+ machineconfig/jobs/installer/custom_dev/sysabc.py,sha256=xF-JT_0T1tGzZDm9jP_576xss0xc1taw2k7Y6ZGr8Eg,6335
73
73
  machineconfig/jobs/installer/custom_dev/wezterm.py,sha256=GWVz4xJ419T2yT_uK7eH1lQjfu1db3CDKrD0Pd1ExYc,3190
74
74
  machineconfig/jobs/installer/custom_dev/winget.py,sha256=gLdwM20jKMf2bMV3BAcOg4MkuzwF09CU5OhXvLkPoHo,5738
75
75
  machineconfig/jobs/installer/linux_scripts/brave.sh,sha256=_al_D5iZSwtlDRTeqjjK37nEWai8mrHFk-cZeVws9MY,1389
@@ -111,14 +111,14 @@ machineconfig/scripts/nu/wrap_mcfg.nu,sha256=9heiUHVkHjI_AMXT5QJJixk7ZK_hJNV_A8l
111
111
  machineconfig/scripts/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
112
  machineconfig/scripts/python/agents.py,sha256=aVbLQDgpngXZm4taHcED4sAxyHvV2_Dz5VW3apPcQcY,10651
113
113
  machineconfig/scripts/python/cloud.py,sha256=yAD6ciKiEtv2CH3g2NScDK5cpCZQi7Vu8yyeehw_cU8,1263
114
- machineconfig/scripts/python/croshell.py,sha256=waWzSXV9L7ZKnup-QUb-NNoNAt6MOmOCFwOS7sksUsU,7132
114
+ machineconfig/scripts/python/croshell.py,sha256=uYzXdxeWznbORlwW5SZ_ADyPa-MLNMooVEN0zah69mc,7132
115
115
  machineconfig/scripts/python/define.py,sha256=AtuVac6tJeDMcxtbWmQh1TH3dYAPSGFdO51b75zJVeI,717
116
116
  machineconfig/scripts/python/devops.py,sha256=x7CnxOnZPSrCwjflnJ6sht1M7g0nzY2SxyPtmNputSA,2212
117
117
  machineconfig/scripts/python/devops_navigator.py,sha256=5Cm384D4S8_GsvMzTwr0C16D0ktf8_5Mk5bEJncwDO8,237
118
118
  machineconfig/scripts/python/explore.py,sha256=3kNglM1KYp57U8yrbWeHEslN458-xieRuFYsJAhrpIs,1247
119
119
  machineconfig/scripts/python/fire_jobs.py,sha256=zLLgPfqCSpXBeU5kC4XEcojscZFy-K0K3dbbGqkTczU,13135
120
120
  machineconfig/scripts/python/ftpx.py,sha256=8tmhKBZgSuhFZZYaT4JAIgeXMKmxJhxg5aJQFbbdtDg,9857
121
- machineconfig/scripts/python/interactive.py,sha256=2ETE45Ww9HHc6rudG-L9I2-N_mdOv9qMEdJ_05mhCz4,11268
121
+ machineconfig/scripts/python/interactive.py,sha256=nPnAydEv4S_twd0_Yetgc57a03GHWkjZXXc88XiNlew,11487
122
122
  machineconfig/scripts/python/machineconfig.py,sha256=l211lxHRcQ6BH7x3FwQHSJCYbYs6RJL5e0POjyWAW9A,3048
123
123
  machineconfig/scripts/python/msearch.py,sha256=3NbwJFJtrvPSVyOfa6ogPjD-NVuRJHeAQ1WriDXCduU,737
124
124
  machineconfig/scripts/python/sessions.py,sha256=Mex8Y2NM0Z3JiO7-qEKew9lA29FfUDo_tB3-1jJ79bs,9532
@@ -156,7 +156,7 @@ machineconfig/scripts/python/ai/solutions/opencode/opencode.json,sha256=nahHKRw1
156
156
  machineconfig/scripts/python/ai/solutions/opencode/opencode.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
157
157
  machineconfig/scripts/python/env_manager/__init__.py,sha256=E4LAHbU1wo2dLjE36ntv8U7QNTe8TasujUAYK9SLvWk,6
158
158
  machineconfig/scripts/python/env_manager/path_manager_backend.py,sha256=ZVGlGJALhg7zNABDdwXxL7MFbL2BXPebObipXSLGbic,1552
159
- machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=lDVvv5QRP8i456iaFLQ1T2JSkO05d-YgdJtDRoSwyRw,6932
159
+ machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=XPeHhS7eOYbpBkVgHPNAYkBP79CAjLt7Ct7wK4JSwJ0,6932
160
160
  machineconfig/scripts/python/helpers_agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
161
  machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py,sha256=YD6-rtudHNip8tx85amSmOZZIHBP9khq4az3dF41j6U,5934
162
162
  machineconfig/scripts/python/helpers_agents/fire_agents_help_search.py,sha256=qIfSS_su2YJ1Gb0_lu4cbjlJlYMBw0v52NTGiSrGjk8,2991
@@ -191,7 +191,7 @@ machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py,sha256=SL6P3Io
191
191
  machineconfig/scripts/python/helpers_devops/cli_data.py,sha256=79Xvx7YnbueruEnl69hrDg2AhVxf_zCUdlVcKfeMGyQ,1774
192
192
  machineconfig/scripts/python/helpers_devops/cli_nw.py,sha256=u_2l5Cc3dFnh0seKrbH9j-Z0bUCrgy45MOM6HCjgkQg,7562
193
193
  machineconfig/scripts/python/helpers_devops/cli_repos.py,sha256=mFrhosIFCCT70d82NYUxp9ta6BYeAHQNhsx7CEmWcg4,12478
194
- machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=-h8cTOMaWB0aaELne0_K_Q6iZV2FaaqzomeJNqX0kwc,6993
194
+ machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=8oGw1spvee1Q-cqTOyZlAXuiCRMJbAkkI1OBhCbSu1I,6993
195
195
  machineconfig/scripts/python/helpers_devops/cli_share_file.py,sha256=AL04784ncdP9ue5bKyqJfXrMksxjFKtuv_w353kQQsI,6298
196
196
  machineconfig/scripts/python/helpers_devops/cli_share_server.py,sha256=S2xQ7sDVvfvGKcJNlquXj9Gc0ofk2EXnfvpRx2AWVD8,6278
197
197
  machineconfig/scripts/python/helpers_devops/cli_terminal.py,sha256=k_PzXaiGyE0vXr0Ii1XcJz2A7UvyPJrR31TRWt4RKRI,6019
@@ -228,9 +228,9 @@ machineconfig/scripts/python/helpers_navigator/search_bar.py,sha256=kDi8Jhxap8wd
228
228
  machineconfig/scripts/python/helpers_repos/action.py,sha256=8je051kpGZ7A_GRsQyWKhPZ8xVW7tSm4bnPu6VjxaXk,9755
229
229
  machineconfig/scripts/python/helpers_repos/action_helper.py,sha256=XRCtkGkNrxauqUd9qkxtfJt02Mx2gejSYDLL0jyWn24,6176
230
230
  machineconfig/scripts/python/helpers_repos/clone.py,sha256=9RZgs2OD2RUH6UiZKCuUvRyweDBomAm2lDG2qJmhry0,5436
231
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=YhvFMhs0lU40iGsx0tM_K3Ro0nunScnp4-87R39Au_g,11271
231
+ machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=XQs1obGuFBB9VTxhS-chhRki9-KqkWNgtDxfJf2Fxt8,11271
232
232
  machineconfig/scripts/python/helpers_repos/count_lines.py,sha256=Q5c7b-DxvTlQmljoic7niTuiAVyFlwYvkVQ7uRJHiTo,16009
233
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=LYsQdW45aj6xF8kY2PZTgr1sTl7-IEPgqqIjKuBxCBY,607
233
+ machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=EJ9-m5iym0pws5qdvL61oLk6Ns41dVVSnK9oR7U3qnM,607
234
234
  machineconfig/scripts/python/helpers_repos/entrypoint.py,sha256=WYEFGUJp9HWImlFjbs_hiFZrUqM_KEYm5VvSUjWd04I,2810
235
235
  machineconfig/scripts/python/helpers_repos/grource.py,sha256=lHxyfsIQr4pbu71Ekqu-9nohR7LXbN2wufw7LPTyOgM,14639
236
236
  machineconfig/scripts/python/helpers_repos/record.py,sha256=FQo0swuJZOp0I2XGK-t1OQU4zJHmQ2z9zTpDD30Tmg4,11001
@@ -238,7 +238,7 @@ machineconfig/scripts/python/helpers_repos/sync.py,sha256=P0P7Dog2uFDvwxcLP3YHPw
238
238
  machineconfig/scripts/python/helpers_repos/update.py,sha256=cUIMUMm-50HrY6fzxSMZnFplhToVjVPZMm1j_otTha4,11060
239
239
  machineconfig/scripts/python/helpers_sessions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
240
240
  machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py,sha256=F6D-e0v405UFy-aj_pNWudxZkstPvjYR0UXLx-PR8Ms,3136
241
- machineconfig/scripts/python/helpers_utils/path.py,sha256=HQS9d7acowaN2MH8EFxVSH20lGWJsXnGgpXxEMOALPA,3982
241
+ machineconfig/scripts/python/helpers_utils/path.py,sha256=VSdwuJRS5AvQY0MezG4mp9fAGUn5YRrgy9bSXAflPQI,3982
242
242
  machineconfig/scripts/python/nw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
243
243
  machineconfig/scripts/python/nw/add_ssh_key.py,sha256=9JLmWu8pE7PAL5VuCFd19iVEdCR90LwY6_9P7gKQzEE,9373
244
244
  machineconfig/scripts/python/nw/devops_add_identity.py,sha256=aPjcHbTLhxYwWYcandyAHdwuO15ZBu3fB82u6bI0tMQ,3773
@@ -259,7 +259,7 @@ machineconfig/scripts/windows/wrap_mcfg.ps1,sha256=tFCj4wK7B35Uf6kdGCRV7EIr1xZFT
259
259
  machineconfig/scripts/windows/mounts/mount_nfs.ps1,sha256=XrAdzpxE6a4OccSmWJ7YWHJTnsZK8uXnFE5j9GOPA20,2026
260
260
  machineconfig/scripts/windows/mounts/mount_nw.ps1,sha256=puxcfZc3ZCJerm8pj8OZGVoTYkhzp-h7oV-MrksSqIE,454
261
261
  machineconfig/scripts/windows/mounts/mount_smb.ps1,sha256=PzYWpIO9BpwXjdWlUQL9pnMRnOGNSkxfh4bHukJFme8,69
262
- machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=oIw4jEALYu5u1gevCph8N41y5Vq1Jllnc81NNuXJvWs,322
262
+ machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=AggbHLu8HQ_qTn2yNC7TkVbn3YgIoBYW0btNIHvh1JM,322
263
263
  machineconfig/scripts/windows/mounts/share_cloud.cmd,sha256=exD7JCdxw2LqVjw2MKCYHbVZlEqmelXtwnATng-dhJ4,1028
264
264
  machineconfig/scripts/windows/mounts/share_smb.ps1,sha256=U7x8ULYSjbgzTtiHNSKQuTaZ_apilDvkGV5Xm5hXk5M,384
265
265
  machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1,sha256=Wv-SLscdckV-1mG3p82VXKPY9zW3hgkRmcLUXIZ1daE,253
@@ -287,7 +287,6 @@ machineconfig/settings/lf/linux/autocall/paste.sh,sha256=47DEQpj8HBSa-_TImW-5JCe
287
287
  machineconfig/settings/lf/linux/autocall/pre-cd.sh,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
288
288
  machineconfig/settings/lf/linux/autocall/rename.sh,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
289
289
  machineconfig/settings/lf/linux/exe/cleaner.sh,sha256=NKK30rUcrHXnwy8srylyaWL-XJdDWJIjF4a3mfbdEsA,209
290
- machineconfig/settings/lf/linux/exe/fzf_nano.sh,sha256=aqYZ2mb-gLu4C6Ct-Tntfb9Xz6LcIYu3hVjQ_EmTXoI,599
291
290
  machineconfig/settings/lf/linux/exe/leftpane_previewer.sh,sha256=KXMq81hIvU9uzOuanluVcxVgJmEOYy-5sUbzcuc9b6U,200
292
291
  machineconfig/settings/lf/linux/exe/lfcd.sh,sha256=qU2AtGR22UWR3Isw5UkJ4OZdxW2VFR3FOaIEJDVjYTg,771
293
292
  machineconfig/settings/lf/linux/exe/previewer.sh,sha256=sjiU6S_P8ExSmCPGz-Uwmrrn075rBmj_-3H4Cvr-ROI,1259
@@ -345,7 +344,7 @@ machineconfig/settings/shells/pwsh/init.ps1,sha256=T0Zw9mfQa8rgDTxRk40UbzBq-7gkM
345
344
  machineconfig/settings/shells/pwsh/profile.ps1,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
346
345
  machineconfig/settings/shells/starship/starship.toml,sha256=d5lWKC0AnTcriRAZV1opEZy76QknSpKFgJ3jyW9_vZ0,1305
347
346
  machineconfig/settings/shells/vtm/settings.xml,sha256=5TNXd-i0eUGo2w3tuhY9aOkwoJdqih8_HO_U6uL2Dts,18262
348
- machineconfig/settings/shells/wezterm/wezterm.lua,sha256=ZaUFqVNibGD5cyzlnYhIMAakTig6P7qggi5hvHGASPk,6210
347
+ machineconfig/settings/shells/wezterm/wezterm.lua,sha256=Ab4MLm2Yqct0LWGK4kzfQWt6fbAfZcnjg3n8p_vf0_w,6293
349
348
  machineconfig/settings/shells/wt/settings.json,sha256=Nzk9IpD-Bp36wKJAgG7XAa0GVwW3I29xNjUW5AYfxEI,10599
350
349
  machineconfig/settings/shells/zsh/init.sh,sha256=LcT8AOecHoCtmmkXkSlAROJy-xD1re6wvPEIEzgPN5U,3054
351
350
  machineconfig/settings/streamlit/config.toml,sha256=O3d4ax88hoW7gm5r51xmCcPssQ8ol-oFz_d0NUDlU4k,483
@@ -361,7 +360,7 @@ machineconfig/settings/yazi/keymap_linux.toml,sha256=DFLc_KcyaskQT26Y5eNsvUOPbQe
361
360
  machineconfig/settings/yazi/keymap_windows.toml,sha256=i8tWQwpvA7XE2DAKbjKaaUigsT5hmNqK9OipcgIOZDo,2023
362
361
  machineconfig/settings/yazi/theme.toml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
363
362
  machineconfig/settings/yazi/yazi.toml,sha256=KRGbjMkCmbCdTRxEXJXd5gI1kTEQK7VtDGm1MXsOJDw,234
364
- machineconfig/settings/yazi/shell/yazi_cd.ps1,sha256=gvXZyD2Csil8KjaMtrx5ZkF9AqRt0LaVfTL724vxMCE,312
363
+ machineconfig/settings/yazi/shell/yazi_cd.ps1,sha256=-H6tPmalGlUEmYybFgk51d_MfA3Q01Emf8lVXzKQsi0,1604
365
364
  machineconfig/settings/yazi/shell/yazi_cd.sh,sha256=oC_MSBbnSwCg6qgGe598Qhm0V2B9RD5IcIbKEabn7aE,208
366
365
  machineconfig/settings/zed/settings.json,sha256=WYuoJycLVhM1-_Haq2VlERds3W7LZFzJ1qJp7lwhnos,789
367
366
  machineconfig/settings/zellij/config.kdl,sha256=J1FOE2hSinVG26LPlvMhTBWKjZAw_2wcoSEZrwKgn5M,10329
@@ -382,7 +381,7 @@ machineconfig/setup_linux/others/cli_installation.sh,sha256=gVvszYZJgKPRJx2SEaE3
382
381
  machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh,sha256=F5dbg0n9RHsKGPn8fIdZMn3p0RrHEkb8rWBGsdVGbus,1207
383
382
  machineconfig/setup_linux/ssh/openssh_all.sh,sha256=3dg6HEUFbHQOzLfSAtzK_D_GB8rGCCp_aBnxNdnidVc,824
384
383
  machineconfig/setup_linux/ssh/openssh_wsl.sh,sha256=1eeRGrloVB34K5z8yWVUMG5b9pV-WBfHgV9jqXiYgCQ,1398
385
- machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=kIB8ljsaY5VgppD74MbljiXAj0kKswo7vPB_z78tp6M,1593
384
+ machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=ezbGhAov4Cctmfw7CYk7-epshdavBQq8S6O4570BkMQ,1606
386
385
  machineconfig/setup_mac/__init__.py,sha256=PfdhwY4Ss-rfP7b4-9fvKwxCDtNAd-u1JdhFYnE7CwI,518
387
386
  machineconfig/setup_mac/apps_gui.sh,sha256=3alvddg918oMlJB2aUWJWpGGoaq5atlxcaOwhnyXlRI,9517
388
387
  machineconfig/setup_mac/uv.sh,sha256=CSN8oCBKS-LK1vJJqYOhAMcrouTf4Q_F3cpplc_ddMA,1157
@@ -397,8 +396,8 @@ machineconfig/setup_windows/ssh/add_identity.ps1,sha256=b8ZXpmNUSw3IMYvqSY7ClpdW
397
396
  machineconfig/setup_windows/ssh/openssh-server.ps1,sha256=OMlYQdvuJQNxF5EILLPizB6BZAT3jAmDsv1WcVVxpFQ,2529
398
397
  machineconfig/setup_windows/ssh/openssh-server_add_key.ps1,sha256=91cL3K4H2saAuzOS1GxGicpc64ZDpgvPY39YPBWyxZI,269
399
398
  machineconfig/setup_windows/ssh/openssh-server_copy-ssh-id.ps1,sha256=-7pElYiGFXUvO4dp6rW0LXmNo65h3hFTHJWyHbmO3Xc,745
400
- machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=Kggucxn-yH6K2mfDR8_qvJvGlRCqlppsO0x1l0zyXfY,1926
401
- machineconfig/setup_windows/web_shortcuts/quick_init.ps1,sha256=8a5O6sFHkPxNpQxYn8hTqyS5otUZXDWLuMB0AJhJSgA,628
399
+ machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=8369NWE412ieGBcNzRYz0SeJI4sMS_GF2YKsyEdZ8uY,1939
400
+ machineconfig/setup_windows/web_shortcuts/quick_init.ps1,sha256=8TOw-ZxaWA6mZkOICAQtpQfqB2fUyD4HVfqokpxCCqI,655
402
401
  machineconfig/setup_windows/wt_and_pwsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
403
402
  machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py,sha256=ogxJnwpdcpH7N6dFJu95UCNoGYirZKQho_3X0F_hmXs,6791
404
403
  machineconfig/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -416,7 +415,7 @@ machineconfig/utils/procs.py,sha256=YPA_vEYQGwPd_o_Lc6nOTBo5BrB1tSs8PJ42XiGpenM,
416
415
  machineconfig/utils/scheduler.py,sha256=fguwvINyaupOxdU5Uadyxalh_jXTXDzt0ioEgjEOKcM,14705
417
416
  machineconfig/utils/scheduling.py,sha256=vcJgajeJPSWkJNlarYJSmLvasdOuCtBM4druOAB1Nwc,11089
418
417
  machineconfig/utils/source_of_truth.py,sha256=ZAnCRltiM07ig--P6g9_6nEAvNFC4X4ERFTVcvpIYsE,764
419
- machineconfig/utils/ssh.py,sha256=af9xHcYql72FnlPYY7xdVTh7iUaI6uzcs38zlEMjvVc,39262
418
+ machineconfig/utils/ssh.py,sha256=nCCyJAKyFdv0xnMMROGeMK-MKDPiyebVtOpZ1iOsxJg,39262
420
419
  machineconfig/utils/terminal.py,sha256=VDgsjTjBmMGgZN0YIc0pJ8YksLDrBtiXON1EThy7_is,4264
421
420
  machineconfig/utils/tst.py,sha256=6u1GI49NdcpxH2BYGAusNfY5q9G_ytCGVzFM5b6HYpM,674
422
421
  machineconfig/utils/upgrade_packages.py,sha256=e4iJn_9vL2zCJxAR2dhKJjM0__ALKgI5yB1uBRxSjhQ,6994
@@ -445,8 +444,8 @@ machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoS
445
444
  machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
446
445
  machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
447
446
  machineconfig/utils/ssh_utils/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
448
- machineconfig-7.53.dist-info/METADATA,sha256=uCv760DWGE5f7PscWiuQSWdigpY84ZxH6Zpnf4hUcSs,3466
449
- machineconfig-7.53.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
450
- machineconfig-7.53.dist-info/entry_points.txt,sha256=_JNgkzaa_gVAWyZ6UwPwXXQqURRSvAGhrVQ1RiU2sHc,746
451
- machineconfig-7.53.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
452
- machineconfig-7.53.dist-info/RECORD,,
447
+ machineconfig-7.55.dist-info/METADATA,sha256=-cP7Etyg42MQdY9EXG7XvVTQmJKoZaMeqyyABCBTuuw,3743
448
+ machineconfig-7.55.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
449
+ machineconfig-7.55.dist-info/entry_points.txt,sha256=_JNgkzaa_gVAWyZ6UwPwXXQqURRSvAGhrVQ1RiU2sHc,746
450
+ machineconfig-7.55.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
451
+ machineconfig-7.55.dist-info/RECORD,,
@@ -1,16 +0,0 @@
1
- #!/bin/sh
2
- # 🔍 Fuzzy Finder with Nano Editor Integration
3
-
4
- # 📝 Open selected file in nano
5
- nano (fzf2g) # space used for precedence in execution
6
-
7
- # 💡 Alternative commands (commented):
8
- # 🔎 FZF with bat preview:
9
- # fzf --ansi --preview-window 'right:60%' --preview 'bat --color=always --style=numbers,grid,header --line-range :300 {}'
10
-
11
- # 🪟 Windows Git Bash version:
12
- # & "C:\Program Files\Git\usr\bin\nano.exe" (fzf --ansi --preview-window 'right:60%' --preview 'bat --color=always --style=numbers,grid,header --line-range :300 {}')
13
-
14
- # 📜 PowerShell script integration:
15
- # fzf | nano.ps1
16
-