machineconfig 7.79__py3-none-any.whl → 7.83__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 (52) hide show
  1. machineconfig/jobs/installer/custom/yazi.py +120 -0
  2. machineconfig/jobs/installer/custom_dev/nerdfont.py +1 -1
  3. machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +26 -12
  4. machineconfig/jobs/installer/custom_dev/sysabc.py +0 -5
  5. machineconfig/jobs/installer/installer_data.json +162 -94
  6. machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +129 -34
  7. machineconfig/profile/create_helper.py +0 -12
  8. machineconfig/profile/mapper.toml +2 -2
  9. machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +1 -0
  10. machineconfig/scripts/python/croshell.py +4 -4
  11. machineconfig/scripts/python/env_manager/env_manager_tui.py +204 -0
  12. machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
  13. machineconfig/scripts/python/helpers_devops/cli_config.py +10 -0
  14. machineconfig/scripts/python/helpers_devops/cli_nw.py +15 -16
  15. machineconfig/scripts/python/helpers_devops/cli_self.py +4 -4
  16. machineconfig/scripts/python/helpers_devops/cli_terminal.py +2 -5
  17. machineconfig/scripts/python/helpers_msearch/scripts_linux/fzfg +2 -2
  18. machineconfig/scripts/python/helpers_msearch/scripts_windows/fzfg.ps1 +58 -1
  19. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +1 -1
  20. machineconfig/scripts/python/helpers_repos/count_lines.py +40 -11
  21. machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +1 -1
  22. machineconfig/scripts/python/helpers_utils/path.py +7 -4
  23. machineconfig/scripts/python/msearch.py +37 -7
  24. machineconfig/scripts/python/utils.py +3 -3
  25. machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
  26. machineconfig/settings/yazi/init.lua +4 -0
  27. machineconfig/settings/yazi/keymap_linux.toml +11 -4
  28. machineconfig/settings/yazi/theme.toml +4 -0
  29. machineconfig/settings/yazi/yazi_linux.toml +84 -0
  30. machineconfig/settings/yazi/yazi_windows.toml +58 -0
  31. machineconfig/setup_linux/web_shortcuts/interactive.sh +10 -10
  32. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +10 -10
  33. machineconfig/utils/installer_utils/github_release_bulk.py +104 -62
  34. machineconfig/utils/installer_utils/install_from_url.py +122 -102
  35. machineconfig/utils/installer_utils/installer_class.py +15 -72
  36. machineconfig/utils/installer_utils/installer_cli.py +29 -44
  37. machineconfig/utils/installer_utils/installer_helper.py +100 -0
  38. machineconfig/utils/installer_utils/installer_runner.py +5 -8
  39. machineconfig/utils/ssh_utils/abc.py +2 -2
  40. machineconfig/utils/ssh_utils/wsl.py +44 -2
  41. {machineconfig-7.79.dist-info → machineconfig-7.83.dist-info}/METADATA +2 -2
  42. {machineconfig-7.79.dist-info → machineconfig-7.83.dist-info}/RECORD +45 -47
  43. machineconfig/scripts/python/helpers_msearch/scripts_linux/fzfag +0 -17
  44. machineconfig/scripts/python/helpers_msearch/scripts_linux/fzfrga +0 -21
  45. machineconfig/scripts/python/helpers_msearch/scripts_linux/skrg +0 -4
  46. machineconfig/scripts/python/helpers_msearch/scripts_windows/fzfb.ps1 +0 -3
  47. machineconfig/scripts/python/helpers_msearch/scripts_windows/fzfrga.bat +0 -20
  48. machineconfig/settings/yazi/yazi.toml +0 -17
  49. machineconfig/setup_linux/others/cli_installation.sh +0 -137
  50. {machineconfig-7.79.dist-info → machineconfig-7.83.dist-info}/WHEEL +0 -0
  51. {machineconfig-7.79.dist-info → machineconfig-7.83.dist-info}/entry_points.txt +0 -0
  52. {machineconfig-7.79.dist-info → machineconfig-7.83.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,120 @@
1
+
2
+ from typing import Optional
3
+ import platform
4
+ from machineconfig.utils.installer_utils.installer_class import Installer
5
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
6
+
7
+
8
+ installer_standard: InstallerData = {
9
+ "appName": "yazi",
10
+ "repoURL": "https://github.com/sxyazi/yazi",
11
+ "doc": "⚡ Blazing Fast Terminal File Manager.",
12
+ "fileNamePattern": {
13
+ "amd64": {
14
+ "linux": "yazi-x86_64-unknown-linux-musl.zip",
15
+ "macos": "yazi-x86_64-apple-darwin.zip",
16
+ "windows": "yazi-x86_64-pc-windows-msvc.zip"
17
+ },
18
+ "arm64": {
19
+ "linux": "yazi-aarch64-unknown-linux-musl.zip",
20
+ "macos": "yazi-aarch64-apple-darwin.zip",
21
+ "windows": "yazi-aarch64-pc-windows-msvc.zip"
22
+ }
23
+ }
24
+ }
25
+
26
+ def main(installer_data: InstallerData, version: Optional[str]):
27
+ _ = installer_data
28
+ inst = Installer(installer_data=installer_standard)
29
+ inst.install(version=version)
30
+
31
+ print("\n" * 5)
32
+ print("Installing Yazi plugins and flavors...")
33
+ installer_standard["appName"] = "ya"
34
+ inst = Installer(installer_data=installer_standard)
35
+ inst.install(version=version)
36
+
37
+ print("\n" * 5)
38
+ print("Cloning Yazi plugins and flavors repositories...")
39
+
40
+ from pathlib import Path
41
+ system_name = platform.system().lower()
42
+ home_dir = Path.home()
43
+ if system_name == "windows":
44
+ yazi_plugins_dir = home_dir.joinpath("AppData", "Roaming", "yazi", "config")
45
+ else:
46
+ yazi_plugins_dir = home_dir.joinpath(".config", "yazi")
47
+
48
+ yazi_plugins_path = yazi_plugins_dir.joinpath("plugins")
49
+ yazi_flavours_path = yazi_plugins_dir.joinpath("flavors")
50
+ if yazi_plugins_path.exists():
51
+ if yazi_plugins_path.is_file():
52
+ yazi_plugins_path.unlink()
53
+ elif yazi_plugins_path.is_dir():
54
+ import shutil
55
+ shutil.rmtree(yazi_plugins_path)
56
+ yazi_plugins_dir.mkdir(parents=True, exist_ok=True)
57
+ import git
58
+ git.Repo.clone_from("https://github.com/yazi-rs/plugins", yazi_plugins_path)
59
+ if yazi_flavours_path.exists():
60
+ if yazi_flavours_path.is_file():
61
+ yazi_flavours_path.unlink()
62
+ elif yazi_flavours_path.is_dir():
63
+ import shutil
64
+ shutil.rmtree(yazi_flavours_path)
65
+ yazi_plugins_dir.mkdir(parents=True, exist_ok=True)
66
+ import git
67
+ git.Repo.clone_from("https://github.com/yazi-rs/flavors", yazi_flavours_path)
68
+
69
+ # previewers:
70
+ if platform.system() == "Linux":
71
+ script = r"""
72
+ sudo nala install poppler-utils -y || true # For PDF preview, needed by yazi.
73
+ """
74
+ from machineconfig.utils.code import run_shell_script
75
+ run_shell_script(script)
76
+ elif platform.system() == "Darwin":
77
+ script = r"""
78
+ brew install --upgrade poppler || true # For PDF preview, needed by yazi.
79
+ """
80
+ from machineconfig.utils.code import run_shell_script
81
+ run_shell_script(script)
82
+ elif platform.system() == "Windows":
83
+ popler_installer: InstallerData = {
84
+ "appName": "poppler",
85
+ "repoURL": "https://github.com/oschwartz10612/poppler-windows",
86
+ "doc": "PDF rendering library - Windows builds.",
87
+ "fileNamePattern": {
88
+ "amd64": {
89
+ "windows": "Release-{version}.zip",
90
+ "linux": None,
91
+ "macos": None,
92
+ },
93
+ "arm64": {
94
+ "windows": None,
95
+ "linux": None,
96
+ "macos": None,
97
+ }
98
+ }
99
+ }
100
+ inst_poppler = Installer(installer_data=popler_installer)
101
+ inst_poppler.install(version=None)
102
+
103
+ # assuming ouch is already installed
104
+ script = """
105
+ ya pkg add ndtoan96/ouch # make ouch default previewer in yazi for compressed files
106
+ ya pkg add AnirudhG07/rich-preview # rich-cli based previewer for yazi
107
+ ya pack -a stelcodes/bunny
108
+ ya pkg add 'Tyarel8/goto-drives'
109
+ ya pkg add uhs-robert/sshfs
110
+ ya pkg add boydaihungst/file-extra-metadata
111
+ ya pkg add wylie102/duckdb
112
+
113
+
114
+ """
115
+ from machineconfig.utils.code import run_shell_script
116
+ run_shell_script(script)
117
+
118
+
119
+ if __name__ == "__main__":
120
+ pass
@@ -108,4 +108,4 @@ def main(installer_data: InstallerData, version: Optional[str]) -> None:
108
108
 
109
109
 
110
110
  if __name__ == "__main__":
111
- pass
111
+ main(1, None) # type: ignore
@@ -71,22 +71,28 @@ def _list_installed_fonts() -> list[str]:
71
71
 
72
72
 
73
73
  def _missing_required_fonts(installed_fonts: Iterable[str]) -> list[str]:
74
- """Check which required font patterns are missing from installed fonts.
75
-
74
+ """Check which feature fonts are missing from installed fonts.
75
+
76
76
  Args:
77
77
  installed_fonts: List of installed font names
78
-
78
+
79
79
  Returns:
80
- List of missing font patterns
80
+ List of descriptions for missing font groups
81
81
  """
82
- import re
83
82
 
84
- installed_norm = [f.lower().replace(" ", "") for f in installed_fonts]
83
+ def _normalize(name: str) -> str:
84
+ return name.lower().replace(" ", "").replace("_", "")
85
+
86
+ installed_norm = [_normalize(font) for font in installed_fonts]
87
+ requirements: list[tuple[str, str]] = [
88
+ ("cascadiacode", "Cascadia Code family"),
89
+ ("caskaydiacove", "Caskaydia Cove Nerd Font family"),
90
+ ]
91
+
85
92
  missing: list[str] = []
86
- for pattern in ["cascadiacode*"]:
87
- regex = re.compile(pattern)
88
- if not any(regex.search(f) for f in installed_norm):
89
- missing.append(pattern)
93
+ for needle, label in requirements:
94
+ if not any(needle in font for font in installed_norm):
95
+ missing.append(label)
90
96
  return missing
91
97
 
92
98
 
@@ -123,11 +129,15 @@ def install_nerd_fonts() -> None:
123
129
  [p.delete(sure=True) for p in folder.search("*readme*")]
124
130
  [p.delete(sure=True) for p in folder.search("*LICENSE*")]
125
131
 
132
+ print("Fonts to be installed:")
133
+ for font in (folder.search("*.ttf") + folder.search("*.otf")):
134
+ print(f" - {font}")
135
+
126
136
  console.print("⚙️ Installing fonts via PowerShell...")
127
137
  file = PathExtended.tmpfile(suffix=".ps1")
128
138
  file.parent.mkdir(parents=True, exist_ok=True)
129
-
130
- raw_content = LIBRARY_ROOT.joinpath("jobs/installer/pwsh_scripts/install_fonts.ps1").read_text(encoding="utf-8").replace(r".\fonts-to-be-installed", str(folder))
139
+
140
+ raw_content = LIBRARY_ROOT.joinpath("jobs/installer/powershell_scripts/install_fonts.ps1").read_text(encoding="utf-8").replace(r".\fonts-to-be-installed", str(folder))
131
141
  # PowerShell 5.1 can choke on certain unicode chars in some locales; keep ASCII only.
132
142
  content = "".join(ch for ch in raw_content if ord(ch) < 128)
133
143
  file.write_text(content, encoding="utf-8")
@@ -147,3 +157,7 @@ def install_nerd_fonts() -> None:
147
157
  console.print()
148
158
  render_banner("✅ Nerd Fonts installation complete! ✅", "Nerd Fonts Installer", "green", box.DOUBLE)
149
159
  console.print()
160
+
161
+
162
+ if __name__ == "__main__":
163
+ install_nerd_fonts()
@@ -42,7 +42,6 @@ winget install --no-upgrade --name "GNU Nano" --Id "GNU.Nano
42
42
  # --GROUP:dev2:VSRedistrib+VSBuildTools+Codeblocks+GnuWin32: Make+GnuPG+graphviz+WinFsp+SSHFS-win+xming+Node.js+Rustup+Cloudflare+Cloudflare WARP+Microsoft Garage Mouse without Borders
43
43
  # --GROUP:user:nu+Chrome+ChromeRemoteDesktop+Zoom+7zip+Firefox+Thunderbird+StreamlabsOBS+OBSStudio+MiKTeX+TexMaker+notepad+++Lapce+TesseractOCR+perl+DB Browser for SQLite+sql server management studio+Adobe Acrobat Reader DC+julia+Chafa+bottom+onefetch+Just+hyperfine+AWS CLI
44
44
  # Install-Module -Name Terminal-Icons -Repository PSGallery -Force -AcceptLicense -PassThru -Confirm # -RequiredVersion 2.5.10
45
- # Install-Module -Name PSFzf -SkipPublisherCheck # -AcceptLicense -PassThru -Confirm # -RequiredVersion 2.5.10
46
45
 
47
46
  """
48
47
 
@@ -50,10 +49,6 @@ zsh = r"""
50
49
  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
51
50
  echo "🔄 Updating Homebrew..."
52
51
  brew update || true
53
- echo "📥 Installing essential tools..."
54
- echo "📥 Installing Git version control..."
55
- echo "📥 Installing Nano text editor..."
56
- echo "📥 Installing Node Version Manager (NVM)..."
57
52
  # Note: git and nano are pre-installed on macOS, but we install via Homebrew to ensure latest versions
58
53
  # brew install git || true
59
54
  # brew install nano || true
@@ -120,23 +120,6 @@
120
120
  }
121
121
  }
122
122
  },
123
- {
124
- "appName": "timg",
125
- "repoURL": "CMD",
126
- "doc": "👁️ terminal image previewer.",
127
- "fileNamePattern": {
128
- "amd64": {
129
- "linux": "sudo apt install timg",
130
- "windows": null,
131
- "macos": "brew install timg"
132
- },
133
- "arm64": {
134
- "linux": "sudo apt install timg",
135
- "windows": null,
136
- "macos": "brew install timg"
137
- }
138
- }
139
- },
140
123
  {
141
124
  "appName": "diskonaut",
142
125
  "repoURL": "https://github.com/imsnif/diskonaut",
@@ -970,6 +953,23 @@
970
953
  }
971
954
  }
972
955
  },
956
+ {
957
+ "appName": "parse",
958
+ "repoURL": "CMD",
959
+ "doc": "🔍 ripgrep + semantic search from https://github.com/run-llama/semtools",
960
+ "fileNamePattern": {
961
+ "amd64": {
962
+ "linux": "npm i -g @llamaindex/semtools",
963
+ "macos": "npm i -g @llamaindex/semtools",
964
+ "windows": "npm i -g @llamaindex/semtools"
965
+ },
966
+ "arm64": {
967
+ "linux": "npm i -g @llamaindex/semtools",
968
+ "macos": "npm i -g @llamaindex/semtools",
969
+ "windows": "npm i -g @llamaindex/semtools"
970
+ }
971
+ }
972
+ },
973
973
  {
974
974
  "appName": "starship",
975
975
  "repoURL": "https://github.com/starship/starship",
@@ -1038,10 +1038,27 @@
1038
1038
  }
1039
1039
  }
1040
1040
  },
1041
+ {
1042
+ "appName": "upterm",
1043
+ "repoURL": "https://github.com/owenthereal/upterm",
1044
+ "doc": "🌐 upterm is a terminal multiplexer that allows you to share your terminal session over the web.",
1045
+ "fileNamePattern": {
1046
+ "amd64": {
1047
+ "linux": "uptermd_linux_amd64.tar.gz",
1048
+ "macos": "upterm_darwin_amd64.tar.gz",
1049
+ "windows": null
1050
+ },
1051
+ "arm64": {
1052
+ "linux": "uptermd_linux_arm64.tar.gz",
1053
+ "macos": "upterm_darwin_arm64.tar.gz",
1054
+ "windows": null
1055
+ }
1056
+ }
1057
+ },
1041
1058
  {
1042
1059
  "appName": "viu",
1043
1060
  "repoURL": "https://github.com/atanunq/viu",
1044
- "doc": "🖼️ A cli image viewer for the terminal (like chafa but in Rust)",
1061
+ "doc": "🖼️ A cli image viewer for the terminal (like chafa & ueberzugpp but in Rust)",
1045
1062
  "fileNamePattern": {
1046
1063
  "amd64": {
1047
1064
  "linux": "viu-x86_64-unknown-linux-musl",
@@ -1055,6 +1072,40 @@
1055
1072
  }
1056
1073
  }
1057
1074
  },
1075
+ {
1076
+ "appName": "timg",
1077
+ "repoURL": "CMD",
1078
+ "doc": "👁️ terminal image previewer.",
1079
+ "fileNamePattern": {
1080
+ "amd64": {
1081
+ "linux": "sudo apt install timg",
1082
+ "windows": null,
1083
+ "macos": "brew install timg"
1084
+ },
1085
+ "arm64": {
1086
+ "linux": "sudo apt install timg",
1087
+ "windows": null,
1088
+ "macos": "brew install timg"
1089
+ }
1090
+ }
1091
+ },
1092
+ {
1093
+ "appName": "chafa",
1094
+ "repoURL": "CMD",
1095
+ "doc": "🖼️ Terminal graphics and image viewer",
1096
+ "fileNamePattern": {
1097
+ "amd64": {
1098
+ "linux": "sudo nala install chafa -y",
1099
+ "windows": "winget install --no-upgrade --name \"Chafa\" --Id \"hpjansson.Chafa\" --source winget --scope user --accept-package-agreements --accept-source-agreements",
1100
+ "macos": "brew install chafa"
1101
+ },
1102
+ "arm64": {
1103
+ "linux": "sudo nala install chafa -y",
1104
+ "windows": "winget install --no-upgrade --name \"Chafa\" --Id \"hpjansson.Chafa\" --source winget --scope user --accept-package-agreements --accept-source-agreements",
1105
+ "macos": "brew install chafa"
1106
+ }
1107
+ }
1108
+ },
1058
1109
  {
1059
1110
  "appName": "watchexec",
1060
1111
  "repoURL": "https://github.com/watchexec/watchexec",
@@ -1074,18 +1125,18 @@
1074
1125
  },
1075
1126
  {
1076
1127
  "appName": "yazi",
1077
- "repoURL": "https://github.com/sxyazi/yazi",
1128
+ "repoURL": "CMD",
1078
1129
  "doc": "⚡ Blazing Fast Terminal File Manager.",
1079
1130
  "fileNamePattern": {
1080
1131
  "amd64": {
1081
- "linux": "yazi-x86_64-unknown-linux-musl.zip",
1082
- "macos": "yazi-x86_64-apple-darwin.zip",
1083
- "windows": "yazi-x86_64-pc-windows-msvc.zip"
1132
+ "linux": "yazi.py",
1133
+ "macos": "yazi.py",
1134
+ "windows": "yazi.py"
1084
1135
  },
1085
1136
  "arm64": {
1086
- "linux": "yazi-aarch64-unknown-linux-musl.zip",
1087
- "macos": "yazi-aarch64-apple-darwin.zip",
1088
- "windows": "yazi-aarch64-pc-windows-msvc.zip"
1137
+ "linux": "yazi.py",
1138
+ "macos": "yazi.py",
1139
+ "windows": "yazi.py"
1089
1140
  }
1090
1141
  }
1091
1142
  },
@@ -1140,6 +1191,40 @@
1140
1191
  }
1141
1192
  }
1142
1193
  },
1194
+ {
1195
+ "appName": "youtube-dl",
1196
+ "repoURL": "CMD",
1197
+ "doc": "📥 Command-line program to download videos from YouTube and other sites. By https://github.com/ytdl-org/youtube-dl",
1198
+ "fileNamePattern": {
1199
+ "amd64": {
1200
+ "linux": "https://yt-dl.org/downloads/latest/youtube-dl",
1201
+ "macos": "https://yt-dl.org/downloads/latest/youtube-dl",
1202
+ "windows": "https://yt-dl.org/latest/youtube-dl.exe"
1203
+ },
1204
+ "arm64": {
1205
+ "linux": "https://yt-dl.org/downloads/latest/youtube-dl",
1206
+ "macos": "https://yt-dl.org/downloads/latest/youtube-dl",
1207
+ "windows": "https://yt-dl.org/latest/youtube-dl.exe"
1208
+ }
1209
+ }
1210
+ },
1211
+ {
1212
+ "appName": "yt-dlp",
1213
+ "repoURL": "CMD",
1214
+ "doc": "📥 A youtube-dl fork with additional features and fixes, by https://github.com/yt-dlp/yt-dlp",
1215
+ "fileNamePattern": {
1216
+ "amd64": {
1217
+ "linux": "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp",
1218
+ "macos": "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_macos",
1219
+ "windows": "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp.exe"
1220
+ },
1221
+ "arm64": {
1222
+ "linux": "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_musllinux_aarch64",
1223
+ "macos": null,
1224
+ "windows": "https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_arm64.exe"
1225
+ }
1226
+ }
1227
+ },
1143
1228
  {
1144
1229
  "appName": "termusic",
1145
1230
  "repoURL": "https://github.com/tramhao/termusic",
@@ -1907,18 +1992,18 @@
1907
1992
  },
1908
1993
  {
1909
1994
  "appName": "qr",
1910
- "repoURL": "pip install qrcode",
1995
+ "repoURL": "CMD",
1911
1996
  "doc": "🔲 qr code generator. String to qr code.",
1912
1997
  "fileNamePattern": {
1913
1998
  "amd64": {
1914
- "linux": null,
1915
- "macos": null,
1916
- "windows": null
1999
+ "linux": "uv tool install qrcode",
2000
+ "macos": "uv tool install qrcode",
2001
+ "windows": "uv tool install qrcode"
1917
2002
  },
1918
2003
  "arm64": {
1919
- "linux": null,
1920
- "macos": null,
1921
- "windows": null
2004
+ "linux": "uv tool install qrcode",
2005
+ "macos": "uv tool install qrcode",
2006
+ "windows": "uv tool install qrcode"
1922
2007
  }
1923
2008
  }
1924
2009
  },
@@ -2166,14 +2251,14 @@
2166
2251
  "doc": "📈 analyze Git repositories and generate a visual contributions graph",
2167
2252
  "fileNamePattern": {
2168
2253
  "amd64": {
2169
- "linux": null,
2170
- "macos": null,
2171
- "windows": null
2254
+ "linux": "gitcs_linux_amd64",
2255
+ "macos": "gitcs_darwin_amd64",
2256
+ "windows": "gitcs_windows_amd64.exe"
2172
2257
  },
2173
2258
  "arm64": {
2174
- "linux": null,
2259
+ "linux": "gitcs_linux_386",
2175
2260
  "macos": null,
2176
- "windows": null
2261
+ "windows": "gitcs_windows_386.exe"
2177
2262
  }
2178
2263
  }
2179
2264
  },
@@ -2200,12 +2285,12 @@
2200
2285
  "doc": "📚 An interactive cheatsheet tool for the command-line",
2201
2286
  "fileNamePattern": {
2202
2287
  "amd64": {
2203
- "linux": null,
2288
+ "linux": "navi-v{version}-x86_64-unknown-linux-musl.tar.gz",
2204
2289
  "macos": null,
2205
- "windows": null
2290
+ "windows": "navi-v{version}-x86_64-pc-windows-gnu.zip"
2206
2291
  },
2207
2292
  "arm64": {
2208
- "linux": null,
2293
+ "linux": "navi-v{version}-aarch64-unknown-linux-gnu.tar.gz",
2209
2294
  "macos": null,
2210
2295
  "windows": null
2211
2296
  }
@@ -2217,13 +2302,13 @@
2217
2302
  "doc": "⚡ A very fast implementation of tldr in Rust",
2218
2303
  "fileNamePattern": {
2219
2304
  "amd64": {
2220
- "linux": null,
2221
- "macos": null,
2222
- "windows": null
2305
+ "linux": "tealdeer-linux-x86_64-musl",
2306
+ "macos": "tealdeer-macos-x86_64",
2307
+ "windows": "tealdeer-windows-x86_64-msvc.exe"
2223
2308
  },
2224
2309
  "arm64": {
2225
- "linux": null,
2226
- "macos": null,
2310
+ "linux": "tealdeer-linux-aarch64-musl",
2311
+ "macos": "tealdeer-macos-aarch64",
2227
2312
  "windows": null
2228
2313
  }
2229
2314
  }
@@ -2234,14 +2319,14 @@
2234
2319
  "doc": "🔍 A simple network sniffer in Rust",
2235
2320
  "fileNamePattern": {
2236
2321
  "amd64": {
2237
- "linux": null,
2238
- "macos": null,
2239
- "windows": null
2322
+ "linux": "Sniffnet_LinuxAppImage_amd64.AppImage",
2323
+ "macos": "Sniffnet_macOS_Intel.dmg",
2324
+ "windows": "Sniffnet_Windows_x64.msi"
2240
2325
  },
2241
2326
  "arm64": {
2242
- "linux": null,
2243
- "macos": null,
2244
- "windows": null
2327
+ "linux": "Sniffnet_LinuxAppImage_arm64.AppImage",
2328
+ "macos": "Sniffnet_macOS_AppleSilicon.dmg",
2329
+ "windows": "Sniffnet_Windows_arm64.msi"
2245
2330
  }
2246
2331
  }
2247
2332
  },
@@ -2251,13 +2336,13 @@
2251
2336
  "doc": "⚡ A command-line benchmarking tool",
2252
2337
  "fileNamePattern": {
2253
2338
  "amd64": {
2254
- "linux": null,
2255
- "macos": null,
2256
- "windows": null
2339
+ "linux": "hyperfine-v{version}-x86_64-unknown-linux-gnu.tar.gz",
2340
+ "macos": "hyperfine-v{version}-x86_64-apple-darwin.tar.gz",
2341
+ "windows": "hyperfine-v{version}-x86_64-pc-windows-msvc.zip"
2257
2342
  },
2258
2343
  "arm64": {
2259
- "linux": null,
2260
- "macos": null,
2344
+ "linux": "hyperfine-v{version}-aarch64-unknown-linux-gnu.tar.gz",
2345
+ "macos": "hyperfine-v{version}-aarch64-apple-darwin.tar.gz",
2261
2346
  "windows": null
2262
2347
  }
2263
2348
  }
@@ -2268,14 +2353,14 @@
2268
2353
  "doc": "🤖 Get up and running with large language models locally.",
2269
2354
  "fileNamePattern": {
2270
2355
  "amd64": {
2271
- "linux": null,
2272
- "macos": null,
2273
- "windows": null
2356
+ "linux": "ollama-linux-amd64.tgz",
2357
+ "macos": "Ollama.dmg",
2358
+ "windows": "OllamaSetup.exe"
2274
2359
  },
2275
2360
  "arm64": {
2276
- "linux": null,
2277
- "macos": null,
2278
- "windows": null
2361
+ "linux": "ollama-linux-arm64.tgz",
2362
+ "macos": "Ollama.dmg",
2363
+ "windows": "ollama-windows-arm64.zip"
2279
2364
  }
2280
2365
  }
2281
2366
  },
@@ -2285,8 +2370,8 @@
2285
2370
  "doc": "💰 Cointop is a fast and lightweight interactive terminal based UI application for tracking and monitoring cryptocurrency coin stats in real-time.",
2286
2371
  "fileNamePattern": {
2287
2372
  "amd64": {
2288
- "linux": null,
2289
- "macos": null,
2373
+ "linux": "cointop_{version}_linux_amd64.tar.gz",
2374
+ "macos": "cointop_{version}_darwin_amd64.tar.gz",
2290
2375
  "windows": null
2291
2376
  },
2292
2377
  "arm64": {
@@ -2319,12 +2404,12 @@
2319
2404
  "doc": "🚀 fullscreen, cross-platform terminal emulator and system monitor that looks and feels like a sci-fi computer interface",
2320
2405
  "fileNamePattern": {
2321
2406
  "amd64": {
2322
- "linux": null,
2323
- "macos": null,
2324
- "windows": null
2407
+ "linux": "eDEX-UI-Linux-x86_64.AppImage",
2408
+ "macos": "eDEX-UI-macOS-x64.dmg",
2409
+ "windows": "eDEX-UI-Windows-x64.exe"
2325
2410
  },
2326
2411
  "arm64": {
2327
- "linux": null,
2412
+ "linux": "eDEX-UI-Linux-arm64.AppImage",
2328
2413
  "macos": null,
2329
2414
  "windows": null
2330
2415
  }
@@ -2336,9 +2421,9 @@
2336
2421
  "doc": "💻 Terminal emulator",
2337
2422
  "fileNamePattern": {
2338
2423
  "amd64": {
2339
- "linux": null,
2340
- "macos": null,
2341
- "windows": null
2424
+ "linux": "ExtratermQt-{version}.glibc2.34-x86_64.AppImage",
2425
+ "macos": "ExtratermQt_{version}.dmg",
2426
+ "windows": "extratermqt-setup-{version}.exe"
2342
2427
  },
2343
2428
  "arm64": {
2344
2429
  "linux": null,
@@ -2370,14 +2455,14 @@
2370
2455
  "doc": "🦊 WebDriver for Firefox.",
2371
2456
  "fileNamePattern": {
2372
2457
  "amd64": {
2373
- "linux": null,
2374
- "macos": null,
2375
- "windows": null
2458
+ "linux": "geckodriver-v{version}-linux64.tar.gz",
2459
+ "macos": "geckodriver-v{version}-macos.tar.gz",
2460
+ "windows": "geckodriver-v{version}-win64.zip"
2376
2461
  },
2377
2462
  "arm64": {
2378
- "linux": null,
2379
- "macos": null,
2380
- "windows": null
2463
+ "linux": "geckodriver-v{version}-linux-aarch64.tar.gz",
2464
+ "macos": "geckodriver-v{version}-macos-aarch64.tar.gz",
2465
+ "windows": "geckodriver-v{version}-win-aarch64.zip"
2381
2466
  }
2382
2467
  }
2383
2468
  },
@@ -3419,23 +3504,6 @@
3419
3504
  }
3420
3505
  }
3421
3506
  },
3422
- {
3423
- "appName": "chafa",
3424
- "repoURL": "CMD",
3425
- "doc": "🖼️ Terminal graphics and image viewer",
3426
- "fileNamePattern": {
3427
- "amd64": {
3428
- "linux": "sudo nala install chafa -y",
3429
- "windows": "winget install --no-upgrade --name \"Chafa\" --Id \"hpjansson.Chafa\" --source winget --scope user --accept-package-agreements --accept-source-agreements",
3430
- "macos": "brew install chafa"
3431
- },
3432
- "arm64": {
3433
- "linux": "sudo nala install chafa -y",
3434
- "windows": "winget install --no-upgrade --name \"Chafa\" --Id \"hpjansson.Chafa\" --source winget --scope user --accept-package-agreements --accept-source-agreements",
3435
- "macos": "brew install chafa"
3436
- }
3437
- }
3438
- },
3439
3507
  {
3440
3508
  "appName": "awscli",
3441
3509
  "repoURL": "CMD",