machineconfig 7.44__py3-none-any.whl → 7.47__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/jobs/installer/custom/hx.py +60 -8
- machineconfig/jobs/installer/installer_data.json +17 -0
- machineconfig/jobs/installer/package_groups.py +6 -5
- machineconfig/profile/create_helper.py +53 -17
- machineconfig/profile/mapper.toml +1 -0
- machineconfig/scripts/python/croshell.py +4 -4
- machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
- machineconfig/scripts/python/helpers_devops/cli_config.py +1 -1
- machineconfig/scripts/python/helpers_devops/cli_repos.py +1 -1
- machineconfig/scripts/python/helpers_devops/cli_self.py +3 -3
- machineconfig/scripts/python/helpers_devops/cli_utils.py +26 -30
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +1 -1
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +1 -1
- machineconfig/scripts/python/helpers_repos/grource.py +1 -1
- machineconfig/scripts/python/utils.py +3 -1
- machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
- machineconfig/settings/broot/conf.toml +1 -1
- machineconfig/settings/helix/config.toml +6 -4
- machineconfig/settings/helix/languages.toml +13 -4
- machineconfig/settings/helix/yazi-picker.sh +12 -0
- machineconfig/settings/shells/bash/init.sh +2 -2
- machineconfig/settings/shells/pwsh/init.ps1 +4 -3
- machineconfig/settings/shells/zsh/init.sh +17 -12
- machineconfig/settings/yazi/init.lua +26 -26
- machineconfig/settings/yazi/keymap.toml +33 -6
- machineconfig/settings/yazi/shell/yazi_cd.ps1 +9 -0
- machineconfig/settings/yazi/yazi.toml +5 -0
- machineconfig/setup_linux/web_shortcuts/interactive.sh +10 -10
- machineconfig/setup_windows/apps.ps1 +2 -2
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +10 -10
- machineconfig/utils/ssh.py +1 -1
- {machineconfig-7.44.dist-info → machineconfig-7.47.dist-info}/METADATA +1 -1
- {machineconfig-7.44.dist-info → machineconfig-7.47.dist-info}/RECORD +36 -34
- {machineconfig-7.44.dist-info → machineconfig-7.47.dist-info}/WHEEL +0 -0
- {machineconfig-7.44.dist-info → machineconfig-7.47.dist-info}/entry_points.txt +0 -0
- {machineconfig-7.44.dist-info → machineconfig-7.47.dist-info}/top_level.txt +0 -0
|
@@ -33,7 +33,7 @@ config_dict: InstallerData = {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
|
|
36
|
-
def main(installer_data: InstallerData, version: Optional[str], install_lib: bool =
|
|
36
|
+
def main(installer_data: InstallerData, version: Optional[str], install_lib: bool = True):
|
|
37
37
|
_ = installer_data
|
|
38
38
|
console = Console()
|
|
39
39
|
|
|
@@ -73,9 +73,6 @@ def main(installer_data: InstallerData, version: Optional[str], install_lib: boo
|
|
|
73
73
|
print("\n🗑️ [Step 3/5] Cleaning up previous installation (if any)...")
|
|
74
74
|
runtime_path = PathExtended.home().joinpath(".config/helix/runtime")
|
|
75
75
|
contrib_path = PathExtended.home().joinpath(".config/helix/contrib")
|
|
76
|
-
runtime_path.delete(sure=True, verbose=False)
|
|
77
|
-
contrib_path.delete(sure=True, verbose=False)
|
|
78
|
-
print(f" ✨ Cleaned '{runtime_path}' and '{contrib_path}'.")
|
|
79
76
|
|
|
80
77
|
print("\n📦 [Step 4/5] Installing Helix components...")
|
|
81
78
|
target_config_dir = PathExtended.home().joinpath(".config/helix").expanduser()
|
|
@@ -85,9 +82,40 @@ def main(installer_data: InstallerData, version: Optional[str], install_lib: boo
|
|
|
85
82
|
target_bin_path = PathExtended(LINUX_INSTALL_PATH) if platform.system() == "Linux" else PathExtended("/usr/local/bin")
|
|
86
83
|
exe_name = "hx"
|
|
87
84
|
hx_file.move(folder=target_bin_path, overwrite=True)
|
|
85
|
+
|
|
86
|
+
# Always install contrib (regardless of install_lib flag) — treat it like the executable.
|
|
87
|
+
contrib_path.delete(sure=True, verbose=False)
|
|
88
|
+
contrib.move(folder=target_config_dir, overwrite=True)
|
|
89
|
+
|
|
90
|
+
# Install runtime only if install_lib is True. When copying runtime, copy all subfolders
|
|
91
|
+
# except 'grammars' (for which we only copy the specific python.so file if present).
|
|
88
92
|
if install_lib:
|
|
89
|
-
|
|
90
|
-
|
|
93
|
+
runtime_path.delete(sure=True, verbose=False)
|
|
94
|
+
print(f" ✨ Cleaned '{runtime_path}' and '{contrib_path}'.")
|
|
95
|
+
target_runtime = target_config_dir.joinpath("runtime")
|
|
96
|
+
target_runtime.mkdir(parents=True, exist_ok=True)
|
|
97
|
+
|
|
98
|
+
# iterate runtime children and copy selectively
|
|
99
|
+
for child in runtime.iterdir():
|
|
100
|
+
# skip non-existent or weird entries
|
|
101
|
+
if not child.exists():
|
|
102
|
+
continue
|
|
103
|
+
if child.name == "grammars":
|
|
104
|
+
# copy only the python.so file from runtime/grammars if it exists
|
|
105
|
+
python_so = child.joinpath("python.so")
|
|
106
|
+
if python_so.exists() and python_so.is_file():
|
|
107
|
+
dest = target_runtime.joinpath("grammars")
|
|
108
|
+
python_so.copy(folder=dest, overwrite=True)
|
|
109
|
+
else:
|
|
110
|
+
# copy the whole child (file or directory) into target_runtime
|
|
111
|
+
# for directories, copy will create target_runtime/<child.name>
|
|
112
|
+
try:
|
|
113
|
+
child.copy(folder=target_runtime, overwrite=True)
|
|
114
|
+
except Exception:
|
|
115
|
+
# fallback: try copying contents if it's a directory
|
|
116
|
+
if child.is_dir():
|
|
117
|
+
for sub in child.iterdir():
|
|
118
|
+
sub.copy(folder=target_runtime.joinpath(child.name), overwrite=True)
|
|
91
119
|
system_name = "Linux" if platform.system() == "Linux" else "macOS"
|
|
92
120
|
console.print(
|
|
93
121
|
Panel(
|
|
@@ -103,9 +131,33 @@ def main(installer_data: InstallerData, version: Optional[str], install_lib: boo
|
|
|
103
131
|
target_bin_path = PathExtended(WINDOWS_INSTALL_PATH)
|
|
104
132
|
exe_name = "hx.exe"
|
|
105
133
|
hx_file.move(folder=target_bin_path, overwrite=True)
|
|
134
|
+
|
|
135
|
+
# Always install contrib (regardless of install_lib flag)
|
|
136
|
+
contrib_path.delete(sure=True, verbose=False)
|
|
137
|
+
contrib.move(folder=target_config_dir, overwrite=True)
|
|
138
|
+
|
|
139
|
+
# Install runtime only if install_lib is True. Copy selectively as on POSIX.
|
|
106
140
|
if install_lib:
|
|
107
|
-
|
|
108
|
-
|
|
141
|
+
runtime_path.delete(sure=True, verbose=False)
|
|
142
|
+
print(f" ✨ Cleaned '{runtime_path}' and '{contrib_path}'.")
|
|
143
|
+
target_runtime = target_config_dir.joinpath("runtime")
|
|
144
|
+
target_runtime.mkdir(parents=True, exist_ok=True)
|
|
145
|
+
|
|
146
|
+
for child in runtime.iterdir():
|
|
147
|
+
if not child.exists():
|
|
148
|
+
continue
|
|
149
|
+
if child.name == "grammars":
|
|
150
|
+
python_so = child.joinpath("python.so")
|
|
151
|
+
if python_so.exists() and python_so.is_file():
|
|
152
|
+
dest = target_runtime.joinpath("grammars")
|
|
153
|
+
python_so.copy(folder=dest, overwrite=True)
|
|
154
|
+
else:
|
|
155
|
+
try:
|
|
156
|
+
child.copy(folder=target_runtime, overwrite=True)
|
|
157
|
+
except Exception:
|
|
158
|
+
if child.is_dir():
|
|
159
|
+
for sub in child.iterdir():
|
|
160
|
+
sub.copy(folder=target_runtime.joinpath(child.name), overwrite=True)
|
|
109
161
|
console.print(
|
|
110
162
|
Panel(
|
|
111
163
|
f"""✅ SUCCESS | Helix editor installed successfully on Windows!
|
|
@@ -2246,6 +2246,23 @@
|
|
|
2246
2246
|
}
|
|
2247
2247
|
}
|
|
2248
2248
|
},
|
|
2249
|
+
{
|
|
2250
|
+
"appName": "aichat",
|
|
2251
|
+
"repoURL": "https://github.com/sigoden/aichat",
|
|
2252
|
+
"doc": "Terminal-based CLI agents and tools for productivity and coding.",
|
|
2253
|
+
"fileNamePattern": {
|
|
2254
|
+
"amd64": {
|
|
2255
|
+
"linux": "aichat-{version}-x86_64-unknown-linux-musl.tar.gz",
|
|
2256
|
+
"macos": "aichat-{version}-x86_64-apple-darwin.tar.gz",
|
|
2257
|
+
"windows": "aichat-{version}-x86_64-pc-windows-msvc.zip"
|
|
2258
|
+
},
|
|
2259
|
+
"arm64": {
|
|
2260
|
+
"linux": "aichat-{version}-aarch64-unknown-linux-musl.tar.gz",
|
|
2261
|
+
"macos": "aichat-{version}-aarch64-apple-darwin.tar.gz",
|
|
2262
|
+
"windows": "aichat-{version}-aarch64-pc-windows-msvc.zip"
|
|
2263
|
+
}
|
|
2264
|
+
}
|
|
2265
|
+
},
|
|
2249
2266
|
{
|
|
2250
2267
|
"appName": "qwen-code",
|
|
2251
2268
|
"repoURL": "CMD",
|
|
@@ -3,6 +3,7 @@ from typing import Literal, TypeAlias, Union
|
|
|
3
3
|
# AI/LLM Tools - AI-powered coding and chat assistants
|
|
4
4
|
AGENTS = [
|
|
5
5
|
"aider",
|
|
6
|
+
"aichat",
|
|
6
7
|
"copilot",
|
|
7
8
|
"gemini",
|
|
8
9
|
"crush",
|
|
@@ -144,7 +145,6 @@ PACKAGES_MISC_DEV = [
|
|
|
144
145
|
"Gorilla",
|
|
145
146
|
"Redis",
|
|
146
147
|
"transmission",
|
|
147
|
-
"exa",
|
|
148
148
|
"bytehound",
|
|
149
149
|
"atuin",
|
|
150
150
|
"xcrawl3r",
|
|
@@ -187,11 +187,12 @@ PACKAGES_FILE = [
|
|
|
187
187
|
"pistol",
|
|
188
188
|
"bat",
|
|
189
189
|
"viu",
|
|
190
|
-
"xplr",
|
|
191
|
-
"joshuto",
|
|
192
|
-
"lf",
|
|
193
|
-
"tere",
|
|
190
|
+
# "xplr",
|
|
191
|
+
# "joshuto",
|
|
192
|
+
# "lf",
|
|
194
193
|
"yazi",
|
|
194
|
+
"tere",
|
|
195
|
+
# "exa",
|
|
195
196
|
"lsd",
|
|
196
197
|
"zoxide",
|
|
197
198
|
"diskonaut",
|
|
@@ -1,38 +1,74 @@
|
|
|
1
1
|
|
|
2
2
|
from typing import Literal
|
|
3
|
+
from pathlib import Path
|
|
4
|
+
import shutil
|
|
3
5
|
from machineconfig.utils.source_of_truth import LIBRARY_ROOT, CONFIG_ROOT
|
|
4
6
|
|
|
5
7
|
|
|
6
|
-
def
|
|
7
|
-
|
|
8
|
+
def _copy_path(source: Path, target: Path, overwrite: bool = False) -> None:
|
|
9
|
+
source = source.expanduser().resolve()
|
|
10
|
+
target = target.expanduser().resolve()
|
|
11
|
+
if not source.exists():
|
|
12
|
+
raise FileNotFoundError(f"Source path does not exist: {source}")
|
|
13
|
+
target.parent.mkdir(parents=True, exist_ok=True)
|
|
14
|
+
if target.exists() and not overwrite:
|
|
15
|
+
raise FileExistsError(f"Target already exists and overwrite=False: {target}")
|
|
16
|
+
if target.exists() and overwrite:
|
|
17
|
+
if target.is_dir():
|
|
18
|
+
shutil.rmtree(target)
|
|
19
|
+
else:
|
|
20
|
+
target.unlink()
|
|
21
|
+
if source.is_file():
|
|
22
|
+
shutil.copy2(source, target)
|
|
23
|
+
elif source.is_dir():
|
|
24
|
+
shutil.copytree(source, target, dirs_exist_ok=overwrite)
|
|
25
|
+
else:
|
|
26
|
+
raise ValueError(f"Source is neither file nor directory: {source}")
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
def copy_assets_to_machine(which: Literal["scripts", "settings"]) -> None:
|
|
8
30
|
import platform
|
|
9
|
-
|
|
31
|
+
import subprocess
|
|
32
|
+
|
|
33
|
+
system_name = platform.system().lower()
|
|
34
|
+
if system_name == "windows":
|
|
10
35
|
system = "windows"
|
|
11
|
-
elif
|
|
36
|
+
elif system_name in {"linux", "darwin"}:
|
|
12
37
|
system = "linux"
|
|
13
38
|
else:
|
|
14
|
-
raise NotImplementedError(f"System {
|
|
15
|
-
|
|
39
|
+
raise NotImplementedError(f"System {system_name} not supported")
|
|
40
|
+
|
|
16
41
|
match which:
|
|
17
42
|
case "scripts":
|
|
18
43
|
source = LIBRARY_ROOT.joinpath("scripts", system)
|
|
19
|
-
target = CONFIG_ROOT.joinpath("scripts"
|
|
20
|
-
|
|
21
|
-
|
|
44
|
+
target = CONFIG_ROOT.joinpath("scripts")
|
|
45
|
+
|
|
46
|
+
wrap_mcfg_source = LIBRARY_ROOT.joinpath("scripts", "nu", "wrap_mcfg.nu")
|
|
47
|
+
wrap_mcfg_target = CONFIG_ROOT.joinpath("scripts", "wrap_mcfg.nu")
|
|
48
|
+
wrap_mcfg_target.parent.mkdir(parents=True, exist_ok=True)
|
|
49
|
+
_copy_path(source=wrap_mcfg_source, target=wrap_mcfg_target, overwrite=True)
|
|
22
50
|
case "settings":
|
|
23
51
|
source = LIBRARY_ROOT.joinpath("settings")
|
|
24
52
|
target = CONFIG_ROOT.joinpath("settings")
|
|
25
53
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
system = platform.system().lower()
|
|
30
|
-
if system == "linux" and which == "scripts":
|
|
31
|
-
import subprocess
|
|
54
|
+
_copy_path(source=source, target=target, overwrite=True)
|
|
55
|
+
|
|
56
|
+
if system_name == "linux" and which == "scripts":
|
|
32
57
|
from rich.console import Console
|
|
33
58
|
console = Console()
|
|
34
59
|
console.print("\n[bold]📜 Setting executable permissions for scripts...[/bold]")
|
|
35
|
-
|
|
60
|
+
scripts_path = CONFIG_ROOT.joinpath("scripts")
|
|
61
|
+
subprocess.run(f"chmod +x {scripts_path} -R", shell=True, capture_output=True, text=True, check=False)
|
|
36
62
|
console.print("[green]✅ Script permissions updated[/green]")
|
|
37
63
|
|
|
38
|
-
|
|
64
|
+
home_dir = Path.home()
|
|
65
|
+
if system_name == "windows":
|
|
66
|
+
yazi_plugins_dir = home_dir.joinpath("AppData", "Roaming", "yazi", "config")
|
|
67
|
+
else:
|
|
68
|
+
yazi_plugins_dir = home_dir.joinpath(".config", "yazi")
|
|
69
|
+
|
|
70
|
+
yazi_plugins_path = yazi_plugins_dir.joinpath("plugins")
|
|
71
|
+
if not yazi_plugins_path.exists():
|
|
72
|
+
yazi_plugins_dir.mkdir(parents=True, exist_ok=True)
|
|
73
|
+
import git
|
|
74
|
+
git.Repo.clone_from("https://github.com/yazi-rs/plugins", yazi_plugins_path)
|
|
@@ -229,6 +229,7 @@ config = { this = '~/AppData/Roaming/helix/config.toml', to_this = 'CONFIG_ROOT/
|
|
|
229
229
|
[helix_linux]
|
|
230
230
|
languages = { this = '~/.config/helix/languages.toml', to_this = 'CONFIG_ROOT/settings/helix/languages.toml' }
|
|
231
231
|
config = { this = '~/.config/helix/config.toml', to_this = 'CONFIG_ROOT/settings/helix/config.toml' }
|
|
232
|
+
yazi_picker = { this = '~/.config/helix/yazi-picker.sh', to_this = 'CONFIG_ROOT/settings/helix/yazi-picker.sh' }
|
|
232
233
|
|
|
233
234
|
[lvim_windows]
|
|
234
235
|
config = { this = '~/AppData/Local/lvim/config.lua', to_this = 'CONFIG_ROOT/settings/lvim/windows/config.lua' }
|
|
@@ -130,7 +130,7 @@ def croshell(
|
|
|
130
130
|
fire_line = f"uv run --python 3.14 --with visidata,pyarrow vd {str(file_obj)}"
|
|
131
131
|
elif marimo:
|
|
132
132
|
if Path.home().joinpath("code/machineconfig").exists(): requirements = f"""--with marimo --project "{str(Path.home().joinpath("code/machineconfig"))}" """
|
|
133
|
-
else: requirements = """--python 3.14 --with "marimo,machineconfig[plot]>=7.
|
|
133
|
+
else: requirements = """--python 3.14 --with "marimo,machineconfig[plot]>=7.47" """
|
|
134
134
|
fire_line = f"""
|
|
135
135
|
cd {str(pyfile.parent)}
|
|
136
136
|
uv run --python 3.14 --with "marimo" marimo convert {pyfile.name} -o marimo_nb.py
|
|
@@ -138,14 +138,14 @@ uv run {requirements} marimo edit --host 0.0.0.0 marimo_nb.py
|
|
|
138
138
|
"""
|
|
139
139
|
elif jupyter:
|
|
140
140
|
if Path.home().joinpath("code/machineconfig").exists(): requirements = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" --with jupyterlab """
|
|
141
|
-
else: requirements = """--with "machineconfig[plot]>=7.
|
|
141
|
+
else: requirements = """--with "machineconfig[plot]>=7.47" """
|
|
142
142
|
fire_line = f"uv run {requirements} jupyter-lab {str(nb_target)}"
|
|
143
143
|
elif vscode:
|
|
144
144
|
fire_line = f"""
|
|
145
145
|
cd {str(pyfile.parent)}
|
|
146
146
|
uv init --python 3.14
|
|
147
147
|
uv venv
|
|
148
|
-
uv add "machineconfig[plot]>=7.
|
|
148
|
+
uv add "machineconfig[plot]>=7.47"
|
|
149
149
|
# code serve-web
|
|
150
150
|
code --new-window {str(pyfile)}
|
|
151
151
|
"""
|
|
@@ -153,7 +153,7 @@ code --new-window {str(pyfile)}
|
|
|
153
153
|
if interpreter == "ipython": profile = f" --profile {ipython_profile} --no-banner"
|
|
154
154
|
else: profile = ""
|
|
155
155
|
if Path.home().joinpath("code/machineconfig").exists(): ve_line = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" """
|
|
156
|
-
else: ve_line = """--python 3.14 --with "machineconfig[plot]>=7.
|
|
156
|
+
else: ve_line = """--python 3.14 --with "machineconfig[plot]>=7.47" """
|
|
157
157
|
# ve_path_maybe, ipython_profile_maybe = get_ve_path_and_ipython_profile(Path.cwd())
|
|
158
158
|
# --python 3.14
|
|
159
159
|
fire_line = f"uv run {ve_line} {interpreter} {interactivity} {profile} {str(pyfile)}"
|
|
@@ -29,7 +29,7 @@ def path():
|
|
|
29
29
|
uv_with = ["textual"]
|
|
30
30
|
uv_project_dir = None
|
|
31
31
|
if not Path.home().joinpath("code/machineconfig").exists():
|
|
32
|
-
uv_with.append("machineconfig>=7.
|
|
32
|
+
uv_with.append("machineconfig>=7.47")
|
|
33
33
|
else:
|
|
34
34
|
uv_project_dir = str(Path.home().joinpath("code/machineconfig"))
|
|
35
35
|
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])
|
|
@@ -79,7 +79,7 @@ def analyze(directory: DirectoryArgument = None) -> None:
|
|
|
79
79
|
|
|
80
80
|
|
|
81
81
|
def viz(
|
|
82
|
-
repo: Annotated[str, typer.Option(..., "--repo", "-r", help="Path to git repository to visualize")] =
|
|
82
|
+
repo: Annotated[str, typer.Option(..., "--repo", "-r", help="Path to git repository to visualize")] = ".",
|
|
83
83
|
output_file: Annotated[Optional[Path], typer.Option(..., "--output", "-o", help="Output video file (e.g., output.mp4). If specified, gource will render to video.")] = None,
|
|
84
84
|
resolution: Annotated[str, typer.Option(..., "--resolution", "-res", help="Video resolution (e.g., 1920x1080, 1280x720)")] = "1920x1080",
|
|
85
85
|
seconds_per_day: Annotated[float, typer.Option(..., "--seconds-per-day", "-spd", help="Speed of simulation (lower = faster)")] = 0.1,
|
|
@@ -46,9 +46,9 @@ def install(no_copy_assets: Annotated[bool, typer.Option("--no-assets-copy", "-n
|
|
|
46
46
|
else:
|
|
47
47
|
import platform
|
|
48
48
|
if platform.system() == "Windows":
|
|
49
|
-
run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.
|
|
49
|
+
run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.47" """)
|
|
50
50
|
else:
|
|
51
|
-
run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.
|
|
51
|
+
run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.47" """)
|
|
52
52
|
from machineconfig.profile.create_shell_profile import create_default_shell_profile
|
|
53
53
|
if not no_copy_assets:
|
|
54
54
|
create_default_shell_profile() # involves copying assets too
|
|
@@ -73,7 +73,7 @@ def navigate():
|
|
|
73
73
|
path = Path(navigator.__file__).resolve().parent.joinpath("devops_navigator.py")
|
|
74
74
|
from machineconfig.utils.code import run_shell_script
|
|
75
75
|
if Path.home().joinpath("code/machineconfig").exists(): executable = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" --with textual"""
|
|
76
|
-
else: executable = """--with "machineconfig>=7.
|
|
76
|
+
else: executable = """--with "machineconfig>=7.47,textual" """
|
|
77
77
|
run_shell_script(f"""uv run {executable} {path}""")
|
|
78
78
|
|
|
79
79
|
|
|
@@ -4,19 +4,6 @@ import typer
|
|
|
4
4
|
from typing import Annotated, Literal, Optional, TypedDict
|
|
5
5
|
from pathlib import Path
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
# def copy(path: Annotated[str, typer.Argument(..., help="Path of the file to copy to clipboard")]):
|
|
9
|
-
# def copy_internal(path: str):
|
|
10
|
-
# import pyperclip
|
|
11
|
-
# from pathlib import Path
|
|
12
|
-
# pyperclip.copy(Path(path).read_text(encoding="utf-8"))
|
|
13
|
-
# from machineconfig.utils.meta import lambda_to_python_script
|
|
14
|
-
# from machineconfig.utils.code import exit_then_run_shell_script, get_uv_command_executing_python_script
|
|
15
|
-
# py_script = lambda_to_python_script(lambda: copy_internal(path=str(path)), in_global=True, import_module=False)
|
|
16
|
-
# shell_script, _python_file = get_uv_command_executing_python_script(python_script=py_script, uv_with=["pyperclip"], uv_project_dir=None)
|
|
17
|
-
# exit_then_run_shell_script(shell_script, strict=True)
|
|
18
|
-
|
|
19
|
-
|
|
20
7
|
def download(
|
|
21
8
|
url: Annotated[Optional[str], typer.Argument(..., help="The URL to download the file from.")] = None,
|
|
22
9
|
decompress: Annotated[bool, typer.Option("--decompress", "-d", help="Decompress the file if it's an archive.")] = False,
|
|
@@ -228,23 +215,32 @@ uv add --group plot \
|
|
|
228
215
|
# Type hints for packages
|
|
229
216
|
types-python-dateutil types-pyyaml types-requests types-tqdm \
|
|
230
217
|
types-mysqlclient types-paramiko types-pytz types-sqlalchemy types-toml types-urllib3 \
|
|
218
|
+
|
|
231
219
|
"""
|
|
232
220
|
from machineconfig.utils.code import run_shell_script
|
|
233
221
|
run_shell_script(script)
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
#
|
|
249
|
-
|
|
250
|
-
|
|
222
|
+
|
|
223
|
+
|
|
224
|
+
def edit(path: Annotated[Optional[str], typer.Argument(..., help="The root directory of the project to edit, or a file path.")] = None) -> None:
|
|
225
|
+
if path is None:
|
|
226
|
+
root_path = Path.cwd()
|
|
227
|
+
print(f"No path provided. Using current working directory: {root_path}")
|
|
228
|
+
else:
|
|
229
|
+
root_path = Path(path).expanduser().resolve()
|
|
230
|
+
print(f"Using provided path: {root_path}")
|
|
231
|
+
from machineconfig.utils.accessories import get_repo_root
|
|
232
|
+
repo_root = get_repo_root(root_path)
|
|
233
|
+
if repo_root is not None and repo_root.joinpath("pyproject.toml").exists():
|
|
234
|
+
code = f"""
|
|
235
|
+
cd {repo_root}
|
|
236
|
+
uv add --dev pylsp-mypy python-lsp-server[all] pyright ruff-lsp # for helix editor.
|
|
237
|
+
source ./.venv/bin/activate
|
|
238
|
+
"""
|
|
239
|
+
else:
|
|
240
|
+
code = ""
|
|
241
|
+
if root_path.is_file():
|
|
242
|
+
code += f"hx {root_path}"
|
|
243
|
+
else:
|
|
244
|
+
code += "hx"
|
|
245
|
+
from machineconfig.utils.code import exit_then_run_shell_script
|
|
246
|
+
exit_then_run_shell_script(code)
|
|
@@ -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.
|
|
102
|
+
uv_with = ["machineconfig>=7.47"]
|
|
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.
|
|
11
|
+
cmd = f"""uv run --python 3.14 --with "machineconfig[plot]>=7.47" {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
|
|
|
@@ -100,7 +100,7 @@ def install_gource_windows(version: Optional[str] = None) -> None:
|
|
|
100
100
|
|
|
101
101
|
|
|
102
102
|
def visualize(
|
|
103
|
-
repo: Annotated[str, typer.Option("--repo", "-r", help="Path to git repository to visualize")] =
|
|
103
|
+
repo: Annotated[str, typer.Option("--repo", "-r", help="Path to git repository to visualize")] = ".",
|
|
104
104
|
output_file: Annotated[Optional[Path], typer.Option("--output", "-o", help="Output video file (e.g., output.mp4). If specified, gource will render to video.")] = None,
|
|
105
105
|
resolution: Annotated[str, typer.Option("--resolution", "-res", help="Video resolution (e.g., 1920x1080, 1280x720)")] = "1920x1080",
|
|
106
106
|
seconds_per_day: Annotated[float, typer.Option("--seconds-per-day", "-spd", help="Speed of simulation (lower = faster)")] = 0.1,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
|
-
from machineconfig.scripts.python.helpers_devops.cli_utils import download, merge_pdfs, get_machine_specs, init_project, compress_pdf
|
|
3
|
+
from machineconfig.scripts.python.helpers_devops.cli_utils import download, merge_pdfs, get_machine_specs, init_project, compress_pdf, edit
|
|
4
4
|
import typer
|
|
5
5
|
from typing import Annotated
|
|
6
6
|
|
|
@@ -39,6 +39,8 @@ def get_app() -> typer.Typer:
|
|
|
39
39
|
app.command(name="g", no_args_is_help=False, hidden=True)(get_machine_specs)
|
|
40
40
|
app.command(name="init-project", no_args_is_help=False, help="[i] Initialize a project with a uv virtual environment and install dev packages.")(init_project)
|
|
41
41
|
app.command(name="i", no_args_is_help=False, hidden=True)(init_project)
|
|
42
|
+
app.command(name="edit", no_args_is_help=False, help="[e] Open a file in the default editor.")(edit)
|
|
43
|
+
app.command(name="e", no_args_is_help=False, hidden=True)(edit)
|
|
42
44
|
|
|
43
45
|
app.command(name="pdf-merge", no_args_is_help=True, help="[pm] Merge two PDF files into one.")(merge_pdfs)
|
|
44
46
|
app.command(name="pm", no_args_is_help=True, hidden=True)(merge_pdfs)
|
|
@@ -7,7 +7,7 @@ $user = ''
|
|
|
7
7
|
$sharePath = ''
|
|
8
8
|
$driveLetter = ''
|
|
9
9
|
|
|
10
|
-
uv run --python 3.14 --with "machineconfig>=7.
|
|
10
|
+
uv run --python 3.14 --with "machineconfig>=7.47" 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
|
|
@@ -31,11 +31,13 @@ wrap-indicator = "" # set wrap-indicator to "" to hide it
|
|
|
31
31
|
# ~/.config/helix/config.toml
|
|
32
32
|
[keys.normal]
|
|
33
33
|
C-y = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh open %{buffer_name}"
|
|
34
|
+
|
|
34
35
|
# ~/.config/helix/config.toml
|
|
35
|
-
|
|
36
|
+
|
|
37
|
+
# [keys.normal.C-y]
|
|
36
38
|
# Open the file(s) in the current window
|
|
37
|
-
y = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh open %{buffer_name}"
|
|
39
|
+
# y = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh open %{buffer_name}"
|
|
38
40
|
# Open the file(s) in a vertical split
|
|
39
|
-
v = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh vsplit %{buffer_name}"
|
|
41
|
+
# v = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh vsplit %{buffer_name}"
|
|
40
42
|
# Open the file(s) in a horizontal split
|
|
41
|
-
h = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh hsplit %{buffer_name}"
|
|
43
|
+
# h = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh hsplit %{buffer_name}"
|
|
@@ -1,13 +1,22 @@
|
|
|
1
|
-
# adopted from https://github.com/helix-editor/helix/wiki/
|
|
1
|
+
# adopted from https://github.com/helix-editor/helix/wiki/Language-Server-Configurations
|
|
2
2
|
# adopted from https://github.com/helix-editor/helix/discussions/6623
|
|
3
|
-
# You will need:
|
|
3
|
+
# You will need: uv add --dev pylsp-mypy python-lsp-server[all] pyright ruff-lsp
|
|
4
4
|
|
|
5
5
|
[[language]]
|
|
6
6
|
name = "python"
|
|
7
|
-
language-servers = [ "pyright", "ruff" ]
|
|
7
|
+
language-servers = ["pylsp", "pyright", "ruff", "pyrefly"]
|
|
8
|
+
|
|
9
|
+
[language-server.pyrefly]
|
|
10
|
+
command = "pyrefly"
|
|
11
|
+
args = [ "lsp" ]
|
|
12
|
+
|
|
13
|
+
[language-server.pylsp.config.pylsp]
|
|
14
|
+
plugins.pylsp_mypy.enabled = true
|
|
15
|
+
plugins.pylsp_mypy.live_mode = true
|
|
16
|
+
|
|
8
17
|
|
|
9
18
|
[language-server.pyright.config.python.analysis]
|
|
10
|
-
typeCheckingMode = "
|
|
19
|
+
typeCheckingMode = "strict"
|
|
11
20
|
|
|
12
21
|
[language-server.ruff]
|
|
13
22
|
command = "ruff-lsp"
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
paths=$(yazi "$2" --chooser-file=/dev/stdout | while read -r; do printf "%q " "$REPLY"; done)
|
|
4
|
+
|
|
5
|
+
if [[ -n "$paths" ]]; then
|
|
6
|
+
zellij action toggle-floating-panes
|
|
7
|
+
zellij action write 27 # send <Escape> key
|
|
8
|
+
zellij action write-chars ":$1 $paths"
|
|
9
|
+
zellij action write 13 # send <Enter> key
|
|
10
|
+
else
|
|
11
|
+
zellij action toggle-floating-panes
|
|
12
|
+
fi
|
|
@@ -23,7 +23,7 @@ CONFIG_ROOT="$HOME/.config/machineconfig"
|
|
|
23
23
|
|
|
24
24
|
# 📂 Add directories to PATH
|
|
25
25
|
add_to_path_if_not_already \
|
|
26
|
-
"$CONFIG_ROOT/scripts
|
|
26
|
+
"$CONFIG_ROOT/scripts" \
|
|
27
27
|
"$HOME/dotfiles/scripts/linux" \
|
|
28
28
|
"$HOME/.local/bin" \
|
|
29
29
|
"$HOME/.cargo/bin" \
|
|
@@ -38,7 +38,7 @@ add_to_path_if_not_already \
|
|
|
38
38
|
. $CONFIG_ROOT/settings/lf/linux/exe/lfcd.sh
|
|
39
39
|
. $CONFIG_ROOT/settings/tere/terecd.sh
|
|
40
40
|
. $CONFIG_ROOT/settings/yazi/shell/yazi_cd.sh
|
|
41
|
-
. $CONFIG_ROOT/scripts/
|
|
41
|
+
. $CONFIG_ROOT/scripts/wrap_mcfg
|
|
42
42
|
|
|
43
43
|
# check if file in ~/dotfiles/machineconfig/init_linux.sh exists and source it
|
|
44
44
|
if [ -f "$HOME/dotfiles/machineconfig/init_linux.sh" ]; then
|
|
@@ -15,7 +15,7 @@ function Add-ToPathIfNotAlready {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
Add-ToPathIfNotAlready -Directories @(
|
|
18
|
-
"$CONFIG_ROOT\scripts
|
|
18
|
+
"$CONFIG_ROOT\scripts",
|
|
19
19
|
"$HOME\dotfiles\scripts\windows",
|
|
20
20
|
"C:\Program Files (x86)\GnuWin32\bin",
|
|
21
21
|
"C:\Program Files\CodeBlocks\MinGW\bin",
|
|
@@ -24,11 +24,12 @@ Add-ToPathIfNotAlready -Directories @(
|
|
|
24
24
|
)
|
|
25
25
|
|
|
26
26
|
# sources ================================================================
|
|
27
|
-
if (Test-Path "$CONFIG_ROOT\scripts\
|
|
27
|
+
if (Test-Path "$CONFIG_ROOT\scripts\wrap_mcfg.ps1") {
|
|
28
28
|
. $CONFIG_ROOT\settings\broot\brootcd.ps1
|
|
29
29
|
. $CONFIG_ROOT\settings\lf\windows\lfcd.ps1
|
|
30
30
|
. $CONFIG_ROOT\settings\tere\terecd.ps1
|
|
31
|
-
. $CONFIG_ROOT\
|
|
31
|
+
. $CONFIG_ROOT\settings\yazi\shell\yazi_cd.ps1
|
|
32
|
+
. $CONFIG_ROOT\scripts\wrap_mcfg.ps1
|
|
32
33
|
|
|
33
34
|
function lsdla { lsd -la }
|
|
34
35
|
Set-Alias -Name l -Value lsdla -Option AllScope
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#!/bin/
|
|
1
|
+
#!/bin/zsh
|
|
2
2
|
# Record script start time for runtime measurement
|
|
3
3
|
# _START_TIME_NS=$(date +%s%N)
|
|
4
4
|
# _show_elapsed() {
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
# printf "Script runtime: %d.%03d seconds\n" "$_secs" "$_ms"
|
|
11
11
|
# }
|
|
12
12
|
|
|
13
|
-
# 🛠️
|
|
13
|
+
# 🛠️ Zsh Shell Configuration and Initialization
|
|
14
14
|
|
|
15
15
|
add_to_path_if_not_already() {
|
|
16
16
|
for dir in "$@"; do
|
|
@@ -23,7 +23,7 @@ CONFIG_ROOT="$HOME/.config/machineconfig"
|
|
|
23
23
|
|
|
24
24
|
# 📂 Add directories to PATH
|
|
25
25
|
add_to_path_if_not_already \
|
|
26
|
-
"$CONFIG_ROOT/scripts
|
|
26
|
+
"$CONFIG_ROOT/scripts" \
|
|
27
27
|
"$HOME/dotfiles/scripts/linux" \
|
|
28
28
|
"$HOME/.local/bin" \
|
|
29
29
|
"$HOME/.cargo/bin" \
|
|
@@ -37,22 +37,27 @@ add_to_path_if_not_already \
|
|
|
37
37
|
. $CONFIG_ROOT/settings/broot/br.sh
|
|
38
38
|
. $CONFIG_ROOT/settings/lf/linux/exe/lfcd.sh
|
|
39
39
|
. $CONFIG_ROOT/settings/tere/terecd.sh
|
|
40
|
+
. $CONFIG_ROOT/settings/yazi/shell/yazi_cd.sh
|
|
41
|
+
. $CONFIG_ROOT/scripts/wrap_mcfg
|
|
42
|
+
|
|
40
43
|
# check if file in ~/dotfiles/machineconfig/init_linux.sh exists and source it
|
|
41
44
|
if [ -f "$HOME/dotfiles/machineconfig/init_linux.sh" ]; then
|
|
42
45
|
# echo "Sourcing $HOME/dotfiles/machineconfig/init_linux.sh"
|
|
43
46
|
source "$HOME/dotfiles/machineconfig/init_linux.sh"
|
|
44
47
|
fi
|
|
45
48
|
|
|
46
|
-
# set alias l to lsd -la
|
|
47
49
|
alias l='lsd -la'
|
|
48
|
-
alias d=devops
|
|
49
|
-
alias c=cloud
|
|
50
|
-
alias a=agents
|
|
51
|
-
alias s=sessions
|
|
52
|
-
alias
|
|
53
|
-
alias f=fire
|
|
54
|
-
alias r=croshell
|
|
55
|
-
alias u=utils
|
|
50
|
+
alias d='wrap_in_shell_script devops'
|
|
51
|
+
alias c='wrap_in_shell_script cloud'
|
|
52
|
+
alias a='wrap_in_shell_script agents'
|
|
53
|
+
alias s='wrap_in_shell_script sessions'
|
|
54
|
+
alias fx='wrap_in_shell_script ftpx'
|
|
55
|
+
alias f='wrap_in_shell_script fire'
|
|
56
|
+
alias r='wrap_in_shell_script croshell'
|
|
57
|
+
alias u='wrap_in_shell_script utils'
|
|
58
|
+
alias t='wrap_in_shell_script terminal'
|
|
59
|
+
alias ms='wrap_in_shell_script msearch'
|
|
60
|
+
alias x='. $CONFIG_ROOT/scripts/linux/wrap_mcfg explore'
|
|
56
61
|
|
|
57
62
|
# alias gcs='gh copilot suggest -t shell'
|
|
58
63
|
# alias gcg='gh copilot suggest -t git'
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
|
|
2
2
|
|
|
3
3
|
-- https://yazi-rs.github.io/docs/tips#symlink-in-status
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
Status:children_add(function(self)
|
|
5
|
+
local h = self._current.hovered
|
|
6
|
+
if h and h.link_to then
|
|
7
|
+
return " -> " .. tostring(h.link_to)
|
|
8
|
+
else
|
|
9
|
+
return ""
|
|
10
|
+
end
|
|
11
|
+
end, 3300, Status.LEFT)
|
|
12
12
|
|
|
13
13
|
|
|
14
14
|
-- https://yazi-rs.github.io/docs/tips#user-group-in-status
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
Status:children_add(function()
|
|
16
|
+
local h = cx.active.current.hovered
|
|
17
|
+
if not h or ya.target_family() ~= "unix" then
|
|
18
|
+
return ""
|
|
19
|
+
end
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
21
|
+
return ui.Line {
|
|
22
|
+
ui.Span(ya.user_name(h.cha.uid) or tostring(h.cha.uid)):fg("magenta"),
|
|
23
|
+
":",
|
|
24
|
+
ui.Span(ya.group_name(h.cha.gid) or tostring(h.cha.gid)):fg("magenta"),
|
|
25
|
+
" ",
|
|
26
|
+
}
|
|
27
|
+
end, 500, Status.RIGHT)
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
-- https://yazi-rs.github.io/docs/tips#username-hostname-in-header
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
Header:children_add(function()
|
|
32
|
+
if ya.target_family() ~= "unix" then
|
|
33
|
+
return ""
|
|
34
|
+
end
|
|
35
|
+
return ui.Span(ya.user_name() .. "@" .. ya.host_name() .. ":"):fg("blue")
|
|
36
|
+
end, 500, Header.LEFT)
|
|
@@ -15,6 +15,7 @@ desc = "Open PowerShell here"
|
|
|
15
15
|
|
|
16
16
|
# FROM https://github.com/yazi-rs/plugins/tree/main/toggle-pane.yazi
|
|
17
17
|
# keymap.toml
|
|
18
|
+
# parent, current, preview
|
|
18
19
|
[[mgr.prepend_keymap]]
|
|
19
20
|
on = "T"
|
|
20
21
|
run = "plugin toggle-pane min-preview"
|
|
@@ -38,15 +39,41 @@ run = 'shell -- qlmanage -p "$@"'
|
|
|
38
39
|
|
|
39
40
|
[[mgr.prepend_keymap]]
|
|
40
41
|
on = "F"
|
|
41
|
-
run = 'shell --
|
|
42
|
+
run = 'shell --block -- $HOME/.config/machineconfig/scripts/wrap_mcfg fire "$0"'
|
|
42
43
|
desc = "Run fire on hovered file"
|
|
43
44
|
|
|
44
|
-
[[mgr.prepend_keymap]]
|
|
45
|
-
on = "R"
|
|
46
|
-
run = 'shell -- ~/.config/machineconfig/scripts/linux/wrap_mcfg croshell "$0"'
|
|
47
|
-
desc = "Run croshell on hovered file"
|
|
48
|
-
|
|
49
45
|
|
|
50
46
|
[[mgr.prepend_keymap]]
|
|
51
47
|
on = [ "g", "r" ]
|
|
52
48
|
run = 'shell -- ya emit cd "$(git rev-parse --show-toplevel)"'
|
|
49
|
+
desc = "go to repo root"
|
|
50
|
+
|
|
51
|
+
[[mgr.prepend_keymap]]
|
|
52
|
+
on = ["R", "v"]
|
|
53
|
+
run = 'shell -- code "$0"'
|
|
54
|
+
desc = "Read with vscode"
|
|
55
|
+
|
|
56
|
+
[[mgr.prepend_keymap]]
|
|
57
|
+
on = ["R", "h"]
|
|
58
|
+
run = 'shell --block -- $HOME/.config/machineconfig/scripts/wrap_mcfg utils edit "$0"'
|
|
59
|
+
desc = "Read with helix"
|
|
60
|
+
|
|
61
|
+
[[mgr.prepend_keymap]]
|
|
62
|
+
on = ["R", "c"]
|
|
63
|
+
run = 'shell --block -- $HOME/.config/machineconfig/scripts/wrap_mcfg croshell "$0"'
|
|
64
|
+
desc = "Read with croshell"
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
[[mgr.prepend_keymap]]
|
|
68
|
+
on = ["R", "f"]
|
|
69
|
+
run = 'shell --block -- $HOME/.config/machineconfig/scripts/wrap_mcfg fire "$0"'
|
|
70
|
+
desc = "Read with fire"
|
|
71
|
+
|
|
72
|
+
[[mgr.prepend_keymap]]
|
|
73
|
+
on = ["R", "F"]
|
|
74
|
+
run = 'shell --block -- $HOME/.config/machineconfig/scripts/wrap_mcfg fire -i "$0"'
|
|
75
|
+
desc = "Read with fire interactively"
|
|
76
|
+
|
|
77
|
+
[[mgr.prepend_keymap]]
|
|
78
|
+
on = "y"
|
|
79
|
+
run = [ 'shell -- echo "$@" | cb cp0', "yank" ]
|
|
@@ -0,0 +1,9 @@
|
|
|
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
|
+
}
|
|
@@ -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.
|
|
6
|
-
alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
7
|
-
alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
8
|
-
alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
9
|
-
alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
10
|
-
alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
11
|
-
alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
12
|
-
alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
13
|
-
alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
14
|
-
alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.
|
|
5
|
+
alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" devops'
|
|
6
|
+
alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" cloud'
|
|
7
|
+
alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" agents'
|
|
8
|
+
alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" sessions'
|
|
9
|
+
alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" ftpx'
|
|
10
|
+
alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" fire'
|
|
11
|
+
alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" croshell'
|
|
12
|
+
alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" utils'
|
|
13
|
+
alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" terminal'
|
|
14
|
+
alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.47" msearch'
|
|
15
15
|
|
|
16
16
|
alias d='wrap_in_shell_script devops'
|
|
17
17
|
alias c='wrap_in_shell_script cloud'
|
|
@@ -11,8 +11,8 @@ winget install --no-upgrade --name "Powershell" --Id "Microsof
|
|
|
11
11
|
winget install --no-upgrade --name "Git" --Id "Git.Git" --source winget --scope user --accept-package-agreements --accept-source-agreements
|
|
12
12
|
winget install --no-upgrade --name "Neovim" --Id "Neovim.Neovim" --source winget --scope user --accept-package-agreements --accept-source-agreements
|
|
13
13
|
winget install --no-upgrade --name "GNU Nano" --Id "GNU.Nano" --source winget --scope user --accept-package-agreements --accept-source-agreements
|
|
14
|
-
# winget install --no-upgrade
|
|
15
|
-
|
|
14
|
+
# winget install --no-upgrade --name "File" --Id "GnuWin32.File" --source winget --accept-package-agreements --accept-source-agreements
|
|
15
|
+
|
|
16
16
|
Install-Module -Name Terminal-Icons -Repository PSGallery -Force -AcceptLicense -PassThru -Confirm # -RequiredVersion 2.5.10
|
|
17
17
|
Install-Module -Name PSFzf -SkipPublisherCheck # -AcceptLicense -PassThru -Confirm # -RequiredVersion 2.5.10
|
|
18
18
|
|
|
@@ -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.
|
|
7
|
-
function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
8
|
-
function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
9
|
-
function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
10
|
-
function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
11
|
-
function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
12
|
-
function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
13
|
-
function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
14
|
-
function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
15
|
-
function msearch { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.
|
|
6
|
+
function devops { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" devops $args }
|
|
7
|
+
function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" cloud $args }
|
|
8
|
+
function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" agents $args }
|
|
9
|
+
function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" sessions $args }
|
|
10
|
+
function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" ftpx $args }
|
|
11
|
+
function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" fire $args }
|
|
12
|
+
function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" croshell $args }
|
|
13
|
+
function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" utils $args }
|
|
14
|
+
function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" terminal $args }
|
|
15
|
+
function msearch { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.47" msearch $args }
|
|
16
16
|
|
|
17
17
|
function d { wrap_in_shell_script devops @args }
|
|
18
18
|
function c { wrap_in_shell_script cloud @args }
|
machineconfig/utils/ssh.py
CHANGED
|
@@ -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.
|
|
11
|
+
MACHINECONFIG_VERSION = "machineconfig>=7.47"
|
|
12
12
|
DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
|
|
13
13
|
|
|
14
14
|
class SSH:
|
|
@@ -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=
|
|
55
|
-
machineconfig/jobs/installer/package_groups.py,sha256=
|
|
54
|
+
machineconfig/jobs/installer/installer_data.json,sha256=WJ0v1f86duVBp945xm52m7-mNmgDer3DCUA-aluTxCA,83436
|
|
55
|
+
machineconfig/jobs/installer/package_groups.py,sha256=nRru-M8wiqdSs3U8TDOGFmA2xTV4gwFUeMJZ28xBrvw,5293
|
|
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=
|
|
58
|
+
machineconfig/jobs/installer/custom/hx.py,sha256=c670AJYgTRS9QN0ooRt8oz3Cxwd9Fv16WpA4rCr7JL0,8728
|
|
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=kHgGRwgKrvpIlGzmdnWO6HJnSrnj8RlBEV_1Zz4s_Hw,2829
|
|
@@ -93,11 +93,11 @@ machineconfig/jobs/installer/powershell_scripts/openssh-server_copy-ssh-id.ps1,s
|
|
|
93
93
|
machineconfig/profile/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
94
94
|
machineconfig/profile/backup.toml,sha256=Hb25sIdKVvLqOF62NgiOpGZxd45I6IhsNHu623RtfQQ,766
|
|
95
95
|
machineconfig/profile/bash_shell_profiles.md,sha256=mio0xkMTwO-F3fikWIfgcdQaPCmQrmkxJMNtZsTe9TI,514
|
|
96
|
-
machineconfig/profile/create_helper.py,sha256=
|
|
96
|
+
machineconfig/profile/create_helper.py,sha256=jBwgf2r6Wid9LNXw_O8JpVmm7Vk5sZJWlN0qeIkQhjE,2986
|
|
97
97
|
machineconfig/profile/create_links.py,sha256=42U5dEu7fMnGBAqyhQ1VspFaZg3VssMMQSdpGEmpHnE,14199
|
|
98
98
|
machineconfig/profile/create_links_export.py,sha256=DNBdylSzDdBq_wAduIYbscpOWoTx_QVynOP27y0mklA,4444
|
|
99
99
|
machineconfig/profile/create_shell_profile.py,sha256=jjCwH3rNxVOcb9sgbZQsjYlKGfqhDvPxBDrkFLThT3c,7221
|
|
100
|
-
machineconfig/profile/mapper.toml,sha256=
|
|
100
|
+
machineconfig/profile/mapper.toml,sha256=oRy8wG7wubiFHrZmSKopsZleJg0UVwGorQrIwU5shUI,12779
|
|
101
101
|
machineconfig/profile/records/generic/shares.toml,sha256=FduDztfyQtZcr5bfx-RSKhEEweweQSWfVXkKWnx8hCY,143
|
|
102
102
|
machineconfig/profile/records/linux/apps_summary_report.csv,sha256=pw9djvaRUPalKDLn2sl3odcbD2_Zx3aEupsQ8UPfaaY,2738
|
|
103
103
|
machineconfig/profile/records/linux/apps_summary_report.md,sha256=l77oofA6Rliql0ZgKGIZi8bstFoGyyGTxeS8p2PtOj0,5634
|
|
@@ -114,7 +114,7 @@ machineconfig/scripts/nu/wrap_mcfg.nu,sha256=9heiUHVkHjI_AMXT5QJJixk7ZK_hJNV_A8l
|
|
|
114
114
|
machineconfig/scripts/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
115
115
|
machineconfig/scripts/python/agents.py,sha256=aVbLQDgpngXZm4taHcED4sAxyHvV2_Dz5VW3apPcQcY,10651
|
|
116
116
|
machineconfig/scripts/python/cloud.py,sha256=yAD6ciKiEtv2CH3g2NScDK5cpCZQi7Vu8yyeehw_cU8,1263
|
|
117
|
-
machineconfig/scripts/python/croshell.py,sha256=
|
|
117
|
+
machineconfig/scripts/python/croshell.py,sha256=kZUYk7nVKoyFXZ9_kDo7lggDxcon9CRyiVrBDCKAZy4,8379
|
|
118
118
|
machineconfig/scripts/python/define.py,sha256=AtuVac6tJeDMcxtbWmQh1TH3dYAPSGFdO51b75zJVeI,717
|
|
119
119
|
machineconfig/scripts/python/devops.py,sha256=Lv4d-UlyOREj4VTcu_pxswYo54Mawe3XGeKjreGQDYg,2222
|
|
120
120
|
machineconfig/scripts/python/devops_navigator.py,sha256=5Cm384D4S8_GsvMzTwr0C16D0ktf8_5Mk5bEJncwDO8,237
|
|
@@ -126,7 +126,7 @@ machineconfig/scripts/python/machineconfig.py,sha256=l211lxHRcQ6BH7x3FwQHSJCYbYs
|
|
|
126
126
|
machineconfig/scripts/python/msearch.py,sha256=3NbwJFJtrvPSVyOfa6ogPjD-NVuRJHeAQ1WriDXCduU,737
|
|
127
127
|
machineconfig/scripts/python/sessions.py,sha256=Q_fbprawvW1x_E6jKQ-Z2Z5MRurRaepKUvi5z1G4CUw,9531
|
|
128
128
|
machineconfig/scripts/python/terminal.py,sha256=PQ2C2flC2UngfeTNYhHLBiwj__kmE12gxZu2ivtr4Kg,5978
|
|
129
|
-
machineconfig/scripts/python/utils.py,sha256=
|
|
129
|
+
machineconfig/scripts/python/utils.py,sha256=WHf7ahRjAW7dOfjJ83hpsWe5F-If-IdJCBMzTYSPbdM,3149
|
|
130
130
|
machineconfig/scripts/python/ai/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
131
131
|
machineconfig/scripts/python/ai/generate_files.py,sha256=VfjKdwgF8O6E4oiRtfWNliibLmmwGe7f9ld6wpOsXTw,14498
|
|
132
132
|
machineconfig/scripts/python/ai/initai.py,sha256=P4-NCLJPWeNef_k-l4TQ92AB1Xm1k3xzdqSBIjmevnQ,1573
|
|
@@ -159,7 +159,7 @@ machineconfig/scripts/python/ai/solutions/opencode/opencode.json,sha256=nahHKRw1
|
|
|
159
159
|
machineconfig/scripts/python/ai/solutions/opencode/opencode.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
160
160
|
machineconfig/scripts/python/env_manager/__init__.py,sha256=E4LAHbU1wo2dLjE36ntv8U7QNTe8TasujUAYK9SLvWk,6
|
|
161
161
|
machineconfig/scripts/python/env_manager/path_manager_backend.py,sha256=ZVGlGJALhg7zNABDdwXxL7MFbL2BXPebObipXSLGbic,1552
|
|
162
|
-
machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=
|
|
162
|
+
machineconfig/scripts/python/env_manager/path_manager_tui.py,sha256=3u7581-gXQ4egJ8wG3Z75S2FOaayiNeFrOn8HnyDI9E,6932
|
|
163
163
|
machineconfig/scripts/python/helpers_agents/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
164
164
|
machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py,sha256=YD6-rtudHNip8tx85amSmOZZIHBP9khq4az3dF41j6U,5934
|
|
165
165
|
machineconfig/scripts/python/helpers_agents/fire_agents_help_search.py,sha256=qIfSS_su2YJ1Gb0_lu4cbjlJlYMBw0v52NTGiSrGjk8,2991
|
|
@@ -189,16 +189,16 @@ machineconfig/scripts/python/helpers_croshell/start_slidev.py,sha256=HfJReOusTPh
|
|
|
189
189
|
machineconfig/scripts/python/helpers_croshell/viewer.py,sha256=heQNjB9fwn3xxbPgMofhv1Lp6Vtkl76YjjexWWBM0pM,2041
|
|
190
190
|
machineconfig/scripts/python/helpers_croshell/viewer_template.py,sha256=ve3Q1-iKhCLc0VJijKvAeOYp2xaFOeIOC_XW956GWCc,3944
|
|
191
191
|
machineconfig/scripts/python/helpers_devops/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
192
|
-
machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=
|
|
192
|
+
machineconfig/scripts/python/helpers_devops/cli_config.py,sha256=_78g4vRw5z09uBSnoZEhiC1l6vLh1MAZwGvP-88An2Q,5922
|
|
193
193
|
machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py,sha256=SL6P3Ioib3P9OWG1GmULb5-l4ySYZ1RuuIDCHY4lCyU,3502
|
|
194
194
|
machineconfig/scripts/python/helpers_devops/cli_data.py,sha256=79Xvx7YnbueruEnl69hrDg2AhVxf_zCUdlVcKfeMGyQ,1774
|
|
195
195
|
machineconfig/scripts/python/helpers_devops/cli_nw.py,sha256=u_2l5Cc3dFnh0seKrbH9j-Z0bUCrgy45MOM6HCjgkQg,7562
|
|
196
|
-
machineconfig/scripts/python/helpers_devops/cli_repos.py,sha256=
|
|
197
|
-
machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=
|
|
196
|
+
machineconfig/scripts/python/helpers_devops/cli_repos.py,sha256=mFrhosIFCCT70d82NYUxp9ta6BYeAHQNhsx7CEmWcg4,12478
|
|
197
|
+
machineconfig/scripts/python/helpers_devops/cli_self.py,sha256=tyjlMy93bIyOxqhtJkUi2HmdMeuuXXwa4lqO5v635ek,6515
|
|
198
198
|
machineconfig/scripts/python/helpers_devops/cli_share_file.py,sha256=AL04784ncdP9ue5bKyqJfXrMksxjFKtuv_w353kQQsI,6298
|
|
199
199
|
machineconfig/scripts/python/helpers_devops/cli_share_server.py,sha256=S2xQ7sDVvfvGKcJNlquXj9Gc0ofk2EXnfvpRx2AWVD8,6278
|
|
200
200
|
machineconfig/scripts/python/helpers_devops/cli_terminal.py,sha256=k_PzXaiGyE0vXr0Ii1XcJz2A7UvyPJrR31TRWt4RKRI,6019
|
|
201
|
-
machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=
|
|
201
|
+
machineconfig/scripts/python/helpers_devops/cli_utils.py,sha256=E3UAqqna7rZD7u6j4K997trVPfR-e5x7uPCZANE63IY,11138
|
|
202
202
|
machineconfig/scripts/python/helpers_devops/devops_backup_retrieve.py,sha256=Dn8luB6QJzxKiiFSC-NMqiYddWZoca3A8eOjMYZDzTc,5598
|
|
203
203
|
machineconfig/scripts/python/helpers_devops/devops_status.py,sha256=PJVPhfhXq8der6Xd-_fjZfnizfM-RGfJApkRGhGBmNo,20525
|
|
204
204
|
machineconfig/scripts/python/helpers_devops/devops_update_repos.py,sha256=kSln8_-Wn7Qu0NaKdt-QTN_bBVyTIAWHH8xVYKK-vCM,10133
|
|
@@ -231,11 +231,11 @@ machineconfig/scripts/python/helpers_navigator/search_bar.py,sha256=kDi8Jhxap8wd
|
|
|
231
231
|
machineconfig/scripts/python/helpers_repos/action.py,sha256=8je051kpGZ7A_GRsQyWKhPZ8xVW7tSm4bnPu6VjxaXk,9755
|
|
232
232
|
machineconfig/scripts/python/helpers_repos/action_helper.py,sha256=XRCtkGkNrxauqUd9qkxtfJt02Mx2gejSYDLL0jyWn24,6176
|
|
233
233
|
machineconfig/scripts/python/helpers_repos/clone.py,sha256=UULEG5xJuXlPGU0nqXH6U45jA9DOFqLw8B4iPytCwOQ,5471
|
|
234
|
-
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=
|
|
234
|
+
machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py,sha256=SdsbRt3jHgBkvEJDcE7GD3cP7iB3_U1C5kcJ8PtpDww,11271
|
|
235
235
|
machineconfig/scripts/python/helpers_repos/count_lines.py,sha256=Q5c7b-DxvTlQmljoic7niTuiAVyFlwYvkVQ7uRJHiTo,16009
|
|
236
|
-
machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=
|
|
236
|
+
machineconfig/scripts/python/helpers_repos/count_lines_frontend.py,sha256=OhKq1TiHD3WHiuhpDp_XSBIqk9mTGS59T2-7FsDa1qQ,607
|
|
237
237
|
machineconfig/scripts/python/helpers_repos/entrypoint.py,sha256=WYEFGUJp9HWImlFjbs_hiFZrUqM_KEYm5VvSUjWd04I,2810
|
|
238
|
-
machineconfig/scripts/python/helpers_repos/grource.py,sha256=
|
|
238
|
+
machineconfig/scripts/python/helpers_repos/grource.py,sha256=lHxyfsIQr4pbu71Ekqu-9nohR7LXbN2wufw7LPTyOgM,14639
|
|
239
239
|
machineconfig/scripts/python/helpers_repos/record.py,sha256=FQo0swuJZOp0I2XGK-t1OQU4zJHmQ2z9zTpDD30Tmg4,11001
|
|
240
240
|
machineconfig/scripts/python/helpers_repos/sync.py,sha256=P0P7Dog2uFDvwxcLP3YHPwm6AtvCm6QOz1BLqw53xOo,3259
|
|
241
241
|
machineconfig/scripts/python/helpers_repos/update.py,sha256=cUIMUMm-50HrY6fzxSMZnFplhToVjVPZMm1j_otTha4,11060
|
|
@@ -261,18 +261,19 @@ machineconfig/scripts/windows/wrap_mcfg.ps1,sha256=tFCj4wK7B35Uf6kdGCRV7EIr1xZFT
|
|
|
261
261
|
machineconfig/scripts/windows/mounts/mount_nfs.ps1,sha256=XrAdzpxE6a4OccSmWJ7YWHJTnsZK8uXnFE5j9GOPA20,2026
|
|
262
262
|
machineconfig/scripts/windows/mounts/mount_nw.ps1,sha256=puxcfZc3ZCJerm8pj8OZGVoTYkhzp-h7oV-MrksSqIE,454
|
|
263
263
|
machineconfig/scripts/windows/mounts/mount_smb.ps1,sha256=PzYWpIO9BpwXjdWlUQL9pnMRnOGNSkxfh4bHukJFme8,69
|
|
264
|
-
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=
|
|
264
|
+
machineconfig/scripts/windows/mounts/mount_ssh.ps1,sha256=P4ruVB7dLDX-5BxX1yUHJ1_qGWhxpH78Y-ObL9mf_LU,322
|
|
265
265
|
machineconfig/scripts/windows/mounts/share_cloud.cmd,sha256=exD7JCdxw2LqVjw2MKCYHbVZlEqmelXtwnATng-dhJ4,1028
|
|
266
266
|
machineconfig/scripts/windows/mounts/share_smb.ps1,sha256=U7x8ULYSjbgzTtiHNSKQuTaZ_apilDvkGV5Xm5hXk5M,384
|
|
267
267
|
machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1,sha256=Wv-SLscdckV-1mG3p82VXKPY9zW3hgkRmcLUXIZ1daE,253
|
|
268
268
|
machineconfig/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
269
269
|
machineconfig/settings/broot/br.sh,sha256=7CCJflIAirkiuo1suDCT8BzhVzDdJWEfbAxNDG4VPSI,1455
|
|
270
270
|
machineconfig/settings/broot/brootcd.ps1,sha256=BB8uGnoVywxFWSgwsHxlbS8V4W_Qom3L1SedekGpgWA,877
|
|
271
|
-
machineconfig/settings/broot/conf.toml,sha256
|
|
271
|
+
machineconfig/settings/broot/conf.toml,sha256=-skF2U0iojMZ2OD-3HViWAkyNKonfcvdZKF6LZKck34,56
|
|
272
272
|
machineconfig/settings/glow/glow.yml,sha256=59eFsIPBXRgJSVb6kcA7XHkWuLe0_wNandhc9KGykmE,245
|
|
273
273
|
machineconfig/settings/gromit-mpx/gromit-mpx.cfg,sha256=NW7a4OmGPpMCiFkQNNFNdUf5VqL1DN8Tkiz2oVRt7Gw,1067
|
|
274
|
-
machineconfig/settings/helix/config.toml,sha256=
|
|
275
|
-
machineconfig/settings/helix/languages.toml,sha256=
|
|
274
|
+
machineconfig/settings/helix/config.toml,sha256=uXHZEP1t3SeF9HYuRoWHrwnLyjTmJdw0S607Ej4tVY4,1352
|
|
275
|
+
machineconfig/settings/helix/languages.toml,sha256=l0OYgoKvlyed15BDdcd4dTH6BzydhHMjgvRJ9W8MvE4,874
|
|
276
|
+
machineconfig/settings/helix/yazi-picker.sh,sha256=1uFyRFwaIRuZKwrfxhryHw0TSj5Myiv5INmgJfgLOkA,352
|
|
276
277
|
machineconfig/settings/keras/keras.json,sha256=uSJa-eCun6xl6xvlVP-totLgWDw7etCMzxZT5jS2mgw,115
|
|
277
278
|
machineconfig/settings/keyboard/espanso/config/default.yml,sha256=RBIuA4AsAWB8BoRojQhbkVV0LtjL0sYFPaLtgbWookM,1685
|
|
278
279
|
machineconfig/settings/keyboard/espanso/match/base.yml,sha256=A0QcNSzbdqSUNh42WqGLCZkwi5l8LmbDUuBO8XV_jIQ,1567
|
|
@@ -333,7 +334,7 @@ machineconfig/settings/rofi/config.rasi,sha256=nDX5B8wdXQYF1fwiOTBRJUI4l_gQbYaLa
|
|
|
333
334
|
machineconfig/settings/rofi/config_default.rasi,sha256=rTfKnC-bZuWX1l-lWQACCUOE1ShhkfykAxtXX9PlQHE,4694
|
|
334
335
|
machineconfig/settings/shells/alacritty/alacritty.toml,sha256=EbL-2Y4QunW1pvRWB2yuLCw8MMPONheJr5LFoWRieUQ,871
|
|
335
336
|
machineconfig/settings/shells/alacritty/alacritty.yml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
336
|
-
machineconfig/settings/shells/bash/init.sh,sha256=
|
|
337
|
+
machineconfig/settings/shells/bash/init.sh,sha256=p_xu0lPV0hbw70Kn4a5tVhwRQI9GyvDbg460UnzLd0U,3065
|
|
337
338
|
machineconfig/settings/shells/hyper/.hyper.js,sha256=h-HqeYlvPvPD4Ee7828Cxo87uVkzbMGJFqXTZIWoegw,8884
|
|
338
339
|
machineconfig/settings/shells/ipy/profiles/default/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
339
340
|
machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -342,13 +343,13 @@ machineconfig/settings/shells/kitty/kitty.conf,sha256=lDdx-dUX3jbKGb3BkS2f2TOpmg
|
|
|
342
343
|
machineconfig/settings/shells/nushell/config.nu,sha256=5eN9S7BL9MbznZEwqk2bxcYXzWlaF_g-9JL4tw0pp4E,78
|
|
343
344
|
machineconfig/settings/shells/nushell/env.nu,sha256=4VmaXb-qP6qnMD5TPzkXMLFNlB5QC4l9HEzCvXZE2GQ,315
|
|
344
345
|
machineconfig/settings/shells/nushell/init.nu,sha256=7JQShOUpztbyoLDb9XJCmRYacrNF6xIt_9uCafUmWJ0,4578
|
|
345
|
-
machineconfig/settings/shells/pwsh/init.ps1,sha256=
|
|
346
|
+
machineconfig/settings/shells/pwsh/init.ps1,sha256=T0Zw9mfQa8rgDTxRk40UbzBq-7gkMgINAC7Or5W4HIY,2926
|
|
346
347
|
machineconfig/settings/shells/pwsh/profile.ps1,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
347
348
|
machineconfig/settings/shells/starship/starship.toml,sha256=d5lWKC0AnTcriRAZV1opEZy76QknSpKFgJ3jyW9_vZ0,1305
|
|
348
349
|
machineconfig/settings/shells/vtm/settings.xml,sha256=5TNXd-i0eUGo2w3tuhY9aOkwoJdqih8_HO_U6uL2Dts,18262
|
|
349
350
|
machineconfig/settings/shells/wezterm/wezterm.lua,sha256=ZaUFqVNibGD5cyzlnYhIMAakTig6P7qggi5hvHGASPk,6210
|
|
350
351
|
machineconfig/settings/shells/wt/settings.json,sha256=Nzk9IpD-Bp36wKJAgG7XAa0GVwW3I29xNjUW5AYfxEI,10599
|
|
351
|
-
machineconfig/settings/shells/zsh/init.sh,sha256=
|
|
352
|
+
machineconfig/settings/shells/zsh/init.sh,sha256=3C1YM6bX5MSlC3b-PzHAHj2MzgOAJ767WBCMHL0cJOA,3060
|
|
352
353
|
machineconfig/settings/streamlit/config.toml,sha256=O3d4ax88hoW7gm5r51xmCcPssQ8ol-oFz_d0NUDlU4k,483
|
|
353
354
|
machineconfig/settings/svim/linux/init.toml,sha256=IEEQN_80H0A4NPv7bt5zltEKAbpRkJyCQTJKbu2bBf8,1346
|
|
354
355
|
machineconfig/settings/svim/windows/init.toml,sha256=djllsYR_rvHNSR715QhqtLdHW8b-SpUZ8QquWEG7gVM,1347
|
|
@@ -357,10 +358,11 @@ machineconfig/settings/tere/terecd.sh,sha256=vDKRbldub0aGQwnWtDwkPnSQHKpVQiDg1RT
|
|
|
357
358
|
machineconfig/settings/tmux/.tmate.conf,sha256=dhj8IbNUe_oaBSmnAE-k2rcHJ6_zcd7pHqrmKP19zA0,57
|
|
358
359
|
machineconfig/settings/tmux/.tmux.conf,sha256=55qyCgKHOyg70kJ42GXrHwqAAtRtnsWtdHCuPt-8Hy8,94
|
|
359
360
|
machineconfig/settings/wsl/.wslconfig,sha256=wL4oWxRw_0vLQXheSLNuGUQqypqEKlVqYALosPI9jhY,1279
|
|
360
|
-
machineconfig/settings/yazi/init.lua,sha256=
|
|
361
|
-
machineconfig/settings/yazi/keymap.toml,sha256=
|
|
361
|
+
machineconfig/settings/yazi/init.lua,sha256=fW_FIMNSh8mFGMYqwPerr61HJYMNQJfeKMWzoaVpFKs,892
|
|
362
|
+
machineconfig/settings/yazi/keymap.toml,sha256=DFLc_KcyaskQT26Y5eNsvUOPbQeShURbmilyew-8ctI,1982
|
|
362
363
|
machineconfig/settings/yazi/theme.toml,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
363
|
-
machineconfig/settings/yazi/yazi.toml,sha256=
|
|
364
|
+
machineconfig/settings/yazi/yazi.toml,sha256=KRGbjMkCmbCdTRxEXJXd5gI1kTEQK7VtDGm1MXsOJDw,234
|
|
365
|
+
machineconfig/settings/yazi/shell/yazi_cd.ps1,sha256=gvXZyD2Csil8KjaMtrx5ZkF9AqRt0LaVfTL724vxMCE,312
|
|
364
366
|
machineconfig/settings/yazi/shell/yazi_cd.sh,sha256=oC_MSBbnSwCg6qgGe598Qhm0V2B9RD5IcIbKEabn7aE,208
|
|
365
367
|
machineconfig/settings/zed/settings.json,sha256=WYuoJycLVhM1-_Haq2VlERds3W7LZFzJ1qJp7lwhnos,789
|
|
366
368
|
machineconfig/settings/zellij/config.kdl,sha256=J1FOE2hSinVG26LPlvMhTBWKjZAw_2wcoSEZrwKgn5M,10329
|
|
@@ -382,14 +384,14 @@ machineconfig/setup_linux/others/cli_installation.sh,sha256=gVvszYZJgKPRJx2SEaE3
|
|
|
382
384
|
machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh,sha256=F5dbg0n9RHsKGPn8fIdZMn3p0RrHEkb8rWBGsdVGbus,1207
|
|
383
385
|
machineconfig/setup_linux/ssh/openssh_all.sh,sha256=3dg6HEUFbHQOzLfSAtzK_D_GB8rGCCp_aBnxNdnidVc,824
|
|
384
386
|
machineconfig/setup_linux/ssh/openssh_wsl.sh,sha256=1eeRGrloVB34K5z8yWVUMG5b9pV-WBfHgV9jqXiYgCQ,1398
|
|
385
|
-
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=
|
|
387
|
+
machineconfig/setup_linux/web_shortcuts/interactive.sh,sha256=GvTOY7iOB7lhYTwYEpqtnv1LJPTUXGzWK208e8Nv5sg,1581
|
|
386
388
|
machineconfig/setup_mac/__init__.py,sha256=Q1waupi5vCBroLqc8Rtnw69_7jLnm2Cs7_zH_GSZgMs,616
|
|
387
389
|
machineconfig/setup_mac/apps.sh,sha256=R0N6fBwLCzwy4qAormyMerXXXrHazibSkY6NrNOpTQU,2772
|
|
388
390
|
machineconfig/setup_mac/apps_gui.sh,sha256=3alvddg918oMlJB2aUWJWpGGoaq5atlxcaOwhnyXlRI,9517
|
|
389
391
|
machineconfig/setup_mac/uv.sh,sha256=CSN8oCBKS-LK1vJJqYOhAMcrouTf4Q_F3cpplc_ddMA,1157
|
|
390
392
|
machineconfig/setup_mac/ssh/openssh_setup.sh,sha256=TxfySnwFYg1UQLXmJbEQ2gfEWIT084F5JvNZI9ncpc0,3537
|
|
391
393
|
machineconfig/setup_windows/__init__.py,sha256=NnSVZkIBoxoMgkj-_KAqGonH3YziBIWXOKDEcmNAGTY,386
|
|
392
|
-
machineconfig/setup_windows/apps.ps1,sha256=
|
|
394
|
+
machineconfig/setup_windows/apps.ps1,sha256=rc9M0T6pXK7QunucyF4o9KTULu5xUFOhWRC9uQJH8ho,11020
|
|
393
395
|
machineconfig/setup_windows/uv.ps1,sha256=ukk1Abh-q-RfpoEqI2XTE2dcQJmHk0VFF6WqkK3TW8Q,350
|
|
394
396
|
machineconfig/setup_windows/others/docker.ps1,sha256=M8NfsSxH8YlmY92J4rSe1xWOwTW8IFrdgb8cI8Riu2E,311
|
|
395
397
|
machineconfig/setup_windows/others/obs.ps1,sha256=2andchcXpxS3rqZjGaMpY5VShxTAKWvw6eCrayjuaLo,30
|
|
@@ -397,7 +399,7 @@ machineconfig/setup_windows/others/power_options.ps1,sha256=c7Hn94jBD5GWF29CxMhm
|
|
|
397
399
|
machineconfig/setup_windows/ssh/add-sshkey.ps1,sha256=qfPdqCpd9KP3VhH4ifsUm1Xvec7c0QVl4Wt8JIAm9HQ,1653
|
|
398
400
|
machineconfig/setup_windows/ssh/add_identity.ps1,sha256=b8ZXpmNUSw3IMYvqSY7ClpdWPG39FS7MefoWnRhWN2U,506
|
|
399
401
|
machineconfig/setup_windows/ssh/openssh-server.ps1,sha256=OMlYQdvuJQNxF5EILLPizB6BZAT3jAmDsv1WcVVxpFQ,2529
|
|
400
|
-
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=
|
|
402
|
+
machineconfig/setup_windows/web_shortcuts/interactive.ps1,sha256=D9T-uQ3vqU_9WGQGUjudjQqaTS-Sb9ll2Qc9yPIm_mc,1916
|
|
401
403
|
machineconfig/setup_windows/wt_and_pwsh/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
402
404
|
machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py,sha256=ogxJnwpdcpH7N6dFJu95UCNoGYirZKQho_3X0F_hmXs,6791
|
|
403
405
|
machineconfig/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -415,7 +417,7 @@ machineconfig/utils/procs.py,sha256=YPA_vEYQGwPd_o_Lc6nOTBo5BrB1tSs8PJ42XiGpenM,
|
|
|
415
417
|
machineconfig/utils/scheduler.py,sha256=fguwvINyaupOxdU5Uadyxalh_jXTXDzt0ioEgjEOKcM,14705
|
|
416
418
|
machineconfig/utils/scheduling.py,sha256=vcJgajeJPSWkJNlarYJSmLvasdOuCtBM4druOAB1Nwc,11089
|
|
417
419
|
machineconfig/utils/source_of_truth.py,sha256=ZAnCRltiM07ig--P6g9_6nEAvNFC4X4ERFTVcvpIYsE,764
|
|
418
|
-
machineconfig/utils/ssh.py,sha256=
|
|
420
|
+
machineconfig/utils/ssh.py,sha256=R4EPsRWRA-YVX5SRfed_AuaxT247q1B7AFnc_-cLSvs,39274
|
|
419
421
|
machineconfig/utils/terminal.py,sha256=VDgsjTjBmMGgZN0YIc0pJ8YksLDrBtiXON1EThy7_is,4264
|
|
420
422
|
machineconfig/utils/tst.py,sha256=6u1GI49NdcpxH2BYGAusNfY5q9G_ytCGVzFM5b6HYpM,674
|
|
421
423
|
machineconfig/utils/upgrade_packages.py,sha256=e4iJn_9vL2zCJxAR2dhKJjM0__ALKgI5yB1uBRxSjhQ,6994
|
|
@@ -444,8 +446,8 @@ machineconfig/utils/schemas/installer/installer_types.py,sha256=QClRY61QaduBPJoS
|
|
|
444
446
|
machineconfig/utils/schemas/layouts/layout_types.py,sha256=TcqlZdGVoH8htG5fHn1KWXhRdPueAcoyApppZsPAPto,2020
|
|
445
447
|
machineconfig/utils/schemas/repos/repos_types.py,sha256=ECVr-3IVIo8yjmYmVXX2mnDDN1SLSwvQIhx4KDDQHBQ,405
|
|
446
448
|
machineconfig/utils/ssh_utils/utils.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
447
|
-
machineconfig-7.
|
|
448
|
-
machineconfig-7.
|
|
449
|
-
machineconfig-7.
|
|
450
|
-
machineconfig-7.
|
|
451
|
-
machineconfig-7.
|
|
449
|
+
machineconfig-7.47.dist-info/METADATA,sha256=KwZVtOhCu95ES6dUSoRyIheXHYreNoTVI0c1F9qs0So,3396
|
|
450
|
+
machineconfig-7.47.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
451
|
+
machineconfig-7.47.dist-info/entry_points.txt,sha256=_JNgkzaa_gVAWyZ6UwPwXXQqURRSvAGhrVQ1RiU2sHc,746
|
|
452
|
+
machineconfig-7.47.dist-info/top_level.txt,sha256=porRtB8qms8fOIUJgK-tO83_FeH6Bpe12oUVC670teA,14
|
|
453
|
+
machineconfig-7.47.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|