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
@@ -1,115 +0,0 @@
1
- # """Gooey
2
- # """
3
-
4
- # from argparse import ArgumentParser
5
- # # from gooey import Gooey #, GooeyParser
6
- # # from machineconfig.cluster.distribute import Cluster, WorkloadParams
7
- # from machineconfig.cluster.remote_machine import RemoteMachineConfig
8
- # # from machineconfig.cluster.utils import expensive_function
9
- # from machineconfig.utils.utils import DEFAULTS_PATH
10
- # from machineconfig.utils.utils2 import read_ini
11
- # # from typing import Any, Optional
12
-
13
-
14
- # @Gooey(program_name="Cluster Launcher", program_description='Cofigure remote cluster and launch jobs.') # type: ignore
15
- # def main() -> RemoteMachineConfig:
16
- # # parser = GooeyParser(description='Example of Gooey\'s basic functionality')
17
- # parser = ArgumentParser(description='Cluster Launcher')
18
- # from machineconfig.scripts.python.cloud_mount import get_rclone_config
19
- # cloud_names = get_rclone_config().sections()
20
- # # job_id=, base_dir="",
21
- # parser.add_argument('Description', help='The file you want to process', default="Description of running func on remotes")
22
-
23
- # # # execution behaviour
24
- # # wrap_in_try_except=True
25
- # parser.add_argument('-w', '--wrap_in_try_except', help='Wrap in try except', action='store_true', default=False)
26
- # # pudb=False
27
- # parser.add_argument('-p', '--pudb', help='Use pudb', action='store_true', default=False)
28
- # # pdb=False
29
- # parser.add_argument('-d', '--pdb', help='Use pdb', action='store_true', default=False)
30
- # # interactive=True
31
- # parser.add_argument('-i', '--interactive', help='Interactive', action='store_true', default=False)
32
- # # ipython=True
33
- # parser.add_argument('-y', '--ipython', help='Use ipython', action='store_true', default=False)
34
-
35
- # # # resources
36
- # # lock_resources=True
37
- # parser.add_argument('-l', '--lock_resources', help='Lock resources', action='store_true', default=False)
38
- # # max_simulataneous_jobs=2
39
- # parser.add_argument('-m', '--max_simulataneous_jobs', help='Max simultaneous jobs', type=int, default=2)
40
- # # parallelize=False
41
- # # parser.add_argument('-a', '--parallelize', help='Parallelize', action='store_true', default=False)
42
-
43
- # # # data
44
- # # copy_repo = True
45
- # # parser.add_argument('-c', '--copy_repo', help='Copy repo', action='store_true', default=True)
46
- # # update_repo=False
47
- # parser.add_argument('-u', '--update_repo', help='Update repo', action='store_true', default=False)
48
- # # install_repo=False
49
- # # parser.add_argument('-n', '--install_repo', help='Install repo', action='store_true', default=False)
50
- # # update_essential_repos=True
51
- # parser.add_argument('-e', '--update_essential_repos', help='Update essential repos', action='store_true', default=True)
52
- # # transfer_method="sftp"
53
- # # parser.add_argument('-t', '--transfer_method', help='Transfer method', choices=['sftp', 'cloud'], default='sftp')
54
- # # open_console=True
55
- # # parser.add_argument('-o', '--open_console', help='Open console', action='store_true', default=True)
56
-
57
- # # # remote machine behaviour
58
- # parser.add_argument('cloud_name', help='Cloud Rclone Config Name', default="oduq1", choices=cloud_names)
59
- # parser.add_argument('-v', '--notify_upon_completion', help='Notify upon completion', action='store_true', default=True)
60
-
61
- # try:
62
- # section = read_ini(DEFAULTS_PATH)['general']
63
- # to_email = section['to_email']
64
- # email_config_name = section['email_config_name']
65
- # except (FileNotFoundError, KeyError, IndexError):
66
- # to_email = 'random@email.com'
67
- # email_config_name = 'enaut'
68
-
69
- # parser.add_argument('-z', '--to_email', help='To email', default=to_email)
70
- # parser.add_argument('-f', '--email_config_name', help='Email config name', default=email_config_name)
71
- # parser.add_argument('-k', '--kill_on_completion', help='Kill terminal tab/pane for this job on completion', action='store_true', default=False)
72
- # parser.add_argument('split', help='How many jobs to split into', type=int, default=3)
73
-
74
- # # https://github.com/chriskiehl/GooeyExamples/blob/master/examples/FilterableDropdown.py
75
- # args = parser.parse_args()
76
-
77
- # from machineconfig.cluster.self_ssh import SelfSSH
78
- # config = RemoteMachineConfig(
79
- # # connection
80
- # ssh_obj=SelfSSH(),
81
- # # ssh_params=None,
82
- # description=args.Description,
83
- # # job_id=, base_dir="",
84
- # # data
85
- # copy_repo=False, # args.copy_repo,
86
- # update_repo=args.update_repo,
87
- # install_repo=True, # args.install_repo,
88
- # update_essential_repos=args.update_essential_repos,
89
- # data=[],
90
- # transfer_method="cloud", # "args.transfer_method,
91
- # cloud_name=args.cloud_name,
92
- # # remote machine behaviour
93
- # # open_console=args.open_console,
94
- # notify_upon_completion=args.notify_upon_completion,
95
- # to_email=args.to_email,
96
- # email_config_name=args.email_config_name,
97
- # kill_on_completion=args.kill_on_completion,
98
- # workload_params=None,
99
- # launch_method="cloud_manager",
100
- # # execution behaviour
101
- # ipython=args.ipython,
102
- # interactive=args.interactive,
103
- # pdb=args.pdb,
104
- # pudb=args.pudb,
105
- # wrap_in_try_except=args.wrap_in_try_except,
106
- # # resources
107
- # lock_resources=args.lock_resources,
108
- # max_simulataneous_jobs=args.max_simulataneous_jobs,
109
- # parallelize=False, # args.parallelize,
110
- # )
111
- # return config
112
-
113
-
114
- # if __name__ == '__main__':
115
- # main()
@@ -1,51 +0,0 @@
1
- from typing import Optional
2
- from machineconfig.utils.path_extended import PathExtended, PLike
3
-
4
-
5
- def to_cloud(
6
- localpath: PLike,
7
- cloud: str,
8
- remotepath: Optional[PLike],
9
- zip: bool = False,
10
- encrypt: bool = False,
11
- key: Optional[bytes] = None,
12
- pwd: Optional[str] = None,
13
- rel2home: bool = False,
14
- strict: bool = True,
15
- # obfuscate: bool = False,
16
- share: bool = False,
17
- verbose: bool = True,
18
- os_specific: bool = False,
19
- transfers: int = 10,
20
- root: Optional[str] = "myhome",
21
- ) -> "PathExtended":
22
- to_del = []
23
- localpath = PathExtended(localpath).expanduser().absolute() if not PathExtended(localpath).exists() else PathExtended(localpath)
24
- if zip:
25
- localpath = localpath.zip(inplace=False)
26
- to_del.append(localpath)
27
- if encrypt:
28
- localpath = localpath.encrypt(key=key, pwd=pwd, inplace=False)
29
- to_del.append(localpath)
30
- if remotepath is None:
31
- rp = localpath.get_remote_path(root=root, os_specific=os_specific, rel2home=rel2home, strict=strict) # if rel2home else (P(root) / localpath if root is not None else localpath)
32
- else:
33
- rp = PathExtended(remotepath)
34
-
35
- from rclone_python import rclone
36
-
37
- rclone.copy(localpath.as_posix(), f"{cloud}:{rp.as_posix()}", show_progress=True)
38
-
39
- if share:
40
- if verbose:
41
- print("🔗 SHARING FILE")
42
- tmp = rclone.link(f"{cloud}:{rp.as_posix()}")
43
- return PathExtended(tmp)
44
- return localpath
45
-
46
-
47
- if __name__ == "__main__":
48
- from pathlib import Path
49
-
50
- localpath = Path.home().joinpath("Downloads", "exchangeInfo")
51
- to_cloud(localpath, "odp", remotepath=None)
@@ -1,32 +0,0 @@
1
- #!/bin/bash
2
-
3
-
4
- # Terminal-based CLI agents and tools for productivity and coding.
5
- npm install -g @google/gemini-cli
6
- npm install -g @charmland/crush
7
- npm install -g opencode-ai@latest # or curl -fsSL https://opencode.ai/install | bash
8
- uv tool install --force --python python3.12 --with pip aider-chat@latest
9
-
10
-
11
- # cursor-cli
12
- curl https://cursor.com/install -fsS | bash
13
- cd $HOME/Downloads
14
- curl --proto '=https' --tlsv1.2 -sSf "https://desktop-release.q.us-east-1.amazonaws.com/latest/q-x86_64-linux.zip" -o "q.zip"
15
- unzip q.zip
16
- ./q/install.sh # goes to ~/.local/bin.
17
- rm q.zip
18
- rm -rfd q
19
-
20
- # Vscode extensions for AI-assisted coding.
21
- # Github copilot
22
- # Roo
23
- # Cline
24
- # Kilocode
25
- # Continue
26
- # CodeGPT
27
- # qodo (and cli)
28
-
29
- # Editors based on AI
30
- # Kiro
31
- # Cursor
32
-
@@ -1,16 +0,0 @@
1
- # try ventory or netboot.xyz
2
-
3
- # # one can either install rufus: https://rufus.ie/en/
4
- # # however, to create bootable media with multiple OSs to choose from:
5
-
6
- # PathExtended(r'https://github.com/ventoy/Ventoy/archive/refs/tags/v1.0.78.zip').download().unzip().search[0]()
7
- # download_folder = PathExtended.home().joinpath("Downloads/os")
8
- # download_folder.mkdir(parents=True, exist_ok=True)
9
- # PathExtended(r'https://mirrors.layeronline.com/linuxmint/stable/21/linuxmint-21-cinnamon-64bit.iso').download(folder=download_folder)
10
- # download_folder2 = PathExtended.home().joinpath("Downloads/os")
11
- # download_folder2.mkdir(parents=True, exist_ok=True)
12
- # PathExtended(r'https://download.manjaro.org/kde/21.3.7/manjaro-kde-21.3.7-minimal-220816-linux515.iso').download(folder=download_folder2)
13
-
14
-
15
- # if __name__ == '__main__':
16
- # pass
@@ -1,59 +0,0 @@
1
- """
2
- cargo install
3
- """
4
-
5
- # from machineconfig.utils.terminal import Terminal
6
- # from machineconfig.utils.path_reduced import P as PathExtended
7
- # import platform
8
-
9
-
10
- # def build_rust_executable(url: str=r"https://github.com/atanunq/viu"):
11
- # tool_name = url.split('/')[-1]
12
-
13
- # # move command is not required since tool will go to .cargo/bin which is in PATH by default.
14
- # # move_command = f"mv {exe} {tb.get_env().WindowsApps.as_posix()}/" if platform.platform() == "Windows" else f"sudo mv {exe} /usr/local/bin/"
15
- # # {move_command}
16
-
17
- # script = f"""
18
- # cd ~
19
- # git clone --depth 1 {url}
20
- # cd {tool_name}
21
- # cargo install --path .
22
- # """
23
- # print(f"""
24
- # {'=' * 150}
25
- # 🦀 CARGO BUILD | Building Rust project: {tool_name}
26
- # 📦 Source: {url}
27
- # {'=' * 150}
28
- # """)
29
- # if platform.system() == "Windows":
30
- # Terminal(stdout=None).run(f". {PathExtended.tmpfile(suffix='.ps1').write_text(script, encoding="utf-8")}", shell="pwsh").print()
31
- # else:
32
- # Terminal(stdout=None).run(script, shell="pwsh")
33
-
34
- # exe = PathExtended.home().joinpath(f".cargo/bin/{tool_name}" + (".exe" if platform.system() == "Windows" else ""))
35
-
36
- # try:
37
- # PathExtended.home().joinpath(tool_name).delete(sure=True)
38
- # except PermissionError:
39
- # print(f"""
40
- # {'⚠️' * 20}
41
- # ⚠️ WARNING | Permission error when cleaning up
42
- # 📂 Path: {PathExtended.home().joinpath(tool_name)}
43
- # {'⚠️' * 20}
44
- # """)
45
-
46
- # if platform.system() == "Windows":
47
- # exe = exe.move(folder=PathExtended.get_env().WindowsPaths().WindowsApps)
48
- # elif platform.system() in ["Linux", "Darwin"]:
49
- # Terminal().run(f"sudo mv {exe} /usr/local/bin")
50
- # exe = PathExtended(r"/usr/local/bin").joinpath(exe.name)
51
- # else:
52
- # raise NotImplementedError(f"🚫 Platform {platform.system()} not supported.")
53
- # share_link = exe.to_cloud("gdpo", share=True)
54
- # return share_link
55
-
56
-
57
- # after cargo install diskonaut
58
- # then mv ~/.cargo/bin/diskonaut.exe ~/AppData/Local/Microsoft/WindowsApps/
59
- # then bu_gdrive_sx.ps1 .\diskonaut.exe -sRz # zipping is vital to avoid security layers and keep file metadata.
@@ -1,29 +0,0 @@
1
- """Symlinks"""
2
-
3
- from machineconfig.utils.path_extended import PathExtended as PathExtended
4
- # from machineconfig.utils.utils import choose_from_options
5
-
6
-
7
- def main():
8
- print(f"""
9
- {"=" * 150}
10
- 🔗 SYMLINK CREATOR | Create symlinks for virtual environments
11
- {"=" * 150}
12
- """)
13
- target = PathExtended(input("🎯 Symlink to which target? ")).expanduser().absolute()
14
- source = input(f"📍 Symlink from which source? [default to: CWD/{target.name}] ") or PathExtended.cwd().joinpath(target.name)
15
- if isinstance(source, str):
16
- source = PathExtended(source).expanduser().absolute()
17
- source.symlink_to(target, overwrite=True)
18
- print(f"""
19
- {"=" * 150}
20
- ✅ SUCCESS | Symlink created successfully
21
- 📍 Source: {source}
22
- 🎯 Target: {target}
23
- {"=" * 150}
24
- """)
25
- print("🔗 Finished creating symlink.")
26
-
27
-
28
- if __name__ == "__main__":
29
- pass
@@ -1,3 +0,0 @@
1
- from machineconfig.scripts.python.devops_backup_retrieve import main_backup_retrieve
2
-
3
- program = main_backup_retrieve(direction="BACKUP", which="all")
@@ -1,48 +0,0 @@
1
- from pathlib import Path
2
- from machineconfig.utils.accessories import randstr
3
-
4
-
5
- def open_file_in_new_instance(file_path: str):
6
- import git
7
-
8
- repo = git.Repo(search_parent_directories=True)
9
- repo_path = repo.working_tree_dir
10
- # Ensure repo_path is not None before passing to Path
11
- repo_name = Path(repo_path if repo_path is not None else ".").name
12
- repo_copy_name = f"{repo_name}_{randstr(5)}"
13
- copy_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", repo_name, repo_copy_name)
14
- copy_path.parent.mkdir(parents=True, exist_ok=True)
15
- code = f"""
16
- ln -s {repo_path} {copy_path}
17
- cd {copy_path}
18
- code --profile bitProfile --new-window {file_path}
19
- """
20
- from rich.console import Console
21
- from rich.syntax import Syntax
22
- from rich.panel import Panel
23
-
24
- console = Console()
25
- console.print(f"\n{'=' * 150}")
26
- console.print(Panel(Syntax(code, lexer="bash"), title="🔍 VS CODE API | Opening file in new instance", subtitle=f"📂 {file_path}"), style="bold blue")
27
- console.print(f"{'=' * 150}\n")
28
-
29
- code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
30
- code_path.parent.mkdir(parents=True, exist_ok=True)
31
- code_path.write_text(code, encoding="utf-8")
32
- code_path.chmod(0o755)
33
- import subprocess
34
-
35
- subprocess.run([str(code_path)], shell=True, check=True)
36
-
37
-
38
- def main():
39
- import argparse
40
-
41
- parser = argparse.ArgumentParser(description="Open file in new vscode instance")
42
- parser.add_argument("file_path", type=str, help="Path to the file to open")
43
- args = parser.parse_args()
44
- open_file_in_new_instance(args.file_path)
45
-
46
-
47
- if __name__ == "__main__":
48
- main()
@@ -1,63 +0,0 @@
1
- """VScode task to set interpreter"""
2
-
3
- # import os
4
- # import json
5
- from pathlib import Path
6
- import argparse
7
- # import platform
8
-
9
-
10
- def select_interpreter(workspace_root: str):
11
- print(f"""
12
- {"=" * 150}
13
- 🔗 VSCODE VE LINKER | Linking virtual environment for VS Code
14
- 📂 Workspace: {workspace_root}
15
- {"=" * 150}
16
- """)
17
-
18
- path = Path(workspace_root).joinpath(".ve_path")
19
-
20
- if not path.exists():
21
- print(f"""
22
- {"⚠️" * 20}
23
- ❌ ERROR | Could not find .ve_path file in workspace
24
- 📂 Expected at: {path}
25
- {"⚠️" * 20}
26
- """)
27
- return
28
-
29
- with open(path, "r", encoding="utf-8") as f:
30
- ve_path = Path(f.read().strip()).expanduser()
31
-
32
- venv_link = Path(workspace_root).joinpath(".venv")
33
-
34
- if venv_link.exists() and not venv_link.is_symlink():
35
- print(f"""
36
- {"⚠️" * 20}
37
- ❌ ERROR | .venv already exists and is not a symlink
38
- 📂 Path: {venv_link}
39
- {"⚠️" * 20}
40
- """)
41
- return
42
-
43
- venv_link.symlink_to(target=ve_path.expanduser().absolute())
44
-
45
- print(f"""
46
- {"=" * 150}
47
- ✅ SUCCESS | Virtual environment linked successfully
48
- 🔗 Link: {venv_link}
49
- 🎯 Target: {ve_path.expanduser().absolute()}
50
- {"=" * 150}
51
- """)
52
-
53
-
54
- def main():
55
- parser = argparse.ArgumentParser(description="Link ve from repo to ve location.")
56
- parser.add_argument("workspace_path", type=str, help="The workspace path")
57
-
58
- args = parser.parse_args()
59
- select_interpreter(args.workspace_path)
60
-
61
-
62
- if __name__ == "__main__":
63
- main()
@@ -1,87 +0,0 @@
1
- """VScode task to set interpreter"""
2
-
3
- # import os
4
- # import json
5
- from pathlib import Path
6
- from machineconfig.utils.io import save_json
7
- from machineconfig.utils.io import read_json
8
- import argparse
9
- import platform
10
-
11
-
12
- def select_interpreter(workspace_root: str):
13
- print(f"""
14
- {"=" * 150}
15
- 🐍 PYTHON INTERPRETER | Setting up VS Code Python interpreter
16
- 📂 Workspace: {workspace_root}
17
- {"=" * 150}
18
- """)
19
-
20
- path = Path(workspace_root).joinpath(".ve_path")
21
- if not path.exists():
22
- print(f"""
23
- {"⚠️" * 20}
24
- ❌ ERROR | Could not find .ve_path file in workspace
25
- 📂 Expected at: {path}
26
- {"⚠️" * 20}
27
- """)
28
- return
29
-
30
- with open(path, "r", encoding="utf-8") as f:
31
- python_path = Path(f.read().strip()).expanduser()
32
-
33
- print(f"📁 Virtual environment path: {python_path}")
34
-
35
- if platform.system() == "Windows":
36
- python_path = python_path.joinpath("Scripts", "python.exe")
37
- elif platform.system() == "Linux":
38
- python_path = python_path.joinpath("bin", "python")
39
- elif platform.system() == "Darwin":
40
- python_path = python_path.joinpath("bin", "python")
41
- else:
42
- error_msg = f"Unsupported platform: {platform.system()}"
43
- print(f"""
44
- {"⚠️" * 20}
45
- ❌ ERROR | {error_msg}
46
- {"⚠️" * 20}
47
- """)
48
- raise NotImplementedError(error_msg)
49
-
50
- print(f"🔍 Python interpreter path: {python_path}")
51
-
52
- # tmp = os.getenv('APPDATA')
53
- # assert tmp is not None
54
- # settings_path = Path(tmp).joinpath('Code', 'User', 'settings.json')
55
- work_space_settings = Path(workspace_root).joinpath(".vscode", "settings.json")
56
- work_space_settings.parent.mkdir(parents=True, exist_ok=True)
57
- if not work_space_settings.exists():
58
- print(f"📄 Creating new settings file: {work_space_settings}")
59
- work_space_settings.parent.mkdir(parents=True, exist_ok=True)
60
- work_space_settings.touch()
61
- work_space_settings.write_text("{}", encoding="utf-8")
62
- else:
63
- print(f"📄 Updating existing settings file: {work_space_settings}")
64
-
65
- settings = read_json(work_space_settings)
66
- settings["python.defaultInterpreterPath"] = str(python_path)
67
- save_json(obj=settings, path=str(work_space_settings), indent=4)
68
-
69
- print(f"""
70
- {"=" * 150}
71
- ✅ SUCCESS | Python interpreter configured successfully
72
- 🐍 Interpreter: {python_path}
73
- 📄 Settings: {work_space_settings}
74
- {"=" * 150}
75
- """)
76
-
77
-
78
- def main():
79
- parser = argparse.ArgumentParser(description="Set Python Interpretor in VSCode settings.")
80
- parser.add_argument("workspace_path", type=str, help="The workspace path")
81
-
82
- args = parser.parse_args()
83
- select_interpreter(args.workspace_path)
84
-
85
-
86
- if __name__ == "__main__":
87
- main()
@@ -1,58 +0,0 @@
1
- from pathlib import Path
2
- from configparser import SectionProxy
3
- from machineconfig.utils.io import read_ini
4
-
5
- config = read_ini(Path.home().joinpath(".ssh", "config"))
6
-
7
-
8
- def sync_remote(machine_name: str):
9
- print(f"""
10
- {"=" * 150}
11
- 🔄 SYNC REMOTE | Initiating remote code synchronization
12
- 🖥️ Target machine: {machine_name}
13
- {"=" * 150}
14
- """)
15
-
16
- # Handle config as a ConfigParser object
17
- machine_config: SectionProxy | None = None
18
- if machine_name in config:
19
- machine_config = config[machine_name]
20
-
21
- if machine_config is None:
22
- error_msg = f"Machine {machine_name} not found in SSH config."
23
- print(f"""
24
- {"⚠️" * 20}
25
- ❌ ERROR | {error_msg}
26
- {"⚠️" * 20}
27
- """)
28
- raise ValueError(error_msg)
29
-
30
- code = f"""
31
- ssh -o "HostName={machine_config["HostName"]}" -o "User={machine_config["User"]}" -o "ProxyCommand=cloudflared access ssh --hostname %h" -o "Port={machine_config["Port"]}" -o "RequestTTY=yes" -o "RemoteCommand=devops --which update; bash" {machine_name}
32
- """
33
- from rich.console import Console
34
- from rich.syntax import Syntax
35
- from rich.panel import Panel
36
-
37
- console = Console()
38
- console.print(f"\n{'=' * 150}")
39
- console.print(Panel(Syntax(code, lexer="bash"), title=f"🔄 SYNC COMMAND | Connecting to {machine_name}", subtitle=f"🌐 Host: {machine_config['HostName']}"), style="bold blue")
40
- console.print(f"{'=' * 150}\n")
41
-
42
- code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
43
- code_path.parent.mkdir(parents=True, exist_ok=True)
44
- code_path.write_text(code, encoding="utf-8")
45
- code_path.chmod(0o755)
46
-
47
- print(f"🚀 Executing sync command for {machine_name}...")
48
-
49
- import subprocess
50
-
51
- subprocess.run([str(code_path)], shell=True, check=True)
52
-
53
- print(f"""
54
- {"=" * 150}
55
- ✅ SUCCESS | Remote sync completed successfully
56
- 🖥️ Machine: {machine_name}
57
- {"=" * 150}
58
- """)
@@ -1,63 +0,0 @@
1
- """ngrok
2
-
3
- flagged as virus by 35% of antivirus engines
4
- """
5
-
6
- import platform
7
- from typing import Optional
8
- from machineconfig.utils.schemas.installer.installer_types import InstallerData
9
-
10
-
11
- config_dict: InstallerData = {
12
- "appName": "ngrok",
13
- "repoURL": "CUSTOM",
14
- "doc": "ngrok secure introspectable tunnels to localhost",
15
- "filenameTemplate": {"amd64": {"windows": "ngrok-stable-windows-amd64.zip", "linux": "ngrok-stable-linux-amd64.zip", "macos": ""}, "arm64": {"windows": "", "linux": "", "macos": ""}},
16
- "stripVersion": False,
17
- "exeName": "ngrok",
18
- }
19
-
20
-
21
- def main(version: Optional[str]):
22
- print(f"""
23
- {"=" * 150}
24
- 🔄 NGROK INSTALLER | Setting up secure tunnels to localhost
25
- 💻 Platform: {platform.system()}
26
- {"=" * 150}
27
- """)
28
-
29
- _ = version
30
- if platform.system() == "Windows":
31
- print("🪟 Installing ngrok using winget on Windows...")
32
- program = "winget install ngrok.ngrok --source winget"
33
- elif platform.system() in ["Linux", "Darwin"]:
34
- print("🐧 Installing ngrok using apt/nala on Linux...")
35
- # as per https://ngrok.com/docs/getting-started/?os=linux
36
- program = """
37
-
38
- curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | \
39
- sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && \
40
- echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | \
41
- sudo tee /etc/apt/sources.list.d/ngrok.list && \
42
- sudo nala update && sudo nala install ngrok
43
- """
44
- else:
45
- error_msg = f"Unsupported platform: {platform.system()}"
46
- print(f"""
47
- {"⚠️" * 20}
48
- ❌ ERROR | {error_msg}
49
- {"⚠️" * 20}
50
- """)
51
- raise NotImplementedError(error_msg)
52
-
53
- print(f"""
54
- {"=" * 150}
55
- ⚠️ SECURITY WARNING | ngrok has been flagged by some antivirus engines
56
- 🛡️ Use at your own risk - flagged by 35% of antivirus engines
57
- {"=" * 150}
58
- """)
59
- return program
60
-
61
-
62
- if __name__ == "__main__":
63
- pass
@@ -1,37 +0,0 @@
1
- from typing import Optional
2
- from machineconfig.utils.schemas.installer.installer_types import InstallerData
3
- import platform
4
-
5
- config_dict: InstallerData = {
6
- "appName": "aider-chat",
7
- "repoURL": "https://github.com/paul-gauthier/aider",
8
- "doc": "Aider Chat",
9
- "filenameTemplate": {"amd64": {"windows": "aider-chat-{}.exe", "linux": "aider-chat-{}.deb", "macos": ""}, "arm64": {"windows": "", "linux": "", "macos": ""}},
10
- "stripVersion": True,
11
- "exeName": "aider-chat",
12
- }
13
-
14
-
15
- def main(version: Optional[str] = None):
16
- print(f"""
17
- {"=" * 150}
18
- 🤖 AIDER INSTALLER | Installing AI code assistant
19
- 💻 Platform: {platform.system()}
20
- 🔄 Version: {"latest" if version is None else version}
21
- {"=" * 150}
22
- """)
23
-
24
- install_script = "uv tool install --force --python python3.12 aider-chat@latest"
25
-
26
- print(f"""
27
- {"=" * 150}
28
- ✅ SUCCESS | Installation command prepared:
29
- 📄 Command: {install_script}
30
- {"=" * 150}
31
- """)
32
-
33
- return install_script
34
-
35
-
36
- if __name__ == "__main__":
37
- pass