machineconfig 3.7__py3-none-any.whl → 7.69__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 (465) hide show
  1. machineconfig/__init__.py +0 -28
  2. machineconfig/cluster/remote/distribute.py +0 -1
  3. machineconfig/cluster/remote/file_manager.py +0 -2
  4. machineconfig/cluster/remote/script_execution.py +1 -2
  5. machineconfig/cluster/sessions_managers/{enhanced_command_runner.py → helpers/enhanced_command_runner.py} +4 -6
  6. machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py +145 -0
  7. machineconfig/cluster/sessions_managers/utils/load_balancer.py +53 -0
  8. machineconfig/cluster/sessions_managers/utils/maker.py +69 -0
  9. machineconfig/cluster/sessions_managers/wt_local.py +128 -330
  10. machineconfig/cluster/sessions_managers/wt_local_manager.py +53 -187
  11. machineconfig/cluster/sessions_managers/wt_remote.py +51 -43
  12. machineconfig/cluster/sessions_managers/wt_remote_manager.py +49 -197
  13. machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +6 -19
  14. machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +52 -0
  15. machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +50 -0
  16. machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +4 -2
  17. machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +76 -0
  18. machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
  19. machineconfig/cluster/sessions_managers/zellij_local.py +81 -375
  20. machineconfig/cluster/sessions_managers/zellij_local_manager.py +22 -172
  21. machineconfig/cluster/sessions_managers/zellij_remote.py +40 -41
  22. machineconfig/cluster/sessions_managers/zellij_remote_manager.py +13 -10
  23. machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +4 -8
  24. machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +5 -20
  25. machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +3 -9
  26. machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +3 -1
  27. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +298 -0
  28. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +77 -0
  29. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +228 -0
  30. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +165 -0
  31. machineconfig/jobs/{python → installer}/check_installations.py +7 -21
  32. machineconfig/jobs/installer/custom/boxes.py +61 -0
  33. machineconfig/jobs/installer/custom/gh.py +128 -0
  34. machineconfig/jobs/{python_custom_installers → installer/custom}/hx.py +84 -18
  35. machineconfig/jobs/installer/custom_dev/alacritty.py +86 -0
  36. machineconfig/jobs/installer/custom_dev/brave.py +82 -0
  37. machineconfig/jobs/installer/custom_dev/bypass_paywall.py +59 -0
  38. machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
  39. machineconfig/jobs/installer/custom_dev/code.py +63 -0
  40. machineconfig/jobs/{python_custom_installers/dev → installer/custom_dev}/cursor.py +7 -7
  41. machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
  42. machineconfig/jobs/installer/custom_dev/espanso.py +117 -0
  43. machineconfig/jobs/installer/custom_dev/goes.py +68 -0
  44. machineconfig/jobs/installer/custom_dev/lvim.py +89 -0
  45. machineconfig/jobs/installer/custom_dev/nerdfont.py +111 -0
  46. machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +149 -0
  47. machineconfig/jobs/installer/custom_dev/redis.py +88 -0
  48. machineconfig/jobs/installer/custom_dev/sysabc.py +145 -0
  49. machineconfig/jobs/installer/custom_dev/wezterm.py +92 -0
  50. machineconfig/jobs/{python_custom_installers/dev → installer/custom_dev}/winget.py +2 -3
  51. machineconfig/jobs/installer/installer_data.json +3440 -0
  52. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/brave.sh +4 -14
  53. machineconfig/jobs/{python_custom_installers/scripts/linux/warp-cli.sh → installer/linux_scripts/cloudflare_warp_cli.sh} +5 -17
  54. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/docker.sh +6 -18
  55. machineconfig/jobs/installer/linux_scripts/docker_start.sh +37 -0
  56. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/edge.sh +3 -11
  57. machineconfig/jobs/{linux/msc → installer/linux_scripts}/lid.sh +2 -8
  58. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/nerdfont.sh +5 -17
  59. machineconfig/jobs/{linux/msc → installer/linux_scripts}/network.sh +2 -8
  60. machineconfig/jobs/installer/linux_scripts/ngrok.sh +6 -0
  61. machineconfig/jobs/installer/linux_scripts/q.sh +9 -0
  62. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/redis.sh +6 -17
  63. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/vscode.sh +5 -17
  64. machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/wezterm.sh +4 -12
  65. machineconfig/jobs/installer/package_groups.py +255 -0
  66. machineconfig/logger.py +0 -1
  67. machineconfig/profile/backup.toml +49 -0
  68. machineconfig/profile/bash_shell_profiles.md +11 -0
  69. machineconfig/profile/create_helper.py +74 -0
  70. machineconfig/profile/create_links.py +288 -0
  71. machineconfig/profile/create_links_export.py +100 -0
  72. machineconfig/profile/create_shell_profile.py +136 -0
  73. machineconfig/profile/mapper.toml +258 -0
  74. machineconfig/scripts/__init__.py +0 -4
  75. machineconfig/scripts/linux/{share_cloud.sh → other/share_cloud.sh} +14 -25
  76. machineconfig/scripts/linux/wrap_mcfg +47 -0
  77. machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
  78. machineconfig/scripts/python/agents.py +198 -0
  79. machineconfig/scripts/python/ai/command_runner/command_runner.sh +9 -0
  80. machineconfig/scripts/python/ai/command_runner/prompt.txt +9 -0
  81. machineconfig/scripts/python/ai/generate_files.py +307 -42
  82. machineconfig/scripts/python/ai/{mcinit.py → initai.py} +3 -38
  83. machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +114 -0
  84. machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +88 -22
  85. machineconfig/scripts/python/ai/solutions/_shared.py +9 -1
  86. machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +4 -1
  87. machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
  88. machineconfig/scripts/python/ai/solutions/gemini/settings.json +1 -1
  89. machineconfig/scripts/python/ai/solutions/generic.py +27 -4
  90. machineconfig/scripts/python/ai/vscode_tasks.py +37 -0
  91. machineconfig/scripts/python/cloud.py +29 -0
  92. machineconfig/scripts/python/croshell.py +129 -198
  93. machineconfig/scripts/python/define.py +31 -0
  94. machineconfig/scripts/python/devops.py +45 -131
  95. machineconfig/scripts/python/devops_navigator.py +6 -0
  96. machineconfig/scripts/python/env_manager/__init__.py +1 -0
  97. machineconfig/scripts/python/env_manager/path_manager_backend.py +47 -0
  98. machineconfig/scripts/python/env_manager/path_manager_tui.py +228 -0
  99. machineconfig/scripts/python/fire_jobs.py +166 -235
  100. machineconfig/scripts/python/ftpx.py +164 -100
  101. machineconfig/scripts/python/helpers/ast_search.py +74 -0
  102. machineconfig/scripts/python/helpers/repo_rag.py +325 -0
  103. machineconfig/scripts/python/helpers/symantic_search.py +25 -0
  104. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
  105. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +37 -0
  106. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
  107. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +42 -0
  108. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
  109. machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +110 -0
  110. machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +34 -0
  111. machineconfig/scripts/python/helpers_agents/fire_agents_load_balancer.py +22 -0
  112. machineconfig/scripts/python/helpers_agents/templates/prompt.txt +6 -0
  113. machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
  114. machineconfig/scripts/python/helpers_agents/templates/template.sh +24 -0
  115. machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +52 -39
  116. machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +13 -18
  117. machineconfig/scripts/python/helpers_cloud/cloud_sync.py +81 -0
  118. machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +3 -3
  119. machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
  120. machineconfig/scripts/python/{scheduler.py → helpers_croshell/scheduler.py} +0 -1
  121. machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +32 -20
  122. machineconfig/scripts/python/helpers_devops/cli_config.py +95 -0
  123. machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +89 -0
  124. machineconfig/scripts/python/helpers_devops/cli_data.py +25 -0
  125. machineconfig/scripts/python/helpers_devops/cli_nw.py +134 -0
  126. machineconfig/scripts/python/helpers_devops/cli_repos.py +182 -0
  127. machineconfig/scripts/python/helpers_devops/cli_self.py +134 -0
  128. machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
  129. machineconfig/scripts/python/helpers_devops/cli_share_server.py +141 -0
  130. machineconfig/scripts/python/helpers_devops/cli_terminal.py +156 -0
  131. machineconfig/scripts/python/helpers_devops/cli_utils.py +96 -0
  132. machineconfig/scripts/python/{devops_backup_retrieve.py → helpers_devops/devops_backup_retrieve.py} +7 -10
  133. machineconfig/scripts/python/helpers_devops/devops_status.py +511 -0
  134. machineconfig/scripts/python/helpers_devops/devops_update_repos.py +269 -0
  135. machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +81 -0
  136. machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +3 -0
  137. machineconfig/scripts/python/{choose_wezterm_theme.py → helpers_devops/themes/choose_wezterm_theme.py} +2 -2
  138. machineconfig/scripts/python/{cloud_manager.py → helpers_fire_command/cloud_manager.py} +0 -2
  139. machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +57 -89
  140. machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +145 -0
  141. machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +110 -0
  142. machineconfig/scripts/python/helpers_msearch/__init__.py +5 -0
  143. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfag +1 -1
  144. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +1 -1
  145. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfrga +1 -1
  146. machineconfig/scripts/python/helpers_navigator/__init__.py +20 -0
  147. machineconfig/scripts/python/helpers_navigator/command_builder.py +111 -0
  148. machineconfig/scripts/python/helpers_navigator/command_detail.py +44 -0
  149. machineconfig/scripts/python/helpers_navigator/command_tree.py +620 -0
  150. machineconfig/scripts/python/helpers_navigator/data_models.py +28 -0
  151. machineconfig/scripts/python/helpers_navigator/main_app.py +272 -0
  152. machineconfig/scripts/python/helpers_navigator/search_bar.py +15 -0
  153. machineconfig/scripts/python/helpers_repos/action.py +209 -0
  154. machineconfig/scripts/python/helpers_repos/action_helper.py +150 -0
  155. machineconfig/scripts/python/{repos_helper_clone.py → helpers_repos/clone.py} +6 -7
  156. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
  157. machineconfig/scripts/python/helpers_repos/count_lines.py +348 -0
  158. machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +17 -0
  159. machineconfig/scripts/python/helpers_repos/entrypoint.py +77 -0
  160. machineconfig/scripts/python/helpers_repos/grource.py +340 -0
  161. machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +7 -4
  162. machineconfig/scripts/python/helpers_repos/sync.py +66 -0
  163. machineconfig/scripts/python/{repos_helper_update.py → helpers_repos/update.py} +3 -3
  164. machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +58 -0
  165. machineconfig/scripts/python/helpers_utils/download.py +152 -0
  166. machineconfig/scripts/python/helpers_utils/path.py +108 -0
  167. machineconfig/scripts/python/interactive.py +187 -0
  168. machineconfig/scripts/python/mcfg_entry.py +63 -0
  169. machineconfig/scripts/python/msearch.py +40 -0
  170. machineconfig/scripts/python/{devops_add_identity.py → nw/devops_add_identity.py} +1 -3
  171. machineconfig/scripts/python/{devops_add_ssh_key.py → nw/devops_add_ssh_key.py} +74 -44
  172. machineconfig/scripts/{linux → python/nw}/mount_nfs +1 -1
  173. machineconfig/scripts/python/{mount_nfs.py → nw/mount_nfs.py} +19 -16
  174. machineconfig/scripts/{linux → python/nw}/mount_nw_drive +1 -2
  175. machineconfig/scripts/python/{mount_ssh.py → nw/mount_ssh.py} +7 -8
  176. machineconfig/scripts/python/{onetimeshare.py → nw/onetimeshare.py} +0 -1
  177. machineconfig/scripts/python/nw/ssh_debug_linux.py +391 -0
  178. machineconfig/scripts/python/nw/ssh_debug_windows.py +338 -0
  179. machineconfig/scripts/python/{wifi_conn.py → nw/wifi_conn.py} +1 -51
  180. machineconfig/scripts/python/nw/wsl_windows_transfer.py +67 -0
  181. machineconfig/scripts/python/sessions.py +167 -0
  182. machineconfig/scripts/python/terminal.py +127 -0
  183. machineconfig/scripts/python/utils.py +66 -0
  184. machineconfig/scripts/windows/mounts/Restore-ThunderbirdProfile.ps1 +92 -0
  185. machineconfig/scripts/windows/{mount_nfs.ps1 → mounts/mount_nfs.ps1} +1 -3
  186. machineconfig/scripts/windows/{mount_ssh.ps1 → mounts/mount_ssh.ps1} +1 -1
  187. machineconfig/scripts/windows/{share_smb.ps1 → mounts/share_smb.ps1} +0 -6
  188. machineconfig/scripts/windows/wrap_mcfg.ps1 +60 -0
  189. machineconfig/settings/broot/br.sh +0 -4
  190. machineconfig/settings/broot/conf.toml +1 -1
  191. machineconfig/settings/helix/config.toml +16 -0
  192. machineconfig/settings/helix/languages.toml +13 -4
  193. machineconfig/settings/helix/yazi-picker.sh +12 -0
  194. machineconfig/settings/lf/linux/exe/lfcd.sh +1 -0
  195. machineconfig/settings/lf/linux/exe/previewer.sh +9 -3
  196. machineconfig/settings/lf/linux/lfrc +10 -12
  197. machineconfig/settings/lf/windows/fzf_edit.ps1 +2 -2
  198. machineconfig/settings/lf/windows/lfcd.ps1 +1 -1
  199. machineconfig/settings/lf/windows/lfrc +18 -38
  200. machineconfig/settings/lf/windows/mkfile.ps1 +1 -1
  201. machineconfig/settings/linters/.ruff.toml +1 -1
  202. machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -6
  203. machineconfig/settings/marimo/marimo.toml +80 -0
  204. machineconfig/settings/marimo/snippets/globalize.py +34 -0
  205. machineconfig/settings/pistol/pistol.conf +1 -1
  206. machineconfig/settings/shells/bash/init.sh +55 -31
  207. machineconfig/settings/shells/nushell/config.nu +1 -34
  208. machineconfig/settings/shells/nushell/init.nu +127 -0
  209. machineconfig/settings/shells/pwsh/init.ps1 +61 -43
  210. machineconfig/settings/shells/starship/starship.toml +16 -0
  211. machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
  212. machineconfig/settings/shells/wt/settings.json +32 -17
  213. machineconfig/settings/shells/zsh/init.sh +89 -0
  214. machineconfig/settings/svim/linux/init.toml +0 -4
  215. machineconfig/settings/svim/windows/init.toml +0 -3
  216. machineconfig/settings/yazi/init.lua +57 -0
  217. machineconfig/settings/yazi/keymap_linux.toml +79 -0
  218. machineconfig/settings/yazi/keymap_windows.toml +78 -0
  219. machineconfig/settings/yazi/shell/yazi_cd.ps1 +33 -0
  220. machineconfig/settings/yazi/shell/yazi_cd.sh +8 -0
  221. machineconfig/settings/yazi/yazi.toml +14 -1
  222. machineconfig/setup_linux/__init__.py +10 -0
  223. machineconfig/setup_linux/apps_desktop.sh +89 -0
  224. machineconfig/setup_linux/apps_gui.sh +64 -0
  225. machineconfig/setup_linux/{nix → others}/cli_installation.sh +9 -29
  226. machineconfig/setup_linux/ssh/openssh_all.sh +25 -0
  227. machineconfig/setup_linux/ssh/openssh_wsl.sh +38 -0
  228. machineconfig/setup_linux/uv.sh +15 -0
  229. machineconfig/setup_linux/web_shortcuts/interactive.sh +28 -203
  230. machineconfig/setup_mac/__init__.py +16 -0
  231. machineconfig/setup_mac/apps_gui.sh +248 -0
  232. machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
  233. machineconfig/setup_mac/uv.sh +36 -0
  234. machineconfig/setup_windows/__init__.py +8 -0
  235. machineconfig/setup_windows/others/power_options.ps1 +7 -0
  236. machineconfig/setup_windows/ssh/add-sshkey.ps1 +29 -0
  237. machineconfig/setup_windows/ssh/add_identity.ps1 +11 -0
  238. machineconfig/setup_windows/ssh/openssh-server.ps1 +37 -0
  239. machineconfig/setup_windows/uv.ps1 +17 -0
  240. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +28 -189
  241. machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +17 -0
  242. machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +37 -23
  243. machineconfig/utils/accessories.py +52 -12
  244. machineconfig/utils/cloud/onedrive/README.md +139 -0
  245. machineconfig/utils/code.py +140 -93
  246. machineconfig/utils/files/art/fat_croco.txt +10 -0
  247. machineconfig/utils/files/art/halfwit_croco.txt +9 -0
  248. machineconfig/utils/files/art/happy_croco.txt +22 -0
  249. machineconfig/utils/files/art/water_croco.txt +11 -0
  250. machineconfig/utils/files/ascii_art.py +118 -0
  251. machineconfig/utils/files/dbms.py +257 -0
  252. machineconfig/utils/files/headers.py +68 -0
  253. machineconfig/utils/files/ouch/decompress.py +45 -0
  254. machineconfig/utils/files/read.py +95 -0
  255. machineconfig/utils/installer_utils/github_release_bulk.py +188 -0
  256. machineconfig/utils/installer_utils/install_from_url.py +180 -0
  257. machineconfig/utils/installer_utils/installer_class.py +239 -316
  258. machineconfig/utils/installer_utils/installer_cli.py +186 -0
  259. machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +90 -5
  260. machineconfig/utils/installer_utils/installer_runner.py +191 -0
  261. machineconfig/utils/io.py +77 -24
  262. machineconfig/utils/links.py +309 -100
  263. machineconfig/utils/meta.py +255 -0
  264. machineconfig/utils/notifications.py +1 -1
  265. machineconfig/utils/options.py +19 -47
  266. machineconfig/utils/path_extended.py +111 -121
  267. machineconfig/utils/path_helper.py +75 -22
  268. machineconfig/utils/procs.py +50 -74
  269. machineconfig/utils/scheduler.py +94 -97
  270. machineconfig/utils/scheduling.py +0 -3
  271. machineconfig/utils/schemas/fire_agents/fire_agents_input.py +5 -17
  272. machineconfig/utils/schemas/installer/installer_types.py +28 -6
  273. machineconfig/utils/schemas/layouts/layout_types.py +34 -1
  274. machineconfig/utils/source_of_truth.py +3 -6
  275. machineconfig/utils/ssh.py +742 -254
  276. machineconfig/utils/ssh_utils/utils.py +0 -0
  277. machineconfig/utils/terminal.py +3 -140
  278. machineconfig/utils/tst.py +20 -0
  279. machineconfig/utils/upgrade_packages.py +109 -28
  280. machineconfig/utils/ve.py +13 -5
  281. machineconfig-7.69.dist-info/METADATA +124 -0
  282. machineconfig-7.69.dist-info/RECORD +454 -0
  283. machineconfig-7.69.dist-info/entry_points.txt +15 -0
  284. machineconfig/cluster/templates/cli_click.py +0 -102
  285. machineconfig/cluster/templates/cli_gooey.py +0 -115
  286. machineconfig/cluster/templates/utils.py +0 -51
  287. machineconfig/jobs/linux/msc/cli_agents.sh +0 -32
  288. machineconfig/jobs/python/create_bootable_media.py +0 -16
  289. machineconfig/jobs/python/python_cargo_build_share.py +0 -59
  290. machineconfig/jobs/python/python_ve_symlink.py +0 -29
  291. machineconfig/jobs/python/tasks.py +0 -3
  292. machineconfig/jobs/python/vscode/api.py +0 -48
  293. machineconfig/jobs/python/vscode/link_ve.py +0 -63
  294. machineconfig/jobs/python/vscode/select_interpreter.py +0 -87
  295. machineconfig/jobs/python/vscode/sync_code.py +0 -58
  296. machineconfig/jobs/python_custom_installers/archive/ngrok.py +0 -63
  297. machineconfig/jobs/python_custom_installers/dev/aider.py +0 -37
  298. machineconfig/jobs/python_custom_installers/dev/alacritty.py +0 -65
  299. machineconfig/jobs/python_custom_installers/dev/brave.py +0 -71
  300. machineconfig/jobs/python_custom_installers/dev/bypass_paywall.py +0 -50
  301. machineconfig/jobs/python_custom_installers/dev/code.py +0 -51
  302. machineconfig/jobs/python_custom_installers/dev/docker_desktop.py +0 -78
  303. machineconfig/jobs/python_custom_installers/dev/espanso.py +0 -90
  304. machineconfig/jobs/python_custom_installers/dev/goes.py +0 -55
  305. machineconfig/jobs/python_custom_installers/dev/lvim.py +0 -77
  306. machineconfig/jobs/python_custom_installers/dev/nerdfont.py +0 -68
  307. machineconfig/jobs/python_custom_installers/dev/redis.py +0 -65
  308. machineconfig/jobs/python_custom_installers/dev/reverse_proxy.md +0 -31
  309. machineconfig/jobs/python_custom_installers/dev/wezterm.py +0 -70
  310. machineconfig/jobs/python_custom_installers/docker.py +0 -74
  311. machineconfig/jobs/python_custom_installers/gh.py +0 -97
  312. machineconfig/jobs/python_custom_installers/scripts/linux/docker_start.sh +0 -45
  313. machineconfig/jobs/python_custom_installers/scripts/linux/pgsql.sh +0 -49
  314. machineconfig/jobs/python_custom_installers/scripts/linux/timescaledb.sh +0 -85
  315. machineconfig/jobs/python_custom_installers/warp-cli.py +0 -71
  316. machineconfig/jobs/python_generic_installers/config.json +0 -603
  317. machineconfig/jobs/python_generic_installers/config.json.bak +0 -414
  318. machineconfig/jobs/python_generic_installers/dev/config.archive.json +0 -18
  319. machineconfig/jobs/python_generic_installers/dev/config.json +0 -825
  320. machineconfig/jobs/python_generic_installers/dev/config.json.bak +0 -565
  321. machineconfig/jobs/python_linux_installers/archive/config.json +0 -18
  322. machineconfig/jobs/python_linux_installers/archive/config.json.bak +0 -10
  323. machineconfig/jobs/python_linux_installers/config.json +0 -145
  324. machineconfig/jobs/python_linux_installers/config.json.bak +0 -110
  325. machineconfig/jobs/python_linux_installers/dev/config.json +0 -276
  326. machineconfig/jobs/python_linux_installers/dev/config.json.bak +0 -206
  327. machineconfig/jobs/python_windows_installers/archive/file.json +0 -11
  328. machineconfig/jobs/python_windows_installers/config.json +0 -82
  329. machineconfig/jobs/python_windows_installers/config.json.bak +0 -56
  330. machineconfig/jobs/python_windows_installers/dev/config.json +0 -4
  331. machineconfig/jobs/python_windows_installers/dev/config.json.bak +0 -3
  332. machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -14
  333. machineconfig/jobs/windows/start_terminal.ps1 +0 -6
  334. machineconfig/jobs/windows/startup_file.cmd +0 -2
  335. machineconfig/profile/create.py +0 -169
  336. machineconfig/profile/shell.py +0 -176
  337. machineconfig/scripts/cloud/init.sh +0 -119
  338. machineconfig/scripts/linux/choose_wezterm_theme +0 -3
  339. machineconfig/scripts/linux/cloud_copy +0 -2
  340. machineconfig/scripts/linux/cloud_mount +0 -2
  341. machineconfig/scripts/linux/cloud_repo_sync +0 -2
  342. machineconfig/scripts/linux/cloud_sync +0 -2
  343. machineconfig/scripts/linux/croshell +0 -3
  344. machineconfig/scripts/linux/devops +0 -2
  345. machineconfig/scripts/linux/fire +0 -2
  346. machineconfig/scripts/linux/fire_agents +0 -2
  347. machineconfig/scripts/linux/ftpx +0 -2
  348. machineconfig/scripts/linux/fzf2g +0 -21
  349. machineconfig/scripts/linux/fzffg +0 -25
  350. machineconfig/scripts/linux/gh_models +0 -2
  351. machineconfig/scripts/linux/kill_process +0 -2
  352. machineconfig/scripts/linux/mcinit +0 -2
  353. machineconfig/scripts/linux/programs +0 -21
  354. machineconfig/scripts/linux/repos +0 -2
  355. machineconfig/scripts/linux/scheduler +0 -2
  356. machineconfig/scripts/linux/share_smb +0 -1
  357. machineconfig/scripts/linux/start_slidev +0 -2
  358. machineconfig/scripts/linux/start_terminals +0 -3
  359. machineconfig/scripts/linux/warp-cli.sh +0 -122
  360. machineconfig/scripts/linux/wifi_conn +0 -2
  361. machineconfig/scripts/linux/z_ls +0 -104
  362. machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
  363. machineconfig/scripts/python/archive/im2text.py +0 -34
  364. machineconfig/scripts/python/archive/tmate_conn.py +0 -41
  365. machineconfig/scripts/python/archive/tmate_start.py +0 -44
  366. machineconfig/scripts/python/cloud_repo_sync.py +0 -192
  367. machineconfig/scripts/python/cloud_sync.py +0 -85
  368. machineconfig/scripts/python/devops_devapps_install.py +0 -202
  369. machineconfig/scripts/python/devops_update_repos.py +0 -180
  370. machineconfig/scripts/python/dotfile.py +0 -52
  371. machineconfig/scripts/python/fire_agents.py +0 -176
  372. machineconfig/scripts/python/fire_agents_help_launch.py +0 -143
  373. machineconfig/scripts/python/fire_agents_load_balancer.py +0 -50
  374. machineconfig/scripts/python/fire_jobs_args_helper.py +0 -84
  375. machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -66
  376. machineconfig/scripts/python/get_zellij_cmd.py +0 -15
  377. machineconfig/scripts/python/gh_models.py +0 -104
  378. machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -114
  379. machineconfig/scripts/python/repos.py +0 -160
  380. machineconfig/scripts/python/snapshot.py +0 -25
  381. machineconfig/scripts/python/start_terminals.py +0 -121
  382. machineconfig/scripts/python/wsl_windows_transfer.py +0 -72
  383. machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -1
  384. machineconfig/scripts/windows/cloud_copy.ps1 +0 -1
  385. machineconfig/scripts/windows/cloud_mount.ps1 +0 -1
  386. machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -1
  387. machineconfig/scripts/windows/cloud_sync.ps1 +0 -1
  388. machineconfig/scripts/windows/croshell.ps1 +0 -1
  389. machineconfig/scripts/windows/devops.ps1 +0 -1
  390. machineconfig/scripts/windows/dotfile.ps1 +0 -1
  391. machineconfig/scripts/windows/fire.ps1 +0 -1
  392. machineconfig/scripts/windows/ftpx.ps1 +0 -1
  393. machineconfig/scripts/windows/gpt.ps1 +0 -1
  394. machineconfig/scripts/windows/grep.ps1 +0 -2
  395. machineconfig/scripts/windows/kill_process.ps1 +0 -1
  396. machineconfig/scripts/windows/mcinit.ps1 +0 -1
  397. machineconfig/scripts/windows/nano.ps1 +0 -3
  398. machineconfig/scripts/windows/pomodoro.ps1 +0 -1
  399. machineconfig/scripts/windows/reload_path.ps1 +0 -3
  400. machineconfig/scripts/windows/repos.ps1 +0 -1
  401. machineconfig/scripts/windows/scheduler.ps1 +0 -1
  402. machineconfig/scripts/windows/snapshot.ps1 +0 -1
  403. machineconfig/scripts/windows/start_slidev.ps1 +0 -1
  404. machineconfig/scripts/windows/start_terminals.ps1 +0 -1
  405. machineconfig/scripts/windows/wifi_conn.ps1 +0 -2
  406. machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -46
  407. machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -76
  408. machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
  409. machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
  410. machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -93
  411. machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -11
  412. machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -52
  413. machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -18
  414. machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -36
  415. machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -16
  416. machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -11
  417. machineconfig/setup_windows/wt_and_pwsh/install_nerd_fonts.py +0 -100
  418. machineconfig/utils/ai/generate_file_checklist.py +0 -68
  419. machineconfig/utils/installer.py +0 -255
  420. machineconfig-3.7.dist-info/METADATA +0 -165
  421. machineconfig-3.7.dist-info/RECORD +0 -432
  422. machineconfig-3.7.dist-info/entry_points.txt +0 -18
  423. machineconfig/cluster/{templates → remote}/run_cloud.py +0 -0
  424. machineconfig/cluster/{templates → remote}/run_cluster.py +0 -0
  425. machineconfig/cluster/{templates → remote}/run_remote.py +0 -0
  426. machineconfig/jobs/{python → installer}/__init__.py +0 -0
  427. machineconfig/jobs/{python_custom_installers → installer/custom_dev}/__init__.py +0 -0
  428. machineconfig/{setup_windows/wt_and_pwsh → jobs/installer/powershell_scripts}/install_fonts.ps1 +0 -0
  429. machineconfig/scripts/linux/{share_nfs → other/share_nfs} +0 -0
  430. machineconfig/scripts/linux/{start_docker → other/start_docker} +0 -0
  431. machineconfig/scripts/linux/{switch_ip → other/switch_ip} +0 -0
  432. machineconfig/{jobs/python_generic_installers → scripts/python/helpers_agents}/__init__.py +0 -0
  433. machineconfig/{jobs/python_linux_installers → scripts/python/helpers_agents/agentic_frameworks}/__init__.py +0 -0
  434. machineconfig/scripts/python/{fire_agents_help_search.py → helpers_agents/fire_agents_help_search.py} +0 -0
  435. machineconfig/{jobs/python_linux_installers/dev → scripts/python/helpers_cloud}/__init__.py +0 -0
  436. machineconfig/scripts/python/{helpers → helpers_cloud}/cloud_helpers.py +1 -1
  437. /machineconfig/scripts/python/{helpers → helpers_cloud}/helpers5.py +0 -0
  438. /machineconfig/{jobs/python_windows_installers → scripts/python/helpers_croshell}/__init__.py +0 -0
  439. /machineconfig/scripts/python/{pomodoro.py → helpers_croshell/pomodoro.py} +0 -0
  440. /machineconfig/scripts/python/{viewer.py → helpers_croshell/viewer.py} +0 -0
  441. /machineconfig/scripts/python/{viewer_template.py → helpers_croshell/viewer_template.py} +0 -0
  442. /machineconfig/{jobs/python_windows_installers/archive → scripts/python/helpers_devops}/__init__.py +0 -0
  443. /machineconfig/{jobs/python_windows_installers/dev → scripts/python/helpers_devops/themes}/__init__.py +0 -0
  444. /machineconfig/{jobs/windows/msc/cli_agents.bat → scripts/python/helpers_devops/themes/choose_starship_theme.ps1} +0 -0
  445. /machineconfig/scripts/python/{helpers → helpers_fire_command}/__init__.py +0 -0
  446. /machineconfig/scripts/python/{fire_jobs_streamlit_helper.py → helpers_fire_command/fire_jobs_streamlit_helper.py} +0 -0
  447. /machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/skrg +0 -0
  448. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfb.ps1 +0 -0
  449. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfg.ps1 +0 -0
  450. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfrga.bat +0 -0
  451. /machineconfig/{jobs/windows/msc/cli_agents.ps1 → scripts/python/helpers_sessions/__init__.py} +0 -0
  452. /machineconfig/scripts/{windows/share_nfs.ps1 → python/nw/__init__.py} +0 -0
  453. /machineconfig/scripts/{linux → python/nw}/mount_drive +0 -0
  454. /machineconfig/scripts/python/{mount_nw_drive.py → nw/mount_nw_drive.py} +0 -0
  455. /machineconfig/scripts/{linux → python/nw}/mount_smb +0 -0
  456. /machineconfig/scripts/windows/{mount_nw.ps1 → mounts/mount_nw.ps1} +0 -0
  457. /machineconfig/scripts/windows/{mount_smb.ps1 → mounts/mount_smb.ps1} +0 -0
  458. /machineconfig/scripts/windows/{share_cloud.cmd → mounts/share_cloud.cmd} +0 -0
  459. /machineconfig/scripts/windows/{unlock_bitlocker.ps1 → mounts/unlock_bitlocker.ps1} +0 -0
  460. /machineconfig/setup_linux/{web_shortcuts → others}/android.sh +0 -0
  461. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_add_key.ps1 +0 -0
  462. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_copy-ssh-id.ps1 +0 -0
  463. /machineconfig/{settings/yazi/keymap.toml → utils/files/ouch/__init__.py} +0 -0
  464. {machineconfig-3.7.dist-info → machineconfig-7.69.dist-info}/WHEEL +0 -0
  465. {machineconfig-3.7.dist-info → machineconfig-7.69.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,86 @@
1
+ """alacritty"""
2
+
3
+ import platform
4
+ import subprocess
5
+ from typing import Optional
6
+ from rich import box
7
+ from rich.console import Console
8
+ from rich.panel import Panel
9
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
10
+
11
+
12
+ # config_dict: InstallerData = {"appName": "Alacritty", "repoURL": "CMD", "doc": "Terminal Console"}
13
+
14
+
15
+ def main(installer_data: InstallerData, version: Optional[str]) -> None:
16
+ console = Console()
17
+ _ = installer_data
18
+ console.print(
19
+ Panel.fit(
20
+ "\n".join([f"💻 Platform: {platform.system()}", f"🔄 Version: {'latest' if version is None else version}"]),
21
+ title="🖥️ Alacritty Installer",
22
+ border_style="cyan",
23
+ box=box.ROUNDED,
24
+ )
25
+ )
26
+
27
+ _ = version
28
+ if platform.system() == "Windows":
29
+ console.print("🪟 Installing Alacritty on Windows using Cargo...", style="bold")
30
+ program = """
31
+
32
+ cargo install alacritty
33
+ mkdir -p $HOME/.config/alacritty/themes
34
+ git clone https://github.com/alacritty/alacritty-theme $HOME/.config/alacritty/themes
35
+
36
+ """
37
+ elif platform.system() in ["Linux", "Darwin"]:
38
+ system_name = "Linux" if platform.system() == "Linux" else "macOS"
39
+ console.print(f"🐧 Installing Alacritty on {system_name} using Cargo...", style="bold")
40
+ program = """
41
+
42
+
43
+ cargo install alacritty
44
+ mkdir -p $HOME/.config/alacritty/themes
45
+ git clone https://github.com/alacritty/alacritty-theme $HOME/.config/alacritty/themes
46
+
47
+ """
48
+ else:
49
+ error_msg = f"Unsupported platform: {platform.system()}"
50
+ console.print(
51
+ Panel.fit(
52
+ "\n".join([error_msg]),
53
+ title="❌ Error",
54
+ subtitle="⚠️ Unsupported platform",
55
+ border_style="red",
56
+ box=box.ROUNDED,
57
+ )
58
+ )
59
+ raise NotImplementedError(error_msg)
60
+
61
+ console.print(
62
+ Panel.fit(
63
+ "\n".join(
64
+ [
65
+ "1️⃣ Install Alacritty using Cargo",
66
+ "2️⃣ Create config directories",
67
+ "3️⃣ Clone theme repository",
68
+ ]
69
+ ),
70
+ title="ℹ️ Installation Plan",
71
+ border_style="magenta",
72
+ box=box.ROUNDED,
73
+ )
74
+ )
75
+
76
+ console.print("🔄 EXECUTING | Running Alacritty installation...", style="bold yellow")
77
+ try:
78
+ subprocess.run(program, shell=True, text=True, check=True)
79
+ console.print("✅ Alacritty installation completed successfully", style="bold green")
80
+ except subprocess.CalledProcessError as e:
81
+ console.print(f"❌ Installation failed with exit code {e.returncode}", style="bold red")
82
+ raise
83
+
84
+
85
+ if __name__ == "__main__":
86
+ pass
@@ -0,0 +1,82 @@
1
+ """brave installer"""
2
+
3
+ import platform
4
+ import subprocess
5
+ from typing import Optional
6
+ from rich import box
7
+ from rich.console import Console
8
+ from rich.panel import Panel
9
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
10
+
11
+
12
+
13
+ def main(installer_data: InstallerData, version: Optional[str]) -> None:
14
+ console = Console()
15
+ _ = installer_data
16
+ console.print(
17
+ Panel.fit(
18
+ "\n".join([f"💻 Platform: {platform.system()}", f"🔄 Version: {'latest' if version is None else version}"]),
19
+ title="🦁 Brave Browser Installer",
20
+ border_style="orange1",
21
+ box=box.ROUNDED,
22
+ )
23
+ )
24
+
25
+ _ = version
26
+ if platform.system() == "Windows":
27
+ console.print("🪟 Installing Brave Browser on Windows using winget...", style="bold")
28
+ program = """
29
+
30
+ winget install --no-upgrade --name "Brave" --Id "Brave.Brave" --source winget --scope user --accept-package-agreements --accept-source-agreements
31
+
32
+ """
33
+ elif platform.system() in ["Linux", "Darwin"]:
34
+ system_name = "Linux" if platform.system() == "Linux" else "macOS"
35
+ console.print(f"🐧 Installing Brave Browser on {system_name}...", style="bold")
36
+ import machineconfig.jobs.installer as module
37
+ from pathlib import Path
38
+
39
+ if platform.system() == "Linux":
40
+ program = Path(module.__file__).parent.joinpath("linux_scripts/brave.sh").read_text(encoding="utf-8")
41
+ else: # Darwin/macOS
42
+ program = "brew install --cask brave-browser"
43
+ else:
44
+ error_msg = f"Unsupported platform: {platform.system()}"
45
+ console.print(
46
+ Panel.fit(
47
+ "\n".join([error_msg]),
48
+ title="❌ Error",
49
+ subtitle="⚠️ Unsupported platform",
50
+ border_style="red",
51
+ box=box.ROUNDED,
52
+ )
53
+ )
54
+ raise NotImplementedError(error_msg)
55
+
56
+ console.print(
57
+ Panel.fit(
58
+ "\n".join(
59
+ [
60
+ "🔒 Built-in ad blocking",
61
+ "🛡️ Privacy-focused browsing",
62
+ "💨 Faster page loading",
63
+ "🪙 Optional crypto rewards",
64
+ ]
65
+ ),
66
+ title="ℹ️ Brave Browser Features",
67
+ border_style="magenta",
68
+ box=box.ROUNDED,
69
+ )
70
+ )
71
+
72
+ console.print("🔄 EXECUTING | Running Brave Browser installation...", style="bold yellow")
73
+ try:
74
+ subprocess.run(program, shell=True, text=True, check=True)
75
+ console.print("✅ Brave Browser installation completed successfully", style="bold green")
76
+ except subprocess.CalledProcessError as e:
77
+ console.print(f"❌ Installation failed with exit code {e.returncode}", style="bold red")
78
+ raise
79
+
80
+
81
+ if __name__ == "__main__":
82
+ pass
@@ -0,0 +1,59 @@
1
+ # import matplotlib.pyplot as plt
2
+
3
+ # from platform import system
4
+ from typing import Optional
5
+ from rich import box
6
+ from rich.console import Console
7
+ from rich.panel import Panel
8
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
9
+ from machineconfig.utils.path_extended import PathExtended
10
+
11
+
12
+ # config_dict: InstallerData = {
13
+ # "appName": "bypass-paywalls-chrome",
14
+ # "repoURL": "https://github.com/iamadamdev/bypass-paywalls-chrome",
15
+ # "doc": """Plugin for chrome to bypass paywalls""",
16
+ # }
17
+
18
+
19
+ def main(installer_data: InstallerData, version: Optional[str] = None) -> str:
20
+ console = Console()
21
+ _ = installer_data
22
+ console.print(
23
+ Panel.fit(
24
+ "\n".join([f"🔄 Version: {'latest' if version is None else version}"]),
25
+ title="🔓 Bypass Paywall Installer",
26
+ border_style="cyan",
27
+ box=box.ROUNDED,
28
+ )
29
+ )
30
+
31
+ _ = version
32
+ folder = r"C:\\"
33
+
34
+ console.print("📥 Downloading extension from GitHub repository...", style="bold")
35
+ PathExtended("https://github.com/iamadamdev/bypass-paywalls-chrome/archive/master.zip").download().unzip(folder=folder, content=True)
36
+ extension_folder = PathExtended(folder).joinpath("bypass-paywalls-chrome-master")
37
+
38
+ console.print(
39
+ Panel.fit(
40
+ "\n".join(
41
+ [
42
+ f"📂 Location: {extension_folder}",
43
+ "ℹ️ Next steps:",
44
+ "1️⃣ Open Chrome and navigate to chrome://extensions",
45
+ "2️⃣ Enable Developer Mode (toggle in top right)",
46
+ "3️⃣ Click 'Load unpacked' and select the extension folder",
47
+ ]
48
+ ),
49
+ title="✅ Extension Ready",
50
+ border_style="green",
51
+ box=box.ROUNDED,
52
+ )
53
+ )
54
+
55
+ return ""
56
+
57
+
58
+ if __name__ == "__main__":
59
+ pass
@@ -0,0 +1,23 @@
1
+
2
+ from typing import Optional
3
+ import platform
4
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
5
+
6
+
7
+ def main(installer_data: InstallerData, version: Optional[str]):
8
+ _ = installer_data, version
9
+ system = platform.system()
10
+ if system == "Windows":
11
+ raise NotImplementedError("Installer is not yet implemented for Windows.")
12
+ elif system == "Linux":
13
+ from pathlib import Path
14
+ import machineconfig.jobs.installer as module
15
+ program = Path(module.__file__).parent.joinpath("linux_scripts/cloudflare_warp_cli.sh").read_text(encoding="utf-8")
16
+ elif system == "Darwin":
17
+ program = "brew install --cask cloudflare-warp"
18
+ else:
19
+ raise NotImplementedError(f"Unsupported platform: {system}")
20
+ import subprocess
21
+ subprocess.run(program, shell=True, check=True)
22
+ return f"Cloudflare WARP CLI installed successfully on {system}."
23
+
@@ -0,0 +1,63 @@
1
+ """vs code installer as per https://code.visualstudio.com/docs/setup/linux"""
2
+
3
+ from typing import Optional
4
+ import platform
5
+ import subprocess
6
+ from rich import box
7
+ from rich.console import Console
8
+ from rich.panel import Panel
9
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
10
+
11
+
12
+ def main(installer_data: InstallerData, version: Optional[str] = None) -> None:
13
+ console = Console()
14
+ _ = installer_data
15
+ console.print(
16
+ Panel.fit(
17
+ "\n".join([f"🖥️ Platform: {platform.system()}", f"🔄 Version: {'latest' if version is None else version}"]),
18
+ title="💻 VS Code Installer",
19
+ border_style="blue",
20
+ box=box.ROUNDED,
21
+ )
22
+ )
23
+
24
+ if platform.system() == "Linux":
25
+ console.print("🐧 Installing VS Code on Linux using official script...", style="bold")
26
+ import machineconfig.jobs.installer as module
27
+ from pathlib import Path
28
+
29
+ install_script = Path(module.__file__).parent.joinpath("linux_scripts/vscode.sh").read_text(encoding="utf-8")
30
+ elif platform.system() == "Darwin":
31
+ console.print("🍎 Installing VS Code on macOS using Homebrew...", style="bold")
32
+ install_script = """brew install --cask visual-studio-code"""
33
+ elif platform.system() == "Windows":
34
+ console.print("🪟 Installing VS Code on Windows using winget...", style="bold")
35
+ install_script = """
36
+ winget install --no-upgrade --name "Microsoft Visual Studio Code" --Id "Microsoft.VisualStudioCode" --source winget --scope user --accept-package-agreements --accept-source-agreements
37
+
38
+ """
39
+ else:
40
+ error_msg = f"Unsupported platform: {platform.system()}"
41
+ console.print(
42
+ Panel.fit(
43
+ "\n".join([error_msg]),
44
+ title="❌ Error",
45
+ subtitle="⚠️ Unsupported platform",
46
+ border_style="red",
47
+ box=box.ROUNDED,
48
+ )
49
+ )
50
+ raise NotImplementedError(error_msg)
51
+ _ = version
52
+
53
+ console.print("🔄 EXECUTING | Running VS Code installation...", style="bold yellow")
54
+ try:
55
+ subprocess.run(install_script, shell=True, text=True, check=True)
56
+ console.print("✅ VS Code installation completed successfully", style="bold green")
57
+ except subprocess.CalledProcessError as e:
58
+ console.print(f"❌ Installation failed with exit code {e.returncode}", style="bold red")
59
+ raise
60
+
61
+
62
+ if __name__ == "__main__":
63
+ pass
@@ -7,7 +7,7 @@ from typing import Optional
7
7
  from machineconfig.utils.schemas.installer.installer_types import InstallerData
8
8
 
9
9
 
10
- config_dict: InstallerData = {"appName": "Cursor", "repoURL": "CUSTOM", "doc": "Cursor", "filenameTemplate": {"amd64": {"windows": "VSCodeSetup-{}.exe", "linux": "code_{}.deb", "macos": ""}}, "stripVersion": True, "exeName": "cursor"}
10
+ # config_dict: InstallerData = {"appName": "Cursor", "repoURL": "CMD", "doc": "Cursor"}
11
11
 
12
12
 
13
13
  def install_linux(version: Optional[str] = None):
@@ -75,19 +75,17 @@ def install_windows(version: Optional[str] = None):
75
75
  # Run the installer silently
76
76
  try:
77
77
  print("Running Cursor installer...")
78
- subprocess.run([str(cursor_installer), "/SILENT"], capture_output=True, text=True, check=True)
78
+ subprocess.run([str(cursor_installer), "/SILENT"], text=True, check=True)
79
79
  print("Cursor installer completed successfully.")
80
80
  except subprocess.CalledProcessError as e:
81
81
  print(f"Installer failed with exit code {e.returncode}")
82
- print(f"Error output: {e.stderr}")
83
82
  # Try alternative silent install flags
84
83
  try:
85
84
  print("Trying alternative silent install...")
86
- subprocess.run([str(cursor_installer), "/S"], capture_output=True, text=True, check=True)
85
+ subprocess.run([str(cursor_installer), "/S"], text=True, check=True)
87
86
  print("Cursor installer completed successfully with /S flag.")
88
87
  except subprocess.CalledProcessError as e2:
89
88
  print(f"Alternative installer also failed with exit code {e2.returncode}")
90
- print(f"Error output: {e2.stderr}")
91
89
  # If silent install fails, run normally and let user handle it
92
90
  print("Running installer in normal mode (user interaction required)...")
93
91
  subprocess.run([str(cursor_installer)])
@@ -102,8 +100,9 @@ def install_windows(version: Optional[str] = None):
102
100
  print("Cursor installation completed. Check your Start Menu or Desktop for Cursor.")
103
101
 
104
102
 
105
- def main(version: Optional[str] = None):
103
+ def main(installer_data: InstallerData, version: Optional[str] = None):
106
104
  """Main installation function that handles both Linux and Windows."""
105
+ _ = installer_data
107
106
  system = platform.system()
108
107
 
109
108
  if system == "Linux":
@@ -115,4 +114,5 @@ def main(version: Optional[str] = None):
115
114
 
116
115
 
117
116
  if __name__ == "__main__":
118
- main()
117
+ pass
118
+ # main()
@@ -0,0 +1,30 @@
1
+
2
+
3
+
4
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
5
+ from typing import Optional
6
+
7
+ installer_data: InstallerData = {
8
+ "appName": "libduckdb.so",
9
+ "repoURL": "https://github.com/duckdb/duckdb",
10
+ "doc": "🗃️ An in-process SQL OLAP database management system",
11
+ "fileNamePattern": {
12
+ "amd64": {
13
+ "linux": "libduckdb-linux-amd64.zip",
14
+ "macos": None,
15
+ "windows": None
16
+ },
17
+ "arm64": {
18
+ "linux": "libduckdb-linux-arm64.zip",
19
+ "macos": None,
20
+ "windows": None
21
+ }
22
+ }
23
+ }
24
+
25
+
26
+ def main(installer_data: InstallerData, version: Optional[str]) -> None:
27
+ _ = version
28
+ from machineconfig.utils.installer_utils.installer_runner import Installer
29
+ installer = Installer(installer_data)
30
+ installer.install(version=None)
@@ -0,0 +1,117 @@
1
+ """A text expander is a program that detects when you type a specific keyword and replaces it with something else
2
+
3
+ https://github.com/espanso/espanso
4
+ """
5
+
6
+ from typing import Optional
7
+ import subprocess
8
+ from rich import box
9
+ from rich.console import Console
10
+ from rich.panel import Panel
11
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
12
+
13
+ # config_dict: InstallerData = {
14
+ # "appName": "espanso",
15
+ # "repoURL": "CMD",
16
+ # "doc": "A text expander.",
17
+ # }
18
+
19
+ def main(installer_data: InstallerData, version: Optional[str]) -> None:
20
+ console = Console()
21
+ _ = installer_data
22
+ console.print(
23
+ Panel.fit(
24
+ "\n".join(
25
+ [
26
+ f"🔄 Version: {'latest' if version is None else version}",
27
+ "🔗 Source: https://github.com/espanso/espanso",
28
+ ]
29
+ ),
30
+ title="⚡ Espanso Installer",
31
+ border_style="yellow",
32
+ box=box.ROUNDED,
33
+ )
34
+ )
35
+
36
+ _ = version
37
+ import platform
38
+
39
+ installer_data["repoURL"] = "https://github.com/espanso/espanso"
40
+ if platform.system() == "Windows":
41
+ console.print("🪟 Installing Espanso on Windows...", style="bold")
42
+ elif platform.system() in ["Linux", "Darwin"]:
43
+ if platform.system() == "Linux":
44
+ import os
45
+
46
+ env = os.environ["XDG_SESSION_TYPE"]
47
+ if env == "wayland":
48
+ console.print(
49
+ Panel.fit(
50
+ "\n".join(["Wayland detected", "📦 Using Wayland-specific package"]),
51
+ title="🖥️ Display Server",
52
+ border_style="cyan",
53
+ box=box.ROUNDED,
54
+ )
55
+ )
56
+ installer_data["fileNamePattern"]["amd64"]["linux"] = "espanso-debian-wayland-amd64.deb"
57
+ else:
58
+ console.print(
59
+ Panel.fit(
60
+ "\n".join(["X11 detected", "📦 Using X11-specific package"]),
61
+ title="🖥️ Display Server",
62
+ border_style="cyan",
63
+ box=box.ROUNDED,
64
+ )
65
+ )
66
+ installer_data["fileNamePattern"]["amd64"]["linux"] = "espanso-debian-x11-amd64.deb"
67
+ else: # Darwin/macOS
68
+ console.print("🍎 Installing Espanso on macOS...", style="bold")
69
+ installer_data["fileNamePattern"]["amd64"]["macos"] = "Espanso.dmg"
70
+ else:
71
+ error_msg = f"Unsupported platform: {platform.system()}"
72
+ console.print(
73
+ Panel.fit(
74
+ "\n".join([error_msg]),
75
+ title="❌ Error",
76
+ subtitle="⚠️ Unsupported platform",
77
+ border_style="red",
78
+ box=box.ROUNDED,
79
+ )
80
+ )
81
+ raise NotImplementedError(error_msg)
82
+
83
+ console.print("🚀 Installing Espanso using installer...", style="bold yellow")
84
+ from machineconfig.utils.installer_utils.installer_class import Installer
85
+
86
+ installer = Installer(installer_data)
87
+ installer.install(version=None)
88
+
89
+ config = """
90
+ espanso service register
91
+ espanso start
92
+ espanso install actually-all-emojis
93
+ """
94
+
95
+ console.print(
96
+ Panel.fit(
97
+ "\n".join(
98
+ [
99
+ "📋 Post-installation steps:",
100
+ "1️⃣ Register Espanso as a service",
101
+ "2️⃣ Start the Espanso service",
102
+ "3️⃣ Install the emoji package",
103
+ ]
104
+ ),
105
+ title="✅ Espanso Installation Completed",
106
+ border_style="green",
107
+ box=box.ROUNDED,
108
+ )
109
+ )
110
+
111
+ console.print("🔄 EXECUTING | Running Espanso configuration...", style="bold yellow")
112
+ try:
113
+ subprocess.run(config, shell=True, text=True, check=True)
114
+ console.print("✅ Espanso configuration completed successfully", style="bold green")
115
+ except subprocess.CalledProcessError as e:
116
+ console.print(f"❌ Configuration failed with exit code {e.returncode}", style="bold red")
117
+ raise
@@ -0,0 +1,68 @@
1
+ """natural language to API
2
+ https://github.com/ShishirPatil/gorilla
3
+ """
4
+
5
+ import subprocess
6
+ from rich import box
7
+ from rich.console import Console
8
+ from rich.panel import Panel
9
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
10
+
11
+ # config_dict: InstallerData = {
12
+ # "appName": "Gorilla",
13
+ # "repoURL": "https://github.com/ShishirPatil/gorilla",
14
+ # "doc": "natural language to API",
15
+ # }
16
+
17
+ ve_name = "goex"
18
+
19
+
20
+ def main(installer_data: InstallerData) -> None:
21
+ console = Console()
22
+ _ = installer_data
23
+ console.print(
24
+ Panel.fit(
25
+ "\n".join(
26
+ [
27
+ "Natural language to API converter",
28
+ "🌐 Source: https://github.com/ShishirPatil/gorilla",
29
+ f"📦 Virtual Environment: {ve_name}",
30
+ ]
31
+ ),
32
+ title="🦍 Gorilla Installer",
33
+ border_style="blue",
34
+ box=box.ROUNDED,
35
+ )
36
+ )
37
+
38
+ console.print("🔄 Preparing installation script...", style="bold")
39
+ install_script = """
40
+ cd ~/code/foreign
41
+ git clone https://github.com/ShishirPatil/gorilla --depth 1
42
+ cd gorilla/goex
43
+ uv sync
44
+ """
45
+
46
+ console.print(
47
+ Panel.fit(
48
+ "\n".join(
49
+ [
50
+ f"1️⃣ Create Python 3.13 virtual environment: {ve_name}",
51
+ "2️⃣ Clone Gorilla repository to ~/code/foreign",
52
+ "3️⃣ Install Gorilla in development mode",
53
+ ]
54
+ ),
55
+ title="📋 Installation Steps",
56
+ subtitle="✅ Installation script prepared successfully!",
57
+ border_style="magenta",
58
+ box=box.ROUNDED,
59
+ )
60
+ )
61
+
62
+ console.print("🔄 EXECUTING | Running Gorilla installation...", style="bold yellow")
63
+ try:
64
+ subprocess.run(install_script, shell=True, text=True, check=True)
65
+ console.print("✅ Gorilla installation completed successfully", style="bold green")
66
+ except subprocess.CalledProcessError as e:
67
+ console.print(f"❌ Installation failed with exit code {e.returncode}", style="bold red")
68
+ raise
@@ -0,0 +1,89 @@
1
+ """lvim"""
2
+
3
+ from rich import box
4
+ from rich.console import Console
5
+ from rich.panel import Panel
6
+ import subprocess
7
+ import platform
8
+ from typing import Optional
9
+ from machineconfig.utils.schemas.installer.installer_types import InstallerData
10
+
11
+
12
+ # as per https://www.lunarvim.org/docs/installation
13
+
14
+
15
+ def main(installer_data: InstallerData, version: Optional[str]) -> None:
16
+ console = Console()
17
+ _ = installer_data
18
+ console.print(
19
+ Panel.fit(
20
+ "\n".join(
21
+ [
22
+ f"🔄 Version: {'latest' if version is None else version}",
23
+ "📚 Branch: release-1.4/neovim-0.9",
24
+ ]
25
+ ),
26
+ title="🌙 LunarVim Installer",
27
+ border_style="purple",
28
+ box=box.ROUNDED,
29
+ )
30
+ )
31
+
32
+ _ = version
33
+ if platform.system() == "Windows":
34
+ console.print("🪟 Installing LunarVim on Windows...", style="bold")
35
+ program = """
36
+
37
+ pwsh -c "`$LV_BRANCH='release-1.4/neovim-0.9'; iwr https://raw.githubusercontent.com/LunarVim/LunarVim/release-1.4/neovim-0.9/utils/installer/install.ps1 -UseBasicParsing | iex"
38
+
39
+ """
40
+ elif platform.system() in ["Linux", "Darwin"]:
41
+ system_name = "Linux" if platform.system() == "Linux" else "macOS"
42
+ console.print(f"🐧 Installing LunarVim on {system_name}...", style="bold")
43
+ program = """
44
+
45
+ LV_BRANCH='release-1.4/neovim-0.9' bash <(curl -s https://raw.githubusercontent.com/LunarVim/LunarVim/release-1.4/neovim-0.9/utils/installer/install.sh)
46
+
47
+ """
48
+ else:
49
+ error_msg = f"Unsupported platform: {platform.system()}"
50
+ console.print(
51
+ Panel.fit(
52
+ "\n".join([error_msg]),
53
+ title="❌ Error",
54
+ subtitle="⚠️ Unsupported platform",
55
+ border_style="red",
56
+ box=box.ROUNDED,
57
+ )
58
+ )
59
+ raise NotImplementedError(error_msg)
60
+
61
+ console.print(
62
+ Panel.fit(
63
+ "\n".join(
64
+ [
65
+ "📝 IDE-like experience for Neovim",
66
+ "🔌 Built-in plugin management",
67
+ "🛠️ LSP configuration out of the box",
68
+ "🔍 Powerful fuzzy finding",
69
+ "⚙️ Simple and unified configuration",
70
+ "⚠️ Installer will prompt for user input during installation.",
71
+ ]
72
+ ),
73
+ title="ℹ️ LunarVim Features",
74
+ border_style="magenta",
75
+ box=box.ROUNDED,
76
+ )
77
+ )
78
+
79
+ console.print("🔄 EXECUTING | Running LunarVim installation...", style="bold yellow")
80
+ try:
81
+ subprocess.run(program, shell=True, check=True)
82
+ console.print("✅ LunarVim installation completed successfully", style="bold green")
83
+ except subprocess.CalledProcessError as e:
84
+ console.print(f"❌ Installation failed with exit code {e.returncode}", style="bold red")
85
+ raise
86
+
87
+
88
+ if __name__ == "__main__":
89
+ pass