machineconfig 3.99__py3-none-any.whl → 7.66__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 (418) 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 +2 -16
  32. machineconfig/jobs/installer/custom/boxes.py +61 -0
  33. machineconfig/jobs/installer/custom/gh.py +69 -53
  34. machineconfig/jobs/installer/custom/hx.py +77 -20
  35. machineconfig/jobs/installer/custom_dev/alacritty.py +45 -30
  36. machineconfig/jobs/installer/custom_dev/brave.py +43 -35
  37. machineconfig/jobs/installer/custom_dev/bypass_paywall.py +31 -20
  38. machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
  39. machineconfig/jobs/installer/custom_dev/code.py +33 -21
  40. machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
  41. machineconfig/jobs/installer/custom_dev/espanso.py +64 -41
  42. machineconfig/jobs/installer/custom_dev/goes.py +41 -36
  43. machineconfig/jobs/installer/custom_dev/lvim.py +49 -33
  44. machineconfig/jobs/installer/custom_dev/nerdfont.py +71 -47
  45. machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +32 -26
  46. machineconfig/jobs/installer/custom_dev/redis.py +51 -33
  47. machineconfig/jobs/installer/custom_dev/sysabc.py +119 -0
  48. machineconfig/jobs/installer/custom_dev/wezterm.py +55 -39
  49. machineconfig/jobs/installer/custom_dev/winget.py +1 -0
  50. machineconfig/jobs/installer/installer_data.json +3406 -0
  51. machineconfig/jobs/installer/linux_scripts/brave.sh +4 -14
  52. machineconfig/jobs/installer/linux_scripts/{warp-cli.sh → cloudflare_warp_cli.sh} +5 -17
  53. machineconfig/jobs/installer/linux_scripts/docker.sh +5 -17
  54. machineconfig/jobs/installer/linux_scripts/docker_start.sh +6 -14
  55. machineconfig/jobs/installer/linux_scripts/edge.sh +3 -11
  56. machineconfig/jobs/{linux/msc → installer/linux_scripts}/lid.sh +2 -8
  57. machineconfig/jobs/installer/linux_scripts/nerdfont.sh +5 -17
  58. machineconfig/jobs/{linux/msc → installer/linux_scripts}/network.sh +2 -8
  59. machineconfig/jobs/installer/linux_scripts/ngrok.sh +6 -0
  60. machineconfig/jobs/installer/linux_scripts/q.sh +9 -0
  61. machineconfig/jobs/installer/linux_scripts/redis.sh +6 -17
  62. machineconfig/jobs/installer/linux_scripts/vscode.sh +5 -17
  63. machineconfig/jobs/installer/linux_scripts/wezterm.sh +4 -12
  64. machineconfig/jobs/installer/package_groups.py +255 -0
  65. machineconfig/logger.py +0 -1
  66. machineconfig/profile/backup.toml +49 -0
  67. machineconfig/profile/bash_shell_profiles.md +11 -0
  68. machineconfig/profile/create_helper.py +74 -0
  69. machineconfig/profile/create_links.py +288 -0
  70. machineconfig/profile/create_links_export.py +100 -0
  71. machineconfig/profile/create_shell_profile.py +136 -0
  72. machineconfig/profile/mapper.toml +258 -0
  73. machineconfig/scripts/Restore-ThunderbirdProfile.ps1 +92 -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/initai.py +3 -28
  83. machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +17 -18
  84. machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +17 -18
  85. machineconfig/scripts/python/ai/solutions/_shared.py +9 -1
  86. machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +1 -1
  87. machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
  88. machineconfig/scripts/python/ai/solutions/generic.py +27 -4
  89. machineconfig/scripts/python/ai/vscode_tasks.py +37 -0
  90. machineconfig/scripts/python/cloud.py +29 -0
  91. machineconfig/scripts/python/croshell.py +117 -181
  92. machineconfig/scripts/python/define.py +31 -0
  93. machineconfig/scripts/python/devops.py +44 -124
  94. machineconfig/scripts/python/devops_navigator.py +10 -0
  95. machineconfig/scripts/python/env_manager/__init__.py +1 -0
  96. machineconfig/scripts/python/env_manager/path_manager_backend.py +47 -0
  97. machineconfig/scripts/python/env_manager/path_manager_tui.py +228 -0
  98. machineconfig/scripts/python/explore.py +49 -0
  99. machineconfig/scripts/python/fire_jobs.py +106 -244
  100. machineconfig/scripts/python/ftpx.py +125 -68
  101. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
  102. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +37 -0
  103. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
  104. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +42 -0
  105. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
  106. machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +110 -0
  107. machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +34 -0
  108. machineconfig/scripts/python/helpers_agents/fire_agents_load_balancer.py +22 -0
  109. machineconfig/scripts/python/helpers_agents/templates/prompt.txt +6 -0
  110. machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
  111. machineconfig/scripts/python/helpers_agents/templates/template.sh +24 -0
  112. machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +30 -23
  113. machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +11 -19
  114. machineconfig/scripts/python/{cloud_sync.py → helpers_cloud/cloud_sync.py} +12 -18
  115. machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +3 -3
  116. machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
  117. machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +17 -7
  118. machineconfig/scripts/python/helpers_devops/cli_config.py +95 -0
  119. machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +89 -0
  120. machineconfig/scripts/python/helpers_devops/cli_data.py +25 -0
  121. machineconfig/scripts/python/helpers_devops/cli_nw.py +134 -0
  122. machineconfig/scripts/python/helpers_devops/cli_repos.py +182 -0
  123. machineconfig/scripts/python/helpers_devops/cli_self.py +134 -0
  124. machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
  125. machineconfig/scripts/python/helpers_devops/cli_share_server.py +141 -0
  126. machineconfig/scripts/python/helpers_devops/cli_terminal.py +156 -0
  127. machineconfig/scripts/python/helpers_devops/cli_utils.py +96 -0
  128. machineconfig/scripts/python/{devops_backup_retrieve.py → helpers_devops/devops_backup_retrieve.py} +7 -10
  129. machineconfig/scripts/python/helpers_devops/devops_status.py +511 -0
  130. machineconfig/scripts/python/helpers_devops/devops_update_repos.py +269 -0
  131. machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +81 -0
  132. machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +3 -0
  133. machineconfig/scripts/python/{choose_wezterm_theme.py → helpers_devops/themes/choose_wezterm_theme.py} +2 -2
  134. machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
  135. machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +57 -87
  136. machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +145 -0
  137. machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +110 -0
  138. machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
  139. machineconfig/scripts/python/helpers_msearch/__init__.py +5 -0
  140. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfag +1 -1
  141. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +1 -1
  142. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfrga +1 -1
  143. machineconfig/scripts/python/helpers_navigator/__init__.py +20 -0
  144. machineconfig/scripts/python/helpers_navigator/command_builder.py +111 -0
  145. machineconfig/scripts/python/helpers_navigator/command_detail.py +44 -0
  146. machineconfig/scripts/python/helpers_navigator/command_tree.py +588 -0
  147. machineconfig/scripts/python/helpers_navigator/data_models.py +28 -0
  148. machineconfig/scripts/python/helpers_navigator/main_app.py +272 -0
  149. machineconfig/scripts/python/helpers_navigator/search_bar.py +15 -0
  150. machineconfig/scripts/python/helpers_repos/action.py +209 -0
  151. machineconfig/scripts/python/helpers_repos/action_helper.py +150 -0
  152. machineconfig/scripts/python/{repos_helper_clone.py → helpers_repos/clone.py} +6 -7
  153. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
  154. machineconfig/scripts/python/helpers_repos/count_lines.py +348 -0
  155. machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +17 -0
  156. machineconfig/scripts/python/helpers_repos/entrypoint.py +77 -0
  157. machineconfig/scripts/python/helpers_repos/grource.py +340 -0
  158. machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +7 -4
  159. machineconfig/scripts/python/helpers_repos/sync.py +66 -0
  160. machineconfig/scripts/python/{repos_helper_update.py → helpers_repos/update.py} +3 -3
  161. machineconfig/scripts/python/helpers_sessions/__init__.py +0 -0
  162. machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +58 -0
  163. machineconfig/scripts/python/helpers_utils/download.py +152 -0
  164. machineconfig/scripts/python/helpers_utils/path.py +108 -0
  165. machineconfig/scripts/python/interactive.py +79 -160
  166. machineconfig/scripts/python/machineconfig.py +63 -0
  167. machineconfig/scripts/python/msearch.py +21 -0
  168. machineconfig/scripts/python/nw/__init__.py +0 -0
  169. machineconfig/scripts/python/{devops_add_identity.py → nw/devops_add_identity.py} +1 -3
  170. machineconfig/scripts/python/{devops_add_ssh_key.py → nw/devops_add_ssh_key.py} +74 -44
  171. machineconfig/scripts/{linux → python/nw}/mount_nfs +1 -1
  172. machineconfig/scripts/python/{mount_nfs.py → nw/mount_nfs.py} +19 -16
  173. machineconfig/scripts/{linux → python/nw}/mount_nw_drive +1 -2
  174. machineconfig/scripts/python/{mount_ssh.py → nw/mount_ssh.py} +7 -8
  175. machineconfig/scripts/python/{onetimeshare.py → nw/onetimeshare.py} +0 -1
  176. machineconfig/scripts/python/nw/ssh_debug_linux.py +391 -0
  177. machineconfig/scripts/python/nw/ssh_debug_windows.py +338 -0
  178. machineconfig/scripts/python/{wifi_conn.py → nw/wifi_conn.py} +1 -53
  179. machineconfig/scripts/python/{wsl_windows_transfer.py → nw/wsl_windows_transfer.py} +6 -5
  180. machineconfig/scripts/python/sessions.py +167 -0
  181. machineconfig/scripts/python/terminal.py +127 -0
  182. machineconfig/scripts/python/utils.py +66 -0
  183. machineconfig/scripts/windows/{mount_nfs.ps1 → mounts/mount_nfs.ps1} +1 -3
  184. machineconfig/scripts/windows/{mount_ssh.ps1 → mounts/mount_ssh.ps1} +1 -1
  185. machineconfig/scripts/windows/{share_smb.ps1 → mounts/share_smb.ps1} +0 -6
  186. machineconfig/scripts/windows/wrap_mcfg.ps1 +60 -0
  187. machineconfig/settings/broot/br.sh +0 -4
  188. machineconfig/settings/broot/conf.toml +1 -1
  189. machineconfig/settings/helix/config.toml +16 -0
  190. machineconfig/settings/helix/languages.toml +13 -4
  191. machineconfig/settings/helix/yazi-picker.sh +12 -0
  192. machineconfig/settings/lf/linux/exe/lfcd.sh +1 -0
  193. machineconfig/settings/lf/linux/exe/previewer.sh +9 -3
  194. machineconfig/settings/lf/linux/lfrc +10 -12
  195. machineconfig/settings/lf/windows/fzf_edit.ps1 +2 -2
  196. machineconfig/settings/lf/windows/lfrc +18 -38
  197. machineconfig/settings/lf/windows/mkfile.ps1 +1 -1
  198. machineconfig/settings/linters/.ruff.toml +1 -1
  199. machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -6
  200. machineconfig/settings/marimo/marimo.toml +80 -0
  201. machineconfig/settings/marimo/snippets/globalize.py +34 -0
  202. machineconfig/settings/pistol/pistol.conf +1 -1
  203. machineconfig/settings/shells/bash/init.sh +55 -31
  204. machineconfig/settings/shells/nushell/config.nu +1 -34
  205. machineconfig/settings/shells/nushell/init.nu +127 -0
  206. machineconfig/settings/shells/pwsh/init.ps1 +60 -43
  207. machineconfig/settings/shells/starship/starship.toml +16 -0
  208. machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
  209. machineconfig/settings/shells/wt/settings.json +32 -17
  210. machineconfig/settings/shells/zsh/init.sh +89 -0
  211. machineconfig/settings/svim/linux/init.toml +0 -4
  212. machineconfig/settings/svim/windows/init.toml +0 -3
  213. machineconfig/settings/yazi/init.lua +57 -0
  214. machineconfig/settings/yazi/keymap_linux.toml +79 -0
  215. machineconfig/settings/yazi/keymap_windows.toml +78 -0
  216. machineconfig/settings/yazi/shell/yazi_cd.ps1 +33 -0
  217. machineconfig/settings/yazi/shell/yazi_cd.sh +8 -0
  218. machineconfig/settings/yazi/yazi.toml +13 -0
  219. machineconfig/setup_linux/__init__.py +10 -0
  220. machineconfig/setup_linux/apps_desktop.sh +89 -0
  221. machineconfig/setup_linux/apps_gui.sh +64 -0
  222. machineconfig/setup_linux/{nix → others}/cli_installation.sh +9 -29
  223. machineconfig/setup_linux/ssh/openssh_all.sh +25 -0
  224. machineconfig/setup_linux/ssh/openssh_wsl.sh +38 -0
  225. machineconfig/setup_linux/uv.sh +15 -0
  226. machineconfig/setup_linux/web_shortcuts/interactive.sh +26 -6
  227. machineconfig/setup_mac/__init__.py +16 -0
  228. machineconfig/setup_mac/apps_gui.sh +248 -0
  229. machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
  230. machineconfig/setup_mac/uv.sh +36 -0
  231. machineconfig/setup_windows/__init__.py +8 -0
  232. machineconfig/setup_windows/others/power_options.ps1 +7 -0
  233. machineconfig/setup_windows/ssh/add-sshkey.ps1 +29 -0
  234. machineconfig/setup_windows/ssh/add_identity.ps1 +11 -0
  235. machineconfig/setup_windows/ssh/openssh-server.ps1 +37 -0
  236. machineconfig/setup_windows/uv.ps1 +10 -0
  237. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +27 -9
  238. machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +16 -0
  239. machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +37 -23
  240. machineconfig/utils/accessories.py +7 -5
  241. machineconfig/utils/cloud/onedrive/README.md +139 -0
  242. machineconfig/utils/code.py +140 -93
  243. machineconfig/utils/files/art/fat_croco.txt +10 -0
  244. machineconfig/utils/files/art/halfwit_croco.txt +9 -0
  245. machineconfig/utils/files/art/happy_croco.txt +22 -0
  246. machineconfig/utils/files/art/water_croco.txt +11 -0
  247. machineconfig/utils/files/ascii_art.py +118 -0
  248. machineconfig/utils/files/dbms.py +257 -0
  249. machineconfig/utils/files/headers.py +68 -0
  250. machineconfig/utils/files/ouch/__init__.py +0 -0
  251. machineconfig/utils/files/ouch/decompress.py +45 -0
  252. machineconfig/utils/files/read.py +95 -0
  253. machineconfig/utils/installer_utils/github_release_bulk.py +2 -12
  254. machineconfig/utils/installer_utils/installer_class.py +68 -126
  255. machineconfig/utils/installer_utils/installer_cli.py +181 -0
  256. machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +38 -85
  257. machineconfig/utils/{installer.py → installer_utils/installer_runner.py} +69 -69
  258. machineconfig/utils/io.py +77 -23
  259. machineconfig/utils/links.py +309 -100
  260. machineconfig/utils/meta.py +255 -0
  261. machineconfig/utils/notifications.py +1 -1
  262. machineconfig/utils/options.py +10 -25
  263. machineconfig/utils/path_extended.py +94 -104
  264. machineconfig/utils/path_helper.py +75 -22
  265. machineconfig/utils/procs.py +50 -74
  266. machineconfig/utils/scheduler.py +94 -97
  267. machineconfig/utils/scheduling.py +0 -3
  268. machineconfig/utils/schemas/fire_agents/fire_agents_input.py +5 -17
  269. machineconfig/utils/schemas/installer/installer_types.py +0 -1
  270. machineconfig/utils/schemas/layouts/layout_types.py +2 -1
  271. machineconfig/utils/source_of_truth.py +3 -6
  272. machineconfig/utils/ssh.py +742 -254
  273. machineconfig/utils/ssh_utils/utils.py +0 -0
  274. machineconfig/utils/terminal.py +3 -140
  275. machineconfig/utils/tst.py +20 -0
  276. machineconfig/utils/upgrade_packages.py +109 -28
  277. machineconfig/utils/ve.py +13 -5
  278. machineconfig-7.66.dist-info/METADATA +124 -0
  279. machineconfig-7.66.dist-info/RECORD +451 -0
  280. machineconfig-7.66.dist-info/entry_points.txt +15 -0
  281. machineconfig/cluster/templates/utils.py +0 -51
  282. machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -49
  283. machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -85
  284. machineconfig/jobs/installer/packages_custom_dev.json +0 -226
  285. machineconfig/jobs/installer/packages_custom_essential.json +0 -39
  286. machineconfig/jobs/installer/packages_github_dev.json +0 -1110
  287. machineconfig/jobs/installer/packages_github_essential.json +0 -804
  288. machineconfig/jobs/linux/msc/cli_agents.sh +0 -37
  289. machineconfig/jobs/python/create_bootable_media.py +0 -16
  290. machineconfig/jobs/python/python_cargo_build_share.py +0 -59
  291. machineconfig/jobs/python/python_ve_symlink.py +0 -29
  292. machineconfig/jobs/python/tasks.py +0 -3
  293. machineconfig/jobs/python/vscode/api.py +0 -49
  294. machineconfig/jobs/python/vscode/sync_code.py +0 -58
  295. machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -14
  296. machineconfig/jobs/windows/start_terminal.ps1 +0 -6
  297. machineconfig/jobs/windows/startup_file.cmd +0 -2
  298. machineconfig/profile/create.py +0 -170
  299. machineconfig/profile/shell.py +0 -176
  300. machineconfig/scripts/cloud/init.sh +0 -119
  301. machineconfig/scripts/linux/choose_wezterm_theme +0 -3
  302. machineconfig/scripts/linux/cloud_copy +0 -2
  303. machineconfig/scripts/linux/cloud_mount +0 -2
  304. machineconfig/scripts/linux/cloud_repo_sync +0 -2
  305. machineconfig/scripts/linux/cloud_sync +0 -2
  306. machineconfig/scripts/linux/croshell +0 -3
  307. machineconfig/scripts/linux/devops +0 -2
  308. machineconfig/scripts/linux/fire +0 -2
  309. machineconfig/scripts/linux/fire_agents +0 -2
  310. machineconfig/scripts/linux/ftpx +0 -2
  311. machineconfig/scripts/linux/fzf2g +0 -21
  312. machineconfig/scripts/linux/fzffg +0 -25
  313. machineconfig/scripts/linux/gh_models +0 -2
  314. machineconfig/scripts/linux/initai +0 -2
  315. machineconfig/scripts/linux/kill_process +0 -2
  316. machineconfig/scripts/linux/programs +0 -21
  317. machineconfig/scripts/linux/repos +0 -2
  318. machineconfig/scripts/linux/scheduler +0 -2
  319. machineconfig/scripts/linux/share_smb +0 -1
  320. machineconfig/scripts/linux/start_slidev +0 -2
  321. machineconfig/scripts/linux/start_terminals +0 -3
  322. machineconfig/scripts/linux/warp-cli.sh +0 -122
  323. machineconfig/scripts/linux/wifi_conn +0 -2
  324. machineconfig/scripts/linux/z_ls +0 -104
  325. machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
  326. machineconfig/scripts/python/cloud_repo_sync.py +0 -186
  327. machineconfig/scripts/python/devops_devapps_install.py +0 -159
  328. machineconfig/scripts/python/devops_update_repos.py +0 -180
  329. machineconfig/scripts/python/dotfile.py +0 -52
  330. machineconfig/scripts/python/fire_agents.py +0 -175
  331. machineconfig/scripts/python/fire_agents_help_launch.py +0 -143
  332. machineconfig/scripts/python/fire_agents_load_balancer.py +0 -50
  333. machineconfig/scripts/python/fire_jobs_args_helper.py +0 -75
  334. machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -74
  335. machineconfig/scripts/python/get_zellij_cmd.py +0 -15
  336. machineconfig/scripts/python/gh_models.py +0 -104
  337. machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -114
  338. machineconfig/scripts/python/repos.py +0 -80
  339. machineconfig/scripts/python/repos_helper_action.py +0 -335
  340. machineconfig/scripts/python/share_terminal.py +0 -104
  341. machineconfig/scripts/python/snapshot.py +0 -25
  342. machineconfig/scripts/python/start_terminals.py +0 -121
  343. machineconfig/scripts/python/t4.py +0 -17
  344. machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -1
  345. machineconfig/scripts/windows/cloud_copy.ps1 +0 -1
  346. machineconfig/scripts/windows/cloud_mount.ps1 +0 -1
  347. machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -1
  348. machineconfig/scripts/windows/cloud_sync.ps1 +0 -1
  349. machineconfig/scripts/windows/croshell.ps1 +0 -1
  350. machineconfig/scripts/windows/devops.ps1 +0 -1
  351. machineconfig/scripts/windows/dotfile.ps1 +0 -1
  352. machineconfig/scripts/windows/fire.ps1 +0 -1
  353. machineconfig/scripts/windows/ftpx.ps1 +0 -1
  354. machineconfig/scripts/windows/gpt.ps1 +0 -1
  355. machineconfig/scripts/windows/grep.ps1 +0 -2
  356. machineconfig/scripts/windows/initai.ps1 +0 -1
  357. machineconfig/scripts/windows/kill_process.ps1 +0 -1
  358. machineconfig/scripts/windows/nano.ps1 +0 -3
  359. machineconfig/scripts/windows/pomodoro.ps1 +0 -1
  360. machineconfig/scripts/windows/reload_path.ps1 +0 -3
  361. machineconfig/scripts/windows/repos.ps1 +0 -1
  362. machineconfig/scripts/windows/scheduler.ps1 +0 -1
  363. machineconfig/scripts/windows/snapshot.ps1 +0 -1
  364. machineconfig/scripts/windows/start_slidev.ps1 +0 -1
  365. machineconfig/scripts/windows/start_terminals.ps1 +0 -1
  366. machineconfig/scripts/windows/wifi_conn.ps1 +0 -2
  367. machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -46
  368. machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -76
  369. machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
  370. machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
  371. machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -93
  372. machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -11
  373. machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -52
  374. machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -18
  375. machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -36
  376. machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -16
  377. machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -11
  378. machineconfig/utils/ai/generate_file_checklist.py +0 -68
  379. machineconfig-3.99.dist-info/METADATA +0 -167
  380. machineconfig-3.99.dist-info/RECORD +0 -409
  381. machineconfig-3.99.dist-info/entry_points.txt +0 -18
  382. machineconfig/cluster/{templates → remote}/run_cloud.py +0 -0
  383. machineconfig/cluster/{templates → remote}/run_cluster.py +0 -0
  384. machineconfig/cluster/{templates → remote}/run_remote.py +0 -0
  385. machineconfig/scripts/linux/{share_nfs → other/share_nfs} +0 -0
  386. machineconfig/scripts/linux/{start_docker → other/start_docker} +0 -0
  387. machineconfig/scripts/linux/{switch_ip → other/switch_ip} +0 -0
  388. machineconfig/{jobs/python → scripts/python/helpers_agents}/__init__.py +0 -0
  389. machineconfig/scripts/python/{helpers → helpers_agents/agentic_frameworks}/__init__.py +0 -0
  390. machineconfig/scripts/python/{fire_agents_help_search.py → helpers_agents/fire_agents_help_search.py} +0 -0
  391. machineconfig/{jobs/windows/msc/cli_agents.bat → scripts/python/helpers_cloud/__init__.py} +0 -0
  392. machineconfig/scripts/python/{helpers → helpers_cloud}/cloud_helpers.py +1 -1
  393. /machineconfig/scripts/python/{helpers → helpers_cloud}/helpers5.py +0 -0
  394. /machineconfig/{jobs/windows/msc/cli_agents.ps1 → scripts/python/helpers_croshell/__init__.py} +0 -0
  395. /machineconfig/scripts/python/{pomodoro.py → helpers_croshell/pomodoro.py} +0 -0
  396. /machineconfig/scripts/python/{scheduler.py → helpers_croshell/scheduler.py} +0 -0
  397. /machineconfig/scripts/python/{viewer.py → helpers_croshell/viewer.py} +0 -0
  398. /machineconfig/scripts/python/{viewer_template.py → helpers_croshell/viewer_template.py} +0 -0
  399. /machineconfig/scripts/python/{fire_jobs_streamlit_helper.py → helpers_devops/__init__.py} +0 -0
  400. /machineconfig/scripts/{windows/share_nfs.ps1 → python/helpers_devops/themes/__init__.py} +0 -0
  401. /machineconfig/{settings/yazi/keymap.toml → scripts/python/helpers_devops/themes/choose_starship_theme.ps1} +0 -0
  402. /machineconfig/scripts/python/{cloud_manager.py → helpers_fire_command/cloud_manager.py} +0 -0
  403. /machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/skrg +0 -0
  404. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfb.ps1 +0 -0
  405. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfg.ps1 +0 -0
  406. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfrga.bat +0 -0
  407. /machineconfig/scripts/{linux → python/nw}/mount_drive +0 -0
  408. /machineconfig/scripts/python/{mount_nw_drive.py → nw/mount_nw_drive.py} +0 -0
  409. /machineconfig/scripts/{linux → python/nw}/mount_smb +0 -0
  410. /machineconfig/scripts/windows/{mount_nw.ps1 → mounts/mount_nw.ps1} +0 -0
  411. /machineconfig/scripts/windows/{mount_smb.ps1 → mounts/mount_smb.ps1} +0 -0
  412. /machineconfig/scripts/windows/{share_cloud.cmd → mounts/share_cloud.cmd} +0 -0
  413. /machineconfig/scripts/windows/{unlock_bitlocker.ps1 → mounts/unlock_bitlocker.ps1} +0 -0
  414. /machineconfig/setup_linux/{web_shortcuts → others}/android.sh +0 -0
  415. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_add_key.ps1 +0 -0
  416. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_copy-ssh-id.ps1 +0 -0
  417. {machineconfig-3.99.dist-info → machineconfig-7.66.dist-info}/WHEEL +0 -0
  418. {machineconfig-3.99.dist-info → machineconfig-7.66.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,8 @@
1
1
  #!/bin/bash
2
- #=======================================================================
3
2
  # 📦 NIX CLI TOOLS INSTALLATION SCRIPT
4
- #=======================================================================
5
3
  # This script installs various command-line utilities using the Nix package manager
6
4
 
7
- echo """#=======================================================================
8
- 🔄 SYSTEM UTILITIES | Installing system management tools
9
- #=======================================================================
5
+ echo """🔄 SYSTEM UTILITIES | Installing system management tools
10
6
  """
11
7
 
12
8
  # System upgrade tool
@@ -21,9 +17,7 @@ nix-env -iA nixpkgs.procs || true
21
17
  echo "📥 Installing watchexec - executes commands when files change..."
22
18
  nix-env -iA nixpkgs.watchexec || true
23
19
 
24
- echo """#=======================================================================
25
- 📂 FILE MANAGEMENT | Installing file browsers and utilities
26
- #=======================================================================
20
+ echo """📂 FILE MANAGEMENT | Installing file browsers and utilities
27
21
  """
28
22
 
29
23
  # Terminal file managers
@@ -56,9 +50,7 @@ nix-env -iA nixpkgs.diskonaut || true
56
50
  echo "📥 Installing kondo - cleanup tool for dev projects..."
57
51
  nix-env -iA nixpkgs.kondo || true
58
52
 
59
- echo """#=======================================================================
60
- 🖼️ VISUAL TOOLS | Installing terminal visualization tools
61
- #=======================================================================
53
+ echo """🖼️ VISUAL TOOLS | Installing terminal visualization tools
62
54
  """
63
55
 
64
56
  # Terminal visualization
@@ -71,9 +63,7 @@ nix-env -iA nixpkgs.bottom || true
71
63
  echo "📥 Installing delta - syntax-highlighting pager for git..."
72
64
  nix-env -iA nixpkgs.delta || true
73
65
 
74
- echo """#=======================================================================
75
- 🔧 DEVELOPMENT TOOLS | Installing programming utilities
76
- #=======================================================================
66
+ echo """🔧 DEVELOPMENT TOOLS | Installing programming utilities
77
67
  """
78
68
 
79
69
  # Code editors
@@ -95,9 +85,7 @@ nix-env -iA nixpkgs.tokei || true
95
85
  echo "📥 Installing gitui - terminal UI for git..."
96
86
  nix-env -iA nixpkgs.gitui || true
97
87
 
98
- echo """#=======================================================================
99
- 🔎 SEARCH TOOLS | Installing fuzzy finders and search utilities
100
- #=======================================================================
88
+ echo """🔎 SEARCH TOOLS | Installing fuzzy finders and search utilities
101
89
  """
102
90
 
103
91
  # Search history
@@ -108,9 +96,7 @@ nix-env -iA nixpkgs.mcfly || true
108
96
  echo "📥 Installing skim - fuzzy finder in Rust..."
109
97
  nix-env -iA nixpkgs.skim || true
110
98
 
111
- echo """#=======================================================================
112
- 🌐 NETWORK & CLOUD TOOLS | Installing file transfer and cloud utilities
113
- #=======================================================================
99
+ echo """🌐 NETWORK & CLOUD TOOLS | Installing file transfer and cloud utilities
114
100
  """
115
101
 
116
102
  # File transfer
@@ -121,18 +107,14 @@ nix-env -iA nixpkgs.termscp || true
121
107
  echo "📥 Installing rclone - rsync for cloud storage..."
122
108
  nix-env -iA nixpkgs.rclone || true
123
109
 
124
- echo """#=======================================================================
125
- 🛡️ SECURITY TOOLS | Installing password management utilities
126
- #=======================================================================
110
+ echo """🛡️ SECURITY TOOLS | Installing password management utilities
127
111
  """
128
112
 
129
113
  # Password management
130
114
  echo "📥 Installing gopass - team password manager with git..."
131
115
  nix-env -iA nixpkgs.gopass || true
132
116
 
133
- echo """#=======================================================================
134
- 📚 DOCUMENTATION | Installing help and reference tools
135
- #=======================================================================
117
+ echo """📚 DOCUMENTATION | Installing help and reference tools
136
118
  """
137
119
 
138
120
  # Command reference
@@ -143,9 +125,7 @@ nix-env -iA nixpkgs.tldr || true
143
125
  echo "📥 Installing nushell - modern shell alternative..."
144
126
  nix-env -iA nixpkgs.nushell || true
145
127
 
146
- echo """#=======================================================================
147
- ✅ INSTALLATION COMPLETE | All Nix CLI tools have been installed
148
- #=======================================================================
128
+ echo """✅ INSTALLATION COMPLETE | All Nix CLI tools have been installed
149
129
  """
150
130
 
151
131
  # Commented out tools
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/bash
2
+ # 🔐 OpenSSH Server Setup and Configuration
3
+
4
+ # Common pitfalls:
5
+ # 🚫 Wrong line endings (LF/CRLF) in config files
6
+ # 🌐 Network port conflicts (try 2222 -> 2223) between WSL and Windows
7
+
8
+ # 📁 Setup SSH directory and permissions
9
+ mkdir -p ~/.ssh
10
+ echo $pubkey_string >> ~/.ssh/authorized_keys
11
+ sudo chmod 600 ~/.ssh/*
12
+ sudo chmod 700 ~/.ssh
13
+ echo "✅ FINISHED modifying .ssh folder attributes."
14
+
15
+ # 🔄 Clean install OpenSSH server
16
+ sudo nala install openssh-server -y || true # try to install first
17
+ sudo nala purge openssh-server -y
18
+ sudo nala install openssh-server -y
19
+ echo "✅ FINISHED installing openssh-server."
20
+
21
+ # 📝 Additional commands if needed:
22
+ # sudo service ssh status
23
+ # sudo nano /etc/ssh/sshd_config
24
+ # sudo service ssh restart
25
+ # For tunnels see: https://www.youtube.com/watch?v=Wp7boqm3Xts
@@ -0,0 +1,38 @@
1
+ #!/usr/bin/bash
2
+ # 🐧 WSL2 SSH Configuration for LAN Access 🌐
3
+ # Purpose: Enable SSH access to WSL2 from LAN (requires wsl_server.ps1 in Windows)
4
+ # Common pitfall: sshd fails after config changes due to wrong line endings/permissions
5
+
6
+ # 🔍 Check if running in WSL
7
+ if [[ $(uname -a) == *"icrosoft"* ]]; then
8
+ echo "✅ Running inside WSL"
9
+ else
10
+ echo "❌ Not running inside WSL, no need for this script"
11
+ exit 0
12
+ fi
13
+
14
+ # 🔢 Set SSH port
15
+ if [ -z "$port" ]; then
16
+ port=2222
17
+ echo "📝 Port variable not defined, setting it to $port"
18
+ fi
19
+
20
+ # 🛠️ Configure SSH
21
+ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
22
+ sudo sed -i 's/#Port 22/Port '$port'/g' /etc/ssh/sshd_config
23
+ sudo sed -i 's/#ListenAddress 0.0.0.0/ListenAddress 0.0.0.0/g' /etc/ssh/sshd_config
24
+ sudo sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
25
+ sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
26
+
27
+ # 🔑 Generate host keys and restart service
28
+ sudo service ssh start
29
+ sudo ssh-keygen -A
30
+ sudo service ssh --full-restart
31
+ sudo service ssh status
32
+
33
+ echo "✨ FINISHED configuring SSH in WSL2."
34
+
35
+ # 📚 References:
36
+ # Service startup: https://superuser.com/questions/1701853/how-to-enable-a-service-to-start-with-wsl2
37
+ # WSL config: https://learn.microsoft.com/en-us/windows/wsl/networking#accessing-a-wsl-2-distribution-from-your-local-area-network-lan
38
+
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/bash
2
+
3
+ if [ ! -f "$HOME/.local/bin/uv" ]; then
4
+ echo """📦 uv binary not found
5
+ ⏳ Installing uv package manager..."""
6
+ curl -LsSf https://astral.sh/uv/install.sh | sh
7
+ else
8
+ echo """🔄 Updating uv package manager..."""
9
+ $HOME/.local/bin/uv self update
10
+ fi
11
+ if ! command -v uv &> /dev/null; then
12
+ echo """🔍 uv command not found in PATH ➕ Adding uv to system PATH..."""
13
+ export PATH="$HOME/.local/bin:$PATH"
14
+ fi
15
+ $HOME/.local/bin/uv python install 3.14
@@ -1,9 +1,29 @@
1
1
  #!/bin/bash
2
+ . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
3
+ . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/wrap_mcfg")
2
4
 
3
- echo """
4
- =======================================================================
5
- 📦 MACHINE CONFIGURATION | Interactive Installation Script. Installing uv then getting started.
6
- ======================================================================="""
5
+ alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" devops'
6
+ alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" cloud'
7
+ alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" agents'
8
+ alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" sessions'
9
+ alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" ftpx'
10
+ alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" fire'
11
+ alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" croshell'
12
+ alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" utils'
13
+ alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" terminal'
14
+ alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.66" msearch'
7
15
 
8
- curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/ve.sh | bash
9
- $HOME/.local/bin/uv run --python 3.13 --with machineconfig devops ia
16
+ alias d='wrap_in_shell_script devops'
17
+ alias c='wrap_in_shell_script cloud'
18
+ alias a='wrap_in_shell_script agents'
19
+ alias ss='wrap_in_shell_script sessions'
20
+ alias fx='wrap_in_shell_script ftpx'
21
+ alias f='wrap_in_shell_script fire'
22
+ alias rr='wrap_in_shell_script croshell'
23
+ alias u='wrap_in_shell_script utils'
24
+ alias t='wrap_in_shell_script terminal'
25
+ alias ms='wrap_in_shell_script msearch'
26
+
27
+ echo "mcfg command aliases are now defined in this shell session."
28
+
29
+ devops self interactive
@@ -0,0 +1,16 @@
1
+ """Mac setup module for machineconfig.
2
+
3
+ This module provides setup script locations and configurations for macOS systems.
4
+ It mirrors the layout used by the Linux setup module and exposes Path objects
5
+ pointing at common scripts (so other code can import these paths).
6
+ """
7
+
8
+ from pathlib import Path
9
+
10
+
11
+ # Optional helper scripts (may or may not exist)
12
+ UV = Path(__file__).parent.joinpath("uv.sh")
13
+ # Path to macOS SSH helper
14
+ SSH_SETUP = Path(__file__).parent.joinpath("ssh/openssh_setup.sh")
15
+
16
+ __all__ = ["UV", "SSH_SETUP"]
@@ -0,0 +1,248 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # macOS GUI Application Installation Script
4
+ # Comprehensive GUI application installation via Homebrew Cask and Mac App Store
5
+ # Supports Intel and Apple Silicon architectures
6
+
7
+ set -e # Exit on any error
8
+
9
+ # Color codes for output
10
+ RED='\033[0;31m'
11
+ GREEN='\033[0;32m'
12
+ YELLOW='\033[1;33m'
13
+ BLUE='\033[0;34m'
14
+ NC='\033[0m' # No Color
15
+
16
+ # Logging functions
17
+ log_info() {
18
+ echo -e "${BLUE}ℹ️ $1${NC}"
19
+ }
20
+
21
+ log_success() {
22
+ echo -e "${GREEN}✅ $1${NC}"
23
+ }
24
+
25
+ log_warning() {
26
+ echo -e "${YELLOW}⚠️ $1${NC}"
27
+ }
28
+
29
+ log_error() {
30
+ echo -e "${RED}❌ $1${NC}"
31
+ }
32
+
33
+ # Architecture detection
34
+ detect_architecture() {
35
+ local arch=$(uname -m)
36
+ if [[ "$arch" == "arm64" ]]; then
37
+ echo "arm64"
38
+ elif [[ "$arch" == "x86_64" ]]; then
39
+ echo "amd64"
40
+ else
41
+ log_warning "Unknown architecture: $arch, defaulting to amd64"
42
+ echo "amd64"
43
+ fi
44
+ }
45
+
46
+ # Check if Homebrew is installed
47
+ check_homebrew() {
48
+ if ! command -v brew &> /dev/null; then
49
+ log_error "Homebrew is not installed. Please run apps.sh first to install Homebrew."
50
+ exit 1
51
+ fi
52
+ log_success "Homebrew found"
53
+ }
54
+
55
+ # Setup Mac App Store CLI
56
+ setup_mas() {
57
+ log_info "Setting up Mac App Store CLI (mas)..."
58
+
59
+ if ! command -v mas &> /dev/null; then
60
+ log_info "Installing mas (Mac App Store CLI)..."
61
+ brew install mas || {
62
+ log_error "Failed to install mas"
63
+ return 1
64
+ }
65
+ else
66
+ log_success "mas already installed"
67
+ fi
68
+
69
+ # Check if user is signed in to Mac App Store
70
+ if ! mas account &> /dev/null; then
71
+ log_warning "Not signed in to Mac App Store. Some applications may not install."
72
+ log_info "Please sign in to the Mac App Store manually to install App Store applications."
73
+ else
74
+ log_success "Signed in to Mac App Store"
75
+ fi
76
+ }
77
+
78
+ # Install a GUI application with error handling
79
+ install_gui_app() {
80
+ local app_name="$1"
81
+ local description="$2"
82
+ local install_cmd="$3"
83
+ local fallback_cmd="$4"
84
+
85
+ log_info "Installing $description..."
86
+
87
+ if eval "$install_cmd"; then
88
+ log_success "$app_name installed successfully"
89
+ return 0
90
+ elif [[ -n "$fallback_cmd" ]]; then
91
+ log_warning "Primary installation failed, trying fallback method..."
92
+ if eval "$fallback_cmd"; then
93
+ log_success "$app_name installed via fallback method"
94
+ return 0
95
+ else
96
+ log_error "Failed to install $app_name via fallback method"
97
+ return 1
98
+ fi
99
+ else
100
+ log_error "Failed to install $app_name"
101
+ return 1
102
+ fi
103
+ }
104
+
105
+ # Install GUI applications from a list
106
+ install_gui_app_list() {
107
+ local group_name="$1"
108
+ shift
109
+ local apps=("$@")
110
+
111
+ log_info "Installing $group_name applications..."
112
+
113
+ local failed_apps=()
114
+ for app_info in "${apps[@]}"; do
115
+ IFS='|' read -r app_name description install_cmd fallback_cmd <<< "$app_info"
116
+ if ! install_gui_app "$app_name" "$description" "$install_cmd" "$fallback_cmd"; then
117
+ failed_apps+=("$app_name")
118
+ fi
119
+ done
120
+
121
+ if [[ ${#failed_apps[@]} -gt 0 ]]; then
122
+ log_warning "$group_name: Failed to install: ${failed_apps[*]}"
123
+ else
124
+ log_success "All $group_name applications installed successfully"
125
+ fi
126
+ }
127
+
128
+ # Main installation function
129
+ main() {
130
+ log_info "Starting macOS GUI application installation..."
131
+ log_info "Detected architecture: $(detect_architecture)"
132
+
133
+ # Check prerequisites
134
+ check_homebrew
135
+ setup_mas
136
+
137
+ # --GROUP:BROWSERS - Web browsers
138
+ local browsers=(
139
+ "brave-browser|Brave Browser - Privacy-focused web browser|brew install --cask brave-browser|"
140
+ "google-chrome|Google Chrome web browser|brew install --cask google-chrome|"
141
+ "firefox|Mozilla Firefox web browser|brew install --cask firefox|"
142
+ "microsoft-edge|Microsoft Edge web browser|brew install --cask microsoft-edge|"
143
+ "safari-technology-preview|Safari Technology Preview|brew install --cask safari-technology-preview|"
144
+ )
145
+
146
+ install_gui_app_list "Browsers" "${browsers[@]}"
147
+
148
+ # --GROUP:CODE_EDITORS - Code editors and IDEs
149
+ local code_editors=(
150
+ "visual-studio-code|Visual Studio Code|brew install --cask visual-studio-code|"
151
+ "cursor|Cursor AI-powered code editor|brew install --cask cursor|"
152
+ "sublime-text|Sublime Text editor|brew install --cask sublime-text|"
153
+ "atom|Atom text editor|brew install --cask atom|"
154
+ "webstorm|JetBrains WebStorm IDE|brew install --cask webstorm|"
155
+ "pycharm|JetBrains PyCharm IDE|brew install --cask pycharm|"
156
+ "intellij-idea|JetBrains IntelliJ IDEA|brew install --cask intellij-idea|"
157
+ "xcode|Xcode development environment|mas install 497799835|brew install --cask xcode"
158
+ )
159
+
160
+ install_gui_app_list "Code Editors & IDEs" "${code_editors[@]}"
161
+
162
+ # --GROUP:PRODUCTIVITY - Productivity and office applications
163
+ local productivity=(
164
+ "obsidian|Obsidian note-taking app|brew install --cask obsidian|"
165
+ "notion|Notion workspace|brew install --cask notion|"
166
+ "bitwarden|Bitwarden password manager|brew install --cask bitwarden|"
167
+ "1password|1Password password manager|brew install --cask 1password|mas install 1333542190"
168
+ "alfred|Alfred productivity app|brew install --cask alfred|"
169
+ "raycast|Raycast launcher and productivity tool|brew install --cask raycast|"
170
+ "rectangle|Rectangle window management|brew install --cask rectangle|"
171
+ "magnet|Magnet window manager|mas install 441258766|brew install --cask magnet"
172
+ "cleanmymac|CleanMyMac X system cleaner|mas install 1339170533|"
173
+ )
174
+
175
+ install_gui_app_list "Productivity" "${productivity[@]}"
176
+
177
+ # --GROUP:MEDIA - Media and entertainment applications
178
+ local media=(
179
+ "vlc|VLC media player|brew install --cask vlc|"
180
+ "obs|OBS Studio for streaming and recording|brew install --cask obs|"
181
+ "handbrake|HandBrake video transcoder|brew install --cask handbrake|"
182
+ "spotify|Spotify music streaming|brew install --cask spotify|mas install 324684580"
183
+ "youtube-music|YouTube Music|brew install --cask youtube-music|"
184
+ "plex|Plex media server|brew install --cask plex|"
185
+ "keka|Keka archive utility|brew install --cask keka|mas install 470158793"
186
+ "the-unarchiver|The Unarchiver|brew install --cask the-unarchiver|mas install 425424353"
187
+ )
188
+
189
+ install_gui_app_list "Media & Entertainment" "${media[@]}"
190
+
191
+ # --GROUP:DEVELOPMENT - Development and system tools
192
+ local development=(
193
+ "docker|Docker Desktop|brew install --cask docker|"
194
+ "postman|Postman API development|brew install --cask postman|"
195
+ "insomnia|Insomnia REST client|brew install --cask insomnia|"
196
+ "github-desktop|GitHub Desktop|brew install --cask github-desktop|"
197
+ "sourcetree|Sourcetree Git client|brew install --cask sourcetree|"
198
+ "iterm2|iTerm2 terminal emulator|brew install --cask iterm2|"
199
+ "warp|Warp modern terminal|brew install --cask warp|"
200
+ "alacritty|Alacritty terminal emulator|brew install --cask alacritty|"
201
+ )
202
+
203
+ install_gui_app_list "Development Tools" "${development[@]}"
204
+
205
+ # --GROUP:DATABASE - Database management tools
206
+ local database=(
207
+ "dbeaver-community|DBeaver database tool|brew install --cask dbeaver-community|"
208
+ "sequel-pro|Sequel Pro MySQL client|brew install --cask sequel-pro|"
209
+ "tableplus|TablePlus database client|brew install --cask tableplus|"
210
+ "redis-insight|RedisInsight Redis GUI|brew install --cask redisinsight|"
211
+ "mongodb-compass|MongoDB Compass|brew install --cask mongodb-compass|"
212
+ )
213
+
214
+ install_gui_app_list "Database Tools" "${database[@]}"
215
+
216
+ # --GROUP:COMMUNICATION - Communication and collaboration
217
+ local communication=(
218
+ "slack|Slack team communication|brew install --cask slack|mas install 803453959"
219
+ "discord|Discord voice and text chat|brew install --cask discord|"
220
+ "zoom|Zoom video conferencing|brew install --cask zoom|"
221
+ "microsoft-teams|Microsoft Teams|brew install --cask microsoft-teams|"
222
+ "whatsapp|WhatsApp Desktop|brew install --cask whatsapp|mas install 1147396723"
223
+ "telegram|Telegram messaging|brew install --cask telegram|mas install 747648890"
224
+ )
225
+
226
+ install_gui_app_list "Communication" "${communication[@]}"
227
+
228
+ # --GROUP:SYSTEM_UTILITIES - System utilities and maintenance
229
+ local system_utilities=(
230
+ "appcleaner|AppCleaner uninstaller|brew install --cask appcleaner|"
231
+ "coconutbattery|CoconutBattery system info|brew install --cask coconutbattery|"
232
+ "disk-utility|Disk Utility (built-in)|echo 'Disk Utility is built into macOS'|"
233
+ "activity-monitor|Activity Monitor (built-in)|echo 'Activity Monitor is built into macOS'|"
234
+ "finder|Finder (built-in)|echo 'Finder is built into macOS'|"
235
+ "homebrew|Homebrew package manager|echo 'Homebrew already installed'|"
236
+ )
237
+
238
+ install_gui_app_list "System Utilities" "${system_utilities[@]}"
239
+
240
+ log_success "macOS GUI application installation completed!"
241
+ log_info "Some applications may require additional setup or signing in to your accounts."
242
+ log_info "Check Applications folder for newly installed apps."
243
+ }
244
+
245
+ # Execute main function if script is run directly
246
+ if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
247
+ main "$@"
248
+ fi
@@ -0,0 +1,114 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # 🔐 OpenSSH Setup for macOS
4
+ # This script sets up SSH configuration and permissions on macOS
5
+
6
+ echo "🔐 Starting OpenSSH setup for macOS..."
7
+
8
+ # ✅ SSH is built-in on macOS (OpenSSH comes pre-installed)
9
+ echo "✅ OpenSSH is pre-installed on macOS"
10
+
11
+ # 📁 Create SSH directory with correct permissions
12
+ echo "📁 Setting up SSH directory..."
13
+ mkdir -p ~/.ssh
14
+ chmod 700 ~/.ssh
15
+ echo "✅ SSH directory created with correct permissions (700)"
16
+
17
+ # 📝 Create authorized_keys file if it doesn't exist
18
+ if [ ! -f ~/.ssh/authorized_keys ]; then
19
+ touch ~/.ssh/authorized_keys
20
+ chmod 600 ~/.ssh/authorized_keys
21
+ echo "✅ Created authorized_keys file"
22
+ else
23
+ echo "✅ authorized_keys file already exists"
24
+ chmod 600 ~/.ssh/authorized_keys
25
+ fi
26
+
27
+ # 🔑 Create SSH keys if they don't exist
28
+ if [ ! -f ~/.ssh/id_rsa ]; then
29
+ echo "🔑 Generating SSH keys (RSA)..."
30
+ ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -N "" -C "$(whoami)@$(hostname)"
31
+ echo "✅ SSH RSA keys generated: ~/.ssh/id_rsa"
32
+ else
33
+ echo "✅ SSH keys already exist"
34
+ fi
35
+
36
+ # 🔐 Create Ed25519 keys (modern alternative)
37
+ if [ ! -f ~/.ssh/id_ed25519 ]; then
38
+ echo "🔑 Generating SSH keys (Ed25519)..."
39
+ ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -N "" -C "$(whoami)@$(hostname)"
40
+ echo "✅ SSH Ed25519 keys generated: ~/.ssh/id_ed25519"
41
+ else
42
+ echo "✅ SSH Ed25519 keys already exist"
43
+ fi
44
+
45
+ # 🔧 Configure SSH config file for convenience
46
+ SSH_CONFIG="$HOME/.ssh/config"
47
+ if [ ! -f "$SSH_CONFIG" ]; then
48
+ echo "📝 Creating SSH config file..."
49
+ cat > "$SSH_CONFIG" << 'EOF'
50
+ # SSH Config File for macOS
51
+ # Add your remote hosts below
52
+
53
+ # Example host configuration:
54
+ # Host myserver
55
+ # HostName example.com
56
+ # User username
57
+ # Port 22
58
+ # IdentityFile ~/.ssh/id_ed25519
59
+ # IdentityFile ~/.ssh/id_rsa
60
+
61
+ # Global settings
62
+ Host *
63
+ AddKeysToAgent yes
64
+ UseKeychain yes
65
+ IdentityFile ~/.ssh/id_ed25519
66
+ IdentityFile ~/.ssh/id_rsa
67
+ ServerAliveInterval 60
68
+ EOF
69
+ chmod 600 "$SSH_CONFIG"
70
+ echo "✅ SSH config file created: $SSH_CONFIG"
71
+ else
72
+ echo "✅ SSH config file already exists"
73
+ fi
74
+
75
+ # 🔒 Ensure correct file permissions
76
+ echo "🔒 Setting correct SSH file permissions..."
77
+ chmod 700 ~/.ssh
78
+ chmod 600 ~/.ssh/authorized_keys 2>/dev/null || true
79
+ chmod 600 ~/.ssh/id_rsa 2>/dev/null || true
80
+ chmod 644 ~/.ssh/id_rsa.pub 2>/dev/null || true
81
+ chmod 600 ~/.ssh/id_ed25519 2>/dev/null || true
82
+ chmod 644 ~/.ssh/id_ed25519.pub 2>/dev/null || true
83
+ chmod 600 ~/.ssh/config 2>/dev/null || true
84
+ echo "✅ SSH file permissions configured correctly"
85
+
86
+ # ℹ️ Display SSH key information
87
+ echo ""
88
+ echo "📋 SSH Setup Summary:"
89
+ echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
90
+ echo "SSH Directory: ~/.ssh"
91
+ echo "SSH Config: ~/.ssh/config"
92
+ echo ""
93
+ echo "Available SSH Keys:"
94
+ if [ -f ~/.ssh/id_rsa.pub ]; then
95
+ echo " • RSA Key: ~/.ssh/id_rsa"
96
+ fi
97
+ if [ -f ~/.ssh/id_ed25519.pub ]; then
98
+ echo " • Ed25519 Key: ~/.ssh/id_ed25519"
99
+ fi
100
+ echo ""
101
+ echo "💡 Next Steps:"
102
+ echo " 1. View your public key:"
103
+ echo " cat ~/.ssh/id_ed25519.pub (or id_rsa.pub)"
104
+ echo " 2. Add it to your GitHub/GitLab/server authorized_keys"
105
+ echo " 3. Test connection:"
106
+ echo " ssh -v your_server"
107
+ echo " 4. Configure hosts in ~/.ssh/config for easy access"
108
+ echo ""
109
+ echo "📚 Learn more about SSH:"
110
+ echo " • man ssh"
111
+ echo " • man ssh-keygen"
112
+ echo " • man ssh_config"
113
+ echo ""
114
+ echo "✅ OpenSSH setup complete!"
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env bash
2
+
3
+ # Install or update uv (universal version manager) on macOS
4
+ # Mirrors Linux uv installer but adapts PATH and locations for mac
5
+
6
+ set -euo pipefail
7
+
8
+ UV_BIN="$HOME/.local/bin/uv"
9
+
10
+ if [ ! -f "$UV_BIN" ]; then
11
+ echo "📦 uv binary not found — installing uv to $HOME/.local/bin..."
12
+ mkdir -p "$HOME/.local/bin"
13
+ curl -LsSf https://astral.sh/uv/install.sh | sh
14
+ echo "✅ uv installed to $UV_BIN"
15
+ else
16
+ echo "🔄 uv binary found — attempting self-update..."
17
+ "$UV_BIN" self update || true
18
+ fi
19
+
20
+ # Ensure local bin is in PATH for this run
21
+ export PATH="$HOME/.local/bin:$PATH"
22
+
23
+ if ! command -v uv &> /dev/null; then
24
+ echo "⚠️ uv not found in PATH even after install; add \"$HOME/.local/bin\" to your shell profile"
25
+ else
26
+ echo "🔧 uv available: $(command -v uv)"
27
+ fi
28
+
29
+ # Example uv usage: ensure Python 3.14 is available (adjust as needed)
30
+ if command -v uv &> /dev/null; then
31
+ echo "📥 Ensuring Python 3.14 via uv (if supported)"
32
+ # uv may manage various runtimes; this is an example command and will be skipped gracefully if unsupported
33
+ uv python install 3.14 || true
34
+ fi
35
+
36
+ echo "✅ uv setup complete"
@@ -0,0 +1,8 @@
1
+
2
+ from pathlib import Path
3
+
4
+ UV = Path(__file__).parent.joinpath("uv.ps1")
5
+ DOCKER = Path(__file__).parent.joinpath("others/docker.ps1")
6
+ OBS = Path(__file__).parent.joinpath("others/obs.ps1")
7
+ POWER_OPTIONS = Path(__file__).parent.joinpath("others/power_options.ps1")
8
+ SSH_SERVER = Path(__file__).parent.joinpath("ssh/openssh_server.ps1")
@@ -0,0 +1,7 @@
1
+
2
+ # power and sleep options.
3
+ Powercfg /Change monitor-timeout-ac 60
4
+ Powercfg /Change monitor-timeout-dc 0
5
+ Powercfg /Change standby-timeout-ac 0
6
+ Powercfg /Change standby-timeout-dc 0
7
+