machineconfig 5.15__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 (389) 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 +0 -1
  5. machineconfig/cluster/sessions_managers/{utils → helpers}/enhanced_command_runner.py +4 -6
  6. machineconfig/cluster/sessions_managers/utils/load_balancer.py +1 -1
  7. machineconfig/cluster/sessions_managers/utils/maker.py +69 -0
  8. machineconfig/cluster/sessions_managers/wt_local.py +114 -289
  9. machineconfig/cluster/sessions_managers/wt_local_manager.py +50 -193
  10. machineconfig/cluster/sessions_managers/wt_remote.py +51 -43
  11. machineconfig/cluster/sessions_managers/wt_remote_manager.py +49 -197
  12. machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +6 -19
  13. machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +52 -0
  14. machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +50 -0
  15. machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +4 -2
  16. machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +76 -0
  17. machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
  18. machineconfig/cluster/sessions_managers/zellij_local.py +81 -375
  19. machineconfig/cluster/sessions_managers/zellij_local_manager.py +22 -169
  20. machineconfig/cluster/sessions_managers/zellij_remote.py +40 -41
  21. machineconfig/cluster/sessions_managers/zellij_remote_manager.py +13 -10
  22. machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +4 -8
  23. machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +5 -20
  24. machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +3 -9
  25. machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +3 -1
  26. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +298 -0
  27. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +77 -0
  28. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +228 -0
  29. machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +165 -0
  30. machineconfig/jobs/{python → installer}/check_installations.py +2 -3
  31. machineconfig/jobs/installer/custom/boxes.py +61 -0
  32. machineconfig/jobs/installer/custom/hx.py +76 -19
  33. machineconfig/jobs/installer/custom_dev/alacritty.py +4 -4
  34. machineconfig/jobs/installer/custom_dev/brave.py +1 -7
  35. machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
  36. machineconfig/jobs/installer/custom_dev/code.py +4 -1
  37. machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
  38. machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +9 -18
  39. machineconfig/jobs/installer/custom_dev/sysabc.py +119 -0
  40. machineconfig/jobs/installer/custom_dev/wezterm.py +2 -19
  41. machineconfig/jobs/installer/installer_data.json +1101 -115
  42. machineconfig/jobs/installer/linux_scripts/brave.sh +4 -14
  43. machineconfig/jobs/installer/linux_scripts/{warp-cli.sh → cloudflare_warp_cli.sh} +5 -17
  44. machineconfig/jobs/installer/linux_scripts/docker.sh +5 -17
  45. machineconfig/jobs/installer/linux_scripts/docker_start.sh +6 -14
  46. machineconfig/jobs/installer/linux_scripts/edge.sh +3 -11
  47. machineconfig/jobs/{linux/msc → installer/linux_scripts}/lid.sh +2 -8
  48. machineconfig/jobs/installer/linux_scripts/nerdfont.sh +5 -17
  49. machineconfig/jobs/{linux/msc → installer/linux_scripts}/network.sh +2 -8
  50. machineconfig/jobs/installer/linux_scripts/q.sh +1 -0
  51. machineconfig/jobs/installer/linux_scripts/redis.sh +6 -17
  52. machineconfig/jobs/installer/linux_scripts/vscode.sh +5 -17
  53. machineconfig/jobs/installer/linux_scripts/wezterm.sh +4 -12
  54. machineconfig/jobs/installer/package_groups.py +108 -180
  55. machineconfig/logger.py +0 -1
  56. machineconfig/profile/backup.toml +49 -0
  57. machineconfig/profile/bash_shell_profiles.md +11 -0
  58. machineconfig/profile/create_helper.py +74 -0
  59. machineconfig/profile/create_links.py +288 -0
  60. machineconfig/profile/create_links_export.py +100 -0
  61. machineconfig/profile/create_shell_profile.py +136 -0
  62. machineconfig/profile/mapper.toml +258 -0
  63. machineconfig/scripts/Restore-ThunderbirdProfile.ps1 +92 -0
  64. machineconfig/scripts/__init__.py +0 -4
  65. machineconfig/scripts/linux/{share_cloud.sh → other/share_cloud.sh} +14 -25
  66. machineconfig/scripts/linux/wrap_mcfg +47 -0
  67. machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
  68. machineconfig/scripts/python/agents.py +92 -103
  69. machineconfig/scripts/python/ai/command_runner/command_runner.sh +9 -0
  70. machineconfig/scripts/python/ai/command_runner/prompt.txt +9 -0
  71. machineconfig/scripts/python/ai/generate_files.py +307 -42
  72. machineconfig/scripts/python/ai/initai.py +3 -28
  73. machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +17 -18
  74. machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +17 -18
  75. machineconfig/scripts/python/ai/solutions/_shared.py +9 -1
  76. machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +1 -1
  77. machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
  78. machineconfig/scripts/python/ai/solutions/generic.py +27 -4
  79. machineconfig/scripts/python/ai/vscode_tasks.py +37 -0
  80. machineconfig/scripts/python/cloud.py +29 -0
  81. machineconfig/scripts/python/croshell.py +111 -114
  82. machineconfig/scripts/python/define.py +31 -0
  83. machineconfig/scripts/python/devops.py +44 -103
  84. machineconfig/scripts/python/devops_navigator.py +10 -0
  85. machineconfig/scripts/python/env_manager/__init__.py +1 -0
  86. machineconfig/scripts/python/env_manager/path_manager_backend.py +47 -0
  87. machineconfig/scripts/python/env_manager/path_manager_tui.py +228 -0
  88. machineconfig/scripts/python/explore.py +49 -0
  89. machineconfig/scripts/python/fire_jobs.py +115 -152
  90. machineconfig/scripts/python/ftpx.py +29 -24
  91. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
  92. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +37 -0
  93. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
  94. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +42 -0
  95. machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
  96. machineconfig/scripts/python/{fire_agents_help_launch.py → helpers_agents/fire_agents_help_launch.py} +34 -44
  97. machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +34 -0
  98. machineconfig/scripts/python/helpers_agents/templates/prompt.txt +6 -0
  99. machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
  100. machineconfig/scripts/python/helpers_agents/templates/template.sh +24 -0
  101. machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +30 -23
  102. machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +10 -18
  103. machineconfig/scripts/python/{cloud_sync.py → helpers_cloud/cloud_sync.py} +12 -18
  104. machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +1 -1
  105. machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
  106. machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +2 -2
  107. machineconfig/scripts/python/helpers_devops/cli_config.py +95 -0
  108. machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +89 -0
  109. machineconfig/scripts/python/helpers_devops/cli_data.py +25 -0
  110. machineconfig/scripts/python/helpers_devops/cli_nw.py +134 -0
  111. machineconfig/scripts/python/helpers_devops/cli_repos.py +182 -0
  112. machineconfig/scripts/python/helpers_devops/cli_self.py +134 -0
  113. machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
  114. machineconfig/scripts/python/helpers_devops/cli_share_server.py +141 -0
  115. machineconfig/scripts/python/{share_terminal.py → helpers_devops/cli_terminal.py} +35 -23
  116. machineconfig/scripts/python/helpers_devops/cli_utils.py +96 -0
  117. machineconfig/scripts/python/{devops_backup_retrieve.py → helpers_devops/devops_backup_retrieve.py} +7 -10
  118. machineconfig/scripts/python/helpers_devops/devops_status.py +511 -0
  119. machineconfig/scripts/python/{devops_update_repos.py → helpers_devops/devops_update_repos.py} +68 -49
  120. machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +81 -0
  121. machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +3 -0
  122. machineconfig/scripts/python/{choose_wezterm_theme.py → helpers_devops/themes/choose_wezterm_theme.py} +2 -2
  123. machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
  124. machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +56 -20
  125. machineconfig/scripts/python/{fire_jobs_args_helper.py → helpers_fire_command/fire_jobs_args_helper.py} +5 -1
  126. machineconfig/scripts/python/{fire_jobs_route_helper.py → helpers_fire_command/fire_jobs_route_helper.py} +47 -2
  127. machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
  128. machineconfig/scripts/python/helpers_msearch/__init__.py +5 -0
  129. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfag +1 -1
  130. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +1 -1
  131. machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfrga +1 -1
  132. machineconfig/scripts/python/helpers_navigator/__init__.py +20 -0
  133. machineconfig/scripts/python/helpers_navigator/command_builder.py +111 -0
  134. machineconfig/scripts/python/helpers_navigator/command_detail.py +44 -0
  135. machineconfig/scripts/python/helpers_navigator/command_tree.py +588 -0
  136. machineconfig/scripts/python/helpers_navigator/data_models.py +28 -0
  137. machineconfig/scripts/python/helpers_navigator/main_app.py +272 -0
  138. machineconfig/scripts/python/helpers_navigator/search_bar.py +15 -0
  139. machineconfig/scripts/python/helpers_repos/action.py +209 -0
  140. machineconfig/scripts/python/helpers_repos/action_helper.py +150 -0
  141. machineconfig/scripts/python/{repos_helper_clone.py → helpers_repos/clone.py} +2 -3
  142. machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
  143. machineconfig/scripts/python/{count_lines.py → helpers_repos/count_lines.py} +10 -10
  144. machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +17 -0
  145. machineconfig/scripts/python/{repos_helper.py → helpers_repos/entrypoint.py} +9 -17
  146. machineconfig/scripts/python/helpers_repos/grource.py +340 -0
  147. machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +4 -3
  148. machineconfig/scripts/python/helpers_repos/sync.py +66 -0
  149. machineconfig/scripts/python/{repos_helper_update.py → helpers_repos/update.py} +3 -3
  150. machineconfig/scripts/python/helpers_sessions/__init__.py +0 -0
  151. machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +58 -0
  152. machineconfig/scripts/python/helpers_utils/download.py +152 -0
  153. machineconfig/scripts/python/helpers_utils/path.py +108 -0
  154. machineconfig/scripts/python/interactive.py +64 -84
  155. machineconfig/scripts/python/machineconfig.py +63 -0
  156. machineconfig/scripts/python/msearch.py +21 -0
  157. machineconfig/scripts/python/nw/__init__.py +0 -0
  158. machineconfig/scripts/python/{devops_add_identity.py → nw/devops_add_identity.py} +0 -2
  159. machineconfig/scripts/python/{devops_add_ssh_key.py → nw/devops_add_ssh_key.py} +73 -43
  160. machineconfig/scripts/{linux → python/nw}/mount_nfs +1 -1
  161. machineconfig/scripts/python/{mount_nfs.py → nw/mount_nfs.py} +3 -3
  162. machineconfig/scripts/{linux → python/nw}/mount_nw_drive +1 -2
  163. machineconfig/scripts/python/{mount_ssh.py → nw/mount_ssh.py} +3 -3
  164. machineconfig/scripts/python/{onetimeshare.py → nw/onetimeshare.py} +0 -1
  165. machineconfig/scripts/python/nw/ssh_debug_linux.py +391 -0
  166. machineconfig/scripts/python/nw/ssh_debug_windows.py +338 -0
  167. machineconfig/scripts/python/{wifi_conn.py → nw/wifi_conn.py} +1 -53
  168. machineconfig/scripts/python/{wsl_windows_transfer.py → nw/wsl_windows_transfer.py} +5 -4
  169. machineconfig/scripts/python/sessions.py +64 -44
  170. machineconfig/scripts/python/terminal.py +127 -0
  171. machineconfig/scripts/python/utils.py +66 -0
  172. machineconfig/scripts/windows/{mount_nfs.ps1 → mounts/mount_nfs.ps1} +1 -3
  173. machineconfig/scripts/windows/{mount_ssh.ps1 → mounts/mount_ssh.ps1} +1 -1
  174. machineconfig/scripts/windows/{share_smb.ps1 → mounts/share_smb.ps1} +0 -6
  175. machineconfig/scripts/windows/wrap_mcfg.ps1 +60 -0
  176. machineconfig/settings/broot/br.sh +0 -4
  177. machineconfig/settings/broot/conf.toml +1 -1
  178. machineconfig/settings/helix/config.toml +16 -0
  179. machineconfig/settings/helix/languages.toml +13 -4
  180. machineconfig/settings/helix/yazi-picker.sh +12 -0
  181. machineconfig/settings/lf/linux/exe/lfcd.sh +1 -0
  182. machineconfig/settings/lf/linux/exe/previewer.sh +9 -3
  183. machineconfig/settings/lf/linux/lfrc +10 -12
  184. machineconfig/settings/lf/windows/fzf_edit.ps1 +2 -2
  185. machineconfig/settings/lf/windows/lfrc +18 -38
  186. machineconfig/settings/lf/windows/mkfile.ps1 +1 -1
  187. machineconfig/settings/linters/.ruff.toml +1 -1
  188. machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -6
  189. machineconfig/settings/marimo/marimo.toml +80 -0
  190. machineconfig/settings/marimo/snippets/globalize.py +34 -0
  191. machineconfig/settings/pistol/pistol.conf +1 -1
  192. machineconfig/settings/shells/bash/init.sh +55 -31
  193. machineconfig/settings/shells/nushell/config.nu +1 -34
  194. machineconfig/settings/shells/nushell/init.nu +127 -0
  195. machineconfig/settings/shells/pwsh/init.ps1 +60 -43
  196. machineconfig/settings/shells/starship/starship.toml +16 -0
  197. machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
  198. machineconfig/settings/shells/wt/settings.json +32 -17
  199. machineconfig/settings/shells/zsh/init.sh +89 -0
  200. machineconfig/settings/svim/linux/init.toml +0 -4
  201. machineconfig/settings/svim/windows/init.toml +0 -3
  202. machineconfig/settings/yazi/init.lua +57 -0
  203. machineconfig/settings/yazi/keymap_linux.toml +79 -0
  204. machineconfig/settings/yazi/keymap_windows.toml +78 -0
  205. machineconfig/settings/yazi/shell/yazi_cd.ps1 +33 -0
  206. machineconfig/settings/yazi/shell/yazi_cd.sh +8 -0
  207. machineconfig/settings/yazi/yazi.toml +13 -0
  208. machineconfig/setup_linux/__init__.py +10 -0
  209. machineconfig/setup_linux/apps_desktop.sh +89 -0
  210. machineconfig/setup_linux/apps_gui.sh +64 -0
  211. machineconfig/setup_linux/{nix → others}/cli_installation.sh +9 -29
  212. machineconfig/setup_linux/ssh/openssh_all.sh +25 -0
  213. machineconfig/setup_linux/ssh/openssh_wsl.sh +38 -0
  214. machineconfig/setup_linux/uv.sh +15 -0
  215. machineconfig/setup_linux/web_shortcuts/interactive.sh +26 -6
  216. machineconfig/setup_mac/__init__.py +16 -0
  217. machineconfig/setup_mac/apps_gui.sh +248 -0
  218. machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
  219. machineconfig/setup_mac/uv.sh +36 -0
  220. machineconfig/setup_windows/__init__.py +8 -0
  221. machineconfig/setup_windows/others/power_options.ps1 +7 -0
  222. machineconfig/setup_windows/ssh/add-sshkey.ps1 +29 -0
  223. machineconfig/setup_windows/ssh/add_identity.ps1 +11 -0
  224. machineconfig/setup_windows/ssh/openssh-server.ps1 +37 -0
  225. machineconfig/setup_windows/uv.ps1 +10 -0
  226. machineconfig/setup_windows/web_shortcuts/interactive.ps1 +27 -10
  227. machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +16 -0
  228. machineconfig/utils/accessories.py +7 -5
  229. machineconfig/utils/cloud/onedrive/README.md +139 -0
  230. machineconfig/utils/code.py +133 -106
  231. machineconfig/utils/files/art/fat_croco.txt +10 -0
  232. machineconfig/utils/files/art/halfwit_croco.txt +9 -0
  233. machineconfig/utils/files/art/happy_croco.txt +22 -0
  234. machineconfig/utils/files/art/water_croco.txt +11 -0
  235. machineconfig/utils/files/ascii_art.py +1 -1
  236. machineconfig/utils/files/dbms.py +257 -0
  237. machineconfig/utils/files/headers.py +11 -14
  238. machineconfig/utils/files/ouch/__init__.py +0 -0
  239. machineconfig/utils/files/ouch/decompress.py +45 -0
  240. machineconfig/utils/files/read.py +10 -18
  241. machineconfig/utils/installer_utils/installer_class.py +68 -126
  242. machineconfig/utils/installer_utils/{installer.py → installer_cli.py} +109 -117
  243. machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +31 -81
  244. machineconfig/utils/{installer.py → installer_utils/installer_runner.py} +44 -74
  245. machineconfig/utils/io.py +77 -23
  246. machineconfig/utils/links.py +254 -162
  247. machineconfig/utils/meta.py +255 -0
  248. machineconfig/utils/notifications.py +1 -1
  249. machineconfig/utils/options.py +13 -3
  250. machineconfig/utils/path_extended.py +46 -100
  251. machineconfig/utils/path_helper.py +75 -22
  252. machineconfig/utils/procs.py +50 -70
  253. machineconfig/utils/scheduler.py +94 -97
  254. machineconfig/utils/scheduling.py +0 -3
  255. machineconfig/utils/schemas/fire_agents/fire_agents_input.py +1 -1
  256. machineconfig/utils/schemas/layouts/layout_types.py +1 -1
  257. machineconfig/utils/source_of_truth.py +3 -6
  258. machineconfig/utils/ssh.py +742 -264
  259. machineconfig/utils/ssh_utils/utils.py +0 -0
  260. machineconfig/utils/terminal.py +2 -113
  261. machineconfig/utils/tst.py +20 -0
  262. machineconfig/utils/upgrade_packages.py +109 -28
  263. machineconfig/utils/ve.py +11 -4
  264. machineconfig-7.66.dist-info/METADATA +124 -0
  265. machineconfig-7.66.dist-info/RECORD +451 -0
  266. machineconfig-7.66.dist-info/entry_points.txt +15 -0
  267. machineconfig/cluster/sessions_managers/ffile.py +0 -4
  268. machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -49
  269. machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -85
  270. machineconfig/jobs/linux/msc/cli_agents.sh +0 -16
  271. machineconfig/jobs/python/python_ve_symlink.py +0 -37
  272. machineconfig/jobs/python/vscode/api.py +0 -57
  273. machineconfig/jobs/python/vscode/sync_code.py +0 -73
  274. machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -14
  275. machineconfig/jobs/windows/start_terminal.ps1 +0 -6
  276. machineconfig/jobs/windows/startup_file.cmd +0 -2
  277. machineconfig/profile/create.py +0 -303
  278. machineconfig/profile/shell.py +0 -176
  279. machineconfig/scripts/cloud/init.sh +0 -119
  280. machineconfig/scripts/linux/agents +0 -2
  281. machineconfig/scripts/linux/choose_wezterm_theme +0 -3
  282. machineconfig/scripts/linux/cloud_copy +0 -2
  283. machineconfig/scripts/linux/cloud_mount +0 -2
  284. machineconfig/scripts/linux/cloud_repo_sync +0 -2
  285. machineconfig/scripts/linux/cloud_sync +0 -2
  286. machineconfig/scripts/linux/croshell +0 -3
  287. machineconfig/scripts/linux/devops +0 -2
  288. machineconfig/scripts/linux/fire +0 -2
  289. machineconfig/scripts/linux/ftpx +0 -2
  290. machineconfig/scripts/linux/fzf2g +0 -21
  291. machineconfig/scripts/linux/fzffg +0 -25
  292. machineconfig/scripts/linux/gh_models +0 -2
  293. machineconfig/scripts/linux/initai +0 -2
  294. machineconfig/scripts/linux/kill_process +0 -2
  295. machineconfig/scripts/linux/scheduler +0 -2
  296. machineconfig/scripts/linux/sessions +0 -2
  297. machineconfig/scripts/linux/share_smb +0 -1
  298. machineconfig/scripts/linux/start_slidev +0 -2
  299. machineconfig/scripts/linux/start_terminals +0 -3
  300. machineconfig/scripts/linux/warp-cli.sh +0 -122
  301. machineconfig/scripts/linux/wifi_conn +0 -2
  302. machineconfig/scripts/linux/z_ls +0 -104
  303. machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
  304. machineconfig/scripts/python/cloud_repo_sync.py +0 -190
  305. machineconfig/scripts/python/count_lines_frontend.py +0 -16
  306. machineconfig/scripts/python/dotfile.py +0 -78
  307. machineconfig/scripts/python/fire_agents_helper_types.py +0 -12
  308. machineconfig/scripts/python/get_zellij_cmd.py +0 -15
  309. machineconfig/scripts/python/gh_models.py +0 -104
  310. machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -116
  311. machineconfig/scripts/python/repos.py +0 -132
  312. machineconfig/scripts/python/repos_helper_action.py +0 -378
  313. machineconfig/scripts/python/snapshot.py +0 -25
  314. machineconfig/scripts/python/start_terminals.py +0 -121
  315. machineconfig/scripts/python/t4.py +0 -17
  316. machineconfig/scripts/windows/agents.ps1 +0 -1
  317. machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -1
  318. machineconfig/scripts/windows/cloud_copy.ps1 +0 -1
  319. machineconfig/scripts/windows/cloud_mount.ps1 +0 -1
  320. machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -1
  321. machineconfig/scripts/windows/cloud_sync.ps1 +0 -1
  322. machineconfig/scripts/windows/croshell.ps1 +0 -1
  323. machineconfig/scripts/windows/devops.ps1 +0 -1
  324. machineconfig/scripts/windows/dotfile.ps1 +0 -1
  325. machineconfig/scripts/windows/fire.ps1 +0 -1
  326. machineconfig/scripts/windows/ftpx.ps1 +0 -1
  327. machineconfig/scripts/windows/gpt.ps1 +0 -1
  328. machineconfig/scripts/windows/grep.ps1 +0 -2
  329. machineconfig/scripts/windows/initai.ps1 +0 -1
  330. machineconfig/scripts/windows/kill_process.ps1 +0 -1
  331. machineconfig/scripts/windows/nano.ps1 +0 -3
  332. machineconfig/scripts/windows/pomodoro.ps1 +0 -1
  333. machineconfig/scripts/windows/reload_path.ps1 +0 -3
  334. machineconfig/scripts/windows/scheduler.ps1 +0 -1
  335. machineconfig/scripts/windows/sessions.ps1 +0 -1
  336. machineconfig/scripts/windows/snapshot.ps1 +0 -1
  337. machineconfig/scripts/windows/start_slidev.ps1 +0 -1
  338. machineconfig/scripts/windows/start_terminals.ps1 +0 -1
  339. machineconfig/scripts/windows/wifi_conn.ps1 +0 -2
  340. machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -46
  341. machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -76
  342. machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
  343. machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
  344. machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -11
  345. machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -52
  346. machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -18
  347. machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -36
  348. machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -16
  349. machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -11
  350. machineconfig/utils/ai/generate_file_checklist.py +0 -68
  351. machineconfig-5.15.dist-info/METADATA +0 -188
  352. machineconfig-5.15.dist-info/RECORD +0 -415
  353. machineconfig-5.15.dist-info/entry_points.txt +0 -18
  354. machineconfig/cluster/sessions_managers/{utils → helpers}/load_balancer_helper.py +0 -0
  355. machineconfig/scripts/linux/{share_nfs → other/share_nfs} +0 -0
  356. machineconfig/scripts/linux/{start_docker → other/start_docker} +0 -0
  357. machineconfig/scripts/linux/{switch_ip → other/switch_ip} +0 -0
  358. machineconfig/{jobs/python → scripts/python/helpers_agents}/__init__.py +0 -0
  359. machineconfig/scripts/python/{helpers → helpers_agents/agentic_frameworks}/__init__.py +0 -0
  360. machineconfig/scripts/python/{fire_agents_help_search.py → helpers_agents/fire_agents_help_search.py} +0 -0
  361. machineconfig/scripts/python/{fire_agents_load_balancer.py → helpers_agents/fire_agents_load_balancer.py} +0 -0
  362. machineconfig/{jobs/windows/msc/cli_agents.bat → scripts/python/helpers_cloud/__init__.py} +0 -0
  363. machineconfig/scripts/python/{helpers → helpers_cloud}/cloud_helpers.py +1 -1
  364. /machineconfig/scripts/python/{helpers → helpers_cloud}/helpers5.py +0 -0
  365. /machineconfig/{jobs/windows/msc/cli_agents.ps1 → scripts/python/helpers_croshell/__init__.py} +0 -0
  366. /machineconfig/scripts/python/{pomodoro.py → helpers_croshell/pomodoro.py} +0 -0
  367. /machineconfig/scripts/python/{scheduler.py → helpers_croshell/scheduler.py} +0 -0
  368. /machineconfig/scripts/python/{viewer.py → helpers_croshell/viewer.py} +0 -0
  369. /machineconfig/scripts/python/{viewer_template.py → helpers_croshell/viewer_template.py} +0 -0
  370. /machineconfig/scripts/python/{fire_jobs_streamlit_helper.py → helpers_devops/__init__.py} +0 -0
  371. /machineconfig/scripts/{windows/share_nfs.ps1 → python/helpers_devops/themes/__init__.py} +0 -0
  372. /machineconfig/{settings/yazi/keymap.toml → scripts/python/helpers_devops/themes/choose_starship_theme.ps1} +0 -0
  373. /machineconfig/scripts/python/{cloud_manager.py → helpers_fire_command/cloud_manager.py} +0 -0
  374. /machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/skrg +0 -0
  375. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfb.ps1 +0 -0
  376. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfg.ps1 +0 -0
  377. /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfrga.bat +0 -0
  378. /machineconfig/scripts/{linux → python/nw}/mount_drive +0 -0
  379. /machineconfig/scripts/python/{mount_nw_drive.py → nw/mount_nw_drive.py} +0 -0
  380. /machineconfig/scripts/{linux → python/nw}/mount_smb +0 -0
  381. /machineconfig/scripts/windows/{mount_nw.ps1 → mounts/mount_nw.ps1} +0 -0
  382. /machineconfig/scripts/windows/{mount_smb.ps1 → mounts/mount_smb.ps1} +0 -0
  383. /machineconfig/scripts/windows/{share_cloud.cmd → mounts/share_cloud.cmd} +0 -0
  384. /machineconfig/scripts/windows/{unlock_bitlocker.ps1 → mounts/unlock_bitlocker.ps1} +0 -0
  385. /machineconfig/setup_linux/{web_shortcuts → others}/android.sh +0 -0
  386. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_add_key.ps1 +0 -0
  387. /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_copy-ssh-id.ps1 +0 -0
  388. {machineconfig-5.15.dist-info → machineconfig-7.66.dist-info}/WHEEL +0 -0
  389. {machineconfig-5.15.dist-info → machineconfig-7.66.dist-info}/top_level.txt +0 -0
@@ -1,9 +1,16 @@
1
- from typing import Literal, TypeAlias, Union
1
+
2
+ GUI = [
3
+ "brave",
4
+ "code",
5
+ "git",
6
+ "wezterm",
7
+ ]
2
8
 
3
9
  # AI/LLM Tools - AI-powered coding and chat assistants
4
- PACKAGES_AI_TOOLS = [
10
+ AGENTS = [
5
11
  "aider",
6
- "github-copilot-cli",
12
+ "aichat",
13
+ "copilot",
7
14
  "gemini",
8
15
  "crush",
9
16
  "opencode-ai",
@@ -11,18 +18,15 @@ PACKAGES_AI_TOOLS = [
11
18
  "chatgpt",
12
19
  "mods",
13
20
  "q",
21
+ "qwen-code",
14
22
  "cursor-cli",
15
23
  "droid",
24
+ "kilocode",
25
+ "cline",
16
26
  "auggie",
27
+ # "gorilla",
17
28
  ]
18
29
 
19
- # Tunneling/Port Forwarding - Tools for exposing local services
20
- PACKAGES_TUNNELING = [
21
- "ngrok",
22
- "devtunnel",
23
- "cloudflared",
24
- "forward-cli",
25
- ]
26
30
 
27
31
  # Terminal Emulators & Shells - Terminal applications, emulators, and shell environments
28
32
  PACKAGES_TERMINAL_EMULATORS = [
@@ -41,6 +45,8 @@ PACKAGES_BROWSERS = [
41
45
  "bypass-paywalls-chrome",
42
46
  "browsh",
43
47
  "carbonyl",
48
+ "m365",
49
+ "zoomit",
44
50
  ]
45
51
 
46
52
  # Code Editors & IDEs - Code editing tools
@@ -51,34 +57,22 @@ PACKAGES_CODE_EDITORS = [
51
57
  "lvim",
52
58
  ]
53
59
 
54
- # Presentation & Text UI Tools - Markdown viewers, presentations, prompts, and text decoration
55
- PACKAGES_PRESENTATION = [
56
- "patat",
57
- "marp",
58
- "presenterm",
59
- "glow",
60
- "gum",
61
- "boxes",
62
- "hx",
63
- ]
60
+
64
61
 
65
62
  # Database Tools - Database clients and visualizers
66
63
  PACKAGES_DATABASE = [
67
64
  "SqliteBrowser",
65
+ "sqlite3",
66
+ "redis",
67
+ "redis-cli",
68
+ "postgresql-client",
69
+ "duckdb",
68
70
  "DBeaver",
69
71
  "rainfrog",
70
- "duckdb",
71
- ]
72
72
 
73
- # Documentation & Conversion - Document conversion, diagram tools, and fast file operations
74
- PACKAGES_DOC_CONVERSION = [
75
- "mermaid-cli",
76
- "html2markdown",
77
- "pandoc",
78
- "cpz",
79
- "rmz",
80
73
  ]
81
74
 
75
+
82
76
  # Media & Entertainment - Music players and media tools
83
77
  PACKAGES_MEDIA = [
84
78
  "ytui-music",
@@ -90,6 +84,10 @@ PACKAGES_MEDIA = [
90
84
 
91
85
  # File Sharing & Cloud - File sharing, transfer, backup, sync, and QR tools
92
86
  PACKAGES_FILE_SHARING = [
87
+ "ngrok",
88
+ "devtunnel",
89
+ "cloudflared",
90
+ "forward-cli",
93
91
  "ffsend",
94
92
  "portal",
95
93
  "qrcp",
@@ -104,28 +102,25 @@ PACKAGES_FILE_SHARING = [
104
102
  "restic",
105
103
  "syncthing",
106
104
  "cloudreve",
105
+ "ots",
107
106
  ]
108
107
 
109
108
 
110
- # Git & Docker Tools - Version control and container utilities
111
- PACKAGES_GIT_DOCKER_TOOLS = [
112
- "lazygit",
113
- "onefetch",
114
- "gitcs",
115
- "lazydocker",
116
- ]
117
-
118
109
  # Development Tools - Various development utilities
119
110
  PACKAGES_DEV_UTILS = [
120
111
  "devcontainer",
121
112
  "rust-analyzer",
122
113
  "evcxr",
123
114
  "geckodriver",
124
- "hyperfine",
125
115
  ]
126
116
 
127
117
  # Code Analysis, Git & Docs - Code analysis, statistics, documentation, and Git tools
128
118
  PACKAGES_CODE_ANALYSIS = [
119
+ "lazygit",
120
+ "onefetch",
121
+ "gitcs",
122
+ "lazydocker",
123
+ "hyperfine",
129
124
  "kondo",
130
125
  "tokei",
131
126
  "navi",
@@ -133,6 +128,8 @@ PACKAGES_CODE_ANALYSIS = [
133
128
  "gitui",
134
129
  "delta",
135
130
  "gh",
131
+ "watchexec",
132
+ "jq",
136
133
  ]
137
134
 
138
135
  # Productivity & Utilities - Productivity tools, security, remote access, and terminal enhancements
@@ -140,49 +137,38 @@ PACKAGES_PRODUCTIVITY = [
140
137
  "espanso",
141
138
  "bitwarden",
142
139
  "openpomodoro-cli",
143
- "just",
144
140
  "rustdesk",
145
- "ots",
146
- "lolcatjs",
147
- "figlet-cli",
141
+ "mermaid-cli",
142
+ "html2markdown",
143
+ "pandoc",
144
+ "patat",
145
+ "marp",
146
+ "presenterm",
147
+ "glow",
148
+ "gum",
149
+ "hx",
148
150
  ]
149
151
 
150
- # Miscellaneous Tools - Other tools
151
- PACKAGES_MISC_DEV = [
152
- "Gorilla",
153
- "nerdfont",
154
- "Redis",
155
- "winget",
156
- "transmission",
157
- "exa",
158
- "bytehound",
159
- "atuin",
160
- "xcrawl3r",
161
- "obsidian",
162
- "istio",
163
- "cointop",
164
- "nnn",
165
- ]
166
152
 
167
- # Main DEV package list - combines all subgroups
168
- PACKAGES_NAMES_DEV = [
169
- *PACKAGES_AI_TOOLS,
170
- *PACKAGES_TUNNELING,
171
- *PACKAGES_TERMINAL_EMULATORS,
172
- *PACKAGES_BROWSERS,
173
- *PACKAGES_CODE_EDITORS,
174
- *PACKAGES_PRESENTATION,
175
- *PACKAGES_DATABASE,
176
- *PACKAGES_DOC_CONVERSION,
177
- *PACKAGES_MEDIA,
178
- *PACKAGES_FILE_SHARING,
179
- *PACKAGES_GIT_DOCKER_TOOLS,
180
- *PACKAGES_DEV_UTILS,
181
- *PACKAGES_CODE_ANALYSIS,
182
- *PACKAGES_PRODUCTIVITY,
183
- *PACKAGES_MISC_DEV,
153
+ # sudo nala install cowsay -y || true
154
+ # sudo nala install lolcat -y || true
155
+ # sudo nala install boxes -y || true
156
+ # sudo nala install figlet -y || true
157
+ # sudo nala install fortune -y || true
158
+ # sudo nala install toilet -y || true
159
+ TERMINAL_EYE_CANDY = [
160
+ "lolcatjs",
161
+ "figlet-cli",
162
+ "boxes",
163
+ # "transmission",
164
+ # "bytehound",
165
+ # "xcrawl3r",
166
+ # "obsidian",
167
+ # "istio",
168
+ # "cointop",
184
169
  ]
185
170
 
171
+
186
172
  # System & Network Monitoring - System resource monitors, process viewers, network analysis, and system info tools
187
173
  PACKAGES_SYSTEM_MONITORS = [
188
174
  "btop",
@@ -195,33 +181,16 @@ PACKAGES_SYSTEM_MONITORS = [
195
181
  "cpufetch",
196
182
  "fastfetch",
197
183
  "topgrade",
184
+ "speedtest",
198
185
  ]
199
186
 
200
187
 
201
- # File Tools - File browsing, navigation, listing, directory jumping, and disk usage analysis
202
- PACKAGES_FILE_TOOLS = [
203
- "xplr",
204
- "joshuto",
205
- "lf",
206
- "tere",
207
- "yazi",
208
- "lsd",
209
- "zoxide",
210
- "diskonaut",
211
- "dua",
212
- "dust",
213
- ]
214
-
215
- # File Viewers - File preview and viewing tools
216
- PACKAGES_FILE_VIEWERS = [
217
- "pistol",
218
- "bat",
219
- "viu",
220
- ]
221
188
 
222
189
 
223
190
  # Search & Archive Tools - File and content search utilities, archive management
224
- PACKAGES_SEARCH = [
191
+ PACKAGES_FILE = [
192
+ "nerdfont",
193
+ "winget",
225
194
  "fd",
226
195
  "fzf",
227
196
  "broot",
@@ -229,6 +198,23 @@ PACKAGES_SEARCH = [
229
198
  "rga",
230
199
  "ugrep",
231
200
  "ouch",
201
+ "pistol",
202
+ "bat",
203
+ "viu",
204
+ # "xplr",
205
+ # "joshuto",
206
+ # "lf",
207
+ # "nnn",
208
+ "yazi",
209
+ "tere",
210
+ # "exa",
211
+ "lsd",
212
+ "zoxide",
213
+ "diskonaut",
214
+ "dua",
215
+ "dust",
216
+ "cpz",
217
+ "rmz",
232
218
  ]
233
219
 
234
220
  # Terminal & Shell Enhancements - Terminal multiplexers, shell history, and prompts
@@ -236,92 +222,34 @@ PACKAGES_TERMINAL_SHELL = [
236
222
  "zellij",
237
223
  "mprocs",
238
224
  "mcfly",
225
+ "atuin",
239
226
  "starship",
240
- ]
241
-
242
-
243
-
244
- # Cloud & Utilities - Cloud storage, file watching, web terminal, and presentation tools
245
- PACKAGES_CLOUD_UTILS = [
246
- "rclone",
247
- "watchexec",
248
- "m365",
249
- "zoomit",
250
- "speedtest",
251
- ]
252
-
253
- # Web Sharing - Share terminal over web
254
- PACKAGES_WEB_TERMINAL = [
255
227
  "gotty",
256
228
  "ttyd",
257
- ]
258
-
259
-
260
- # Main ESSENTIAL package list - combines all subgroups
261
- PACKAGES_NAMES_ESSENTIAL = [
262
- *PACKAGES_CODE_ANALYSIS,
263
- *PACKAGES_PRESENTATION,
264
- *PACKAGES_FILE_VIEWERS,
265
- *PACKAGES_FILE_TOOLS,
266
- *PACKAGES_SYSTEM_MONITORS,
267
- *PACKAGES_WEB_TERMINAL,
268
- *PACKAGES_TERMINAL_SHELL,
269
- *PACKAGES_SEARCH,
270
- *PACKAGES_AI_TOOLS,
271
- *PACKAGES_CLOUD_UTILS,
272
- ]
273
-
274
- PACKAGE_GROUPS: TypeAlias = Literal[
275
- "ESSENTIAL",
276
- "DEV",
277
- "AI_TOOLS",
278
- "TUNNELING",
279
- "TERMINAL_EMULATORS",
280
- "BROWSERS",
281
- "CODE_EDITORS",
282
- "PRESENTATION",
283
- "DATABASE",
284
- "DOC_CONVERSION",
285
- "MEDIA",
286
- "FILE_SHARING",
287
- "GIT_DOCKER_TOOLS",
288
- "DEV_UTILS",
289
- "CODE_ANALYSIS",
290
- "PRODUCTIVITY",
291
- "MISC_DEV",
292
- "SYSTEM_MONITORS",
293
- "FILE_TOOLS",
294
- "FILE_VIEWERS",
295
- "SEARCH",
296
- "TERMINAL_SHELL",
297
- "CLOUD_UTILS",
298
- "WEB_TERMINAL",
299
- ]
300
- PACKAGE_GROUP2NAMES: dict[PACKAGE_GROUPS, list[str]] = {
301
- "ESSENTIAL": PACKAGES_NAMES_ESSENTIAL,
302
- "DEV": PACKAGES_NAMES_DEV,
303
- "AI_TOOLS": PACKAGES_AI_TOOLS,
304
- "TUNNELING": PACKAGES_TUNNELING,
305
- "TERMINAL_EMULATORS": PACKAGES_TERMINAL_EMULATORS,
306
- "BROWSERS": PACKAGES_BROWSERS,
307
- "CODE_EDITORS": PACKAGES_CODE_EDITORS,
308
- "PRESENTATION": PACKAGES_PRESENTATION,
309
- "DATABASE": PACKAGES_DATABASE,
310
- "DOC_CONVERSION": PACKAGES_DOC_CONVERSION,
311
- "MEDIA": PACKAGES_MEDIA,
312
- "FILE_SHARING": PACKAGES_FILE_SHARING,
313
- "GIT_DOCKER_TOOLS": PACKAGES_GIT_DOCKER_TOOLS,
314
- "DEV_UTILS": PACKAGES_DEV_UTILS,
315
- "CODE_ANALYSIS": PACKAGES_CODE_ANALYSIS,
316
- "PRODUCTIVITY": PACKAGES_PRODUCTIVITY,
317
- "MISC_DEV": PACKAGES_MISC_DEV,
318
- "SYSTEM_MONITORS": PACKAGES_SYSTEM_MONITORS,
319
- "FILE_TOOLS": PACKAGES_FILE_TOOLS,
320
- "FILE_VIEWERS": PACKAGES_FILE_VIEWERS,
321
- "SEARCH": PACKAGES_SEARCH,
322
- "TERMINAL_SHELL": PACKAGES_TERMINAL_SHELL,
323
- "CLOUD_UTILS": PACKAGES_CLOUD_UTILS,
324
- "WEB_TERMINAL": PACKAGES_WEB_TERMINAL,
229
+ "rclone",
230
+ "cb"
231
+ ]
232
+
233
+
234
+
235
+ PACKAGE_GROUP2NAMES: dict[str, list[str]] = {
236
+ "sysabc": ["sysabc"],
237
+ "termabc": [*PACKAGES_CODE_ANALYSIS, *PACKAGES_SYSTEM_MONITORS, *PACKAGES_TERMINAL_SHELL, *PACKAGES_FILE,],
238
+ "gui": GUI,
239
+ "dev": [*PACKAGES_TERMINAL_EMULATORS, *PACKAGES_BROWSERS, *PACKAGES_CODE_EDITORS, *PACKAGES_DATABASE, *PACKAGES_MEDIA, *PACKAGES_FILE_SHARING, *PACKAGES_DEV_UTILS, *PACKAGES_CODE_ANALYSIS, *PACKAGES_PRODUCTIVITY, *TERMINAL_EYE_CANDY,],
240
+ "dev-utils": PACKAGES_DEV_UTILS,
241
+ "term-eye-candy": TERMINAL_EYE_CANDY,
242
+ "agents": AGENTS,
243
+ "terminal-emulator": PACKAGES_TERMINAL_EMULATORS,
244
+ "shell": PACKAGES_TERMINAL_SHELL,
245
+ "browsers": PACKAGES_BROWSERS,
246
+ "code-editors": PACKAGES_CODE_EDITORS,
247
+ "code-analysis": PACKAGES_CODE_ANALYSIS,
248
+ "db": PACKAGES_DATABASE,
249
+ "media": PACKAGES_MEDIA,
250
+ "file-sharing": PACKAGES_FILE_SHARING,
251
+ "productivity": PACKAGES_PRODUCTIVITY,
252
+ "sys-monitor": PACKAGES_SYSTEM_MONITORS,
253
+ "search": PACKAGES_FILE,
325
254
  }
326
255
 
327
- _ = Union, Literal
machineconfig/logger.py CHANGED
@@ -1,4 +1,3 @@
1
- from __future__ import annotations
2
1
 
3
2
  import logging
4
3
  import os
@@ -0,0 +1,49 @@
1
+
2
+ # locations to be backed up to the cloud.
3
+
4
+ [thunderbird_windows]
5
+ path = '~/AppData/Roaming/Thunderbird/Profiles'
6
+ encrypt = 'True'
7
+ zip = 'True'
8
+ rel2home = 'True'
9
+ os_specific = 'True'
10
+
11
+
12
+ [thunderbird_linux]
13
+ path = '~/.thunderbird'
14
+ encrypt = 'True'
15
+ zip = 'True'
16
+ rel2home = 'True'
17
+ os_specific = 'True'
18
+
19
+
20
+ [zoxide_windows]
21
+ path = '~/AppData/Local/zoxide/db.zo'
22
+ encrypt = 'False'
23
+ zip = 'False'
24
+ rel2home = 'True'
25
+ os_specific = 'True'
26
+
27
+
28
+ [zoxide_linux]
29
+ path = '~/.local/share/zoxide/db.zo'
30
+ encrypt = 'False'
31
+ zip = 'False'
32
+ rel2home = 'True'
33
+ os_specific = 'True'
34
+
35
+
36
+ #[dotfiles]
37
+ # path = '~/dotfiles'
38
+ # encrypt = 'True'
39
+ # zip = 'True'
40
+ # rel2home = 'True'
41
+ # os_specific = 'True'
42
+
43
+
44
+ [ipython]
45
+ path = '~/.ipython'
46
+ encrypt = 'True'
47
+ zip = 'True'
48
+ rel2home = 'True'
49
+ os_specific = 'False'
@@ -0,0 +1,11 @@
1
+
2
+ # Non-login shells, .bashrc > .profile are read.
3
+ # for login shells, e.g. SSH, .bash_login > .bash_profile > .profile is read.
4
+
5
+ # The strategy to ensure consistent configuration for login and nonlogin shells is to put all the configuration in .bashrc, and then source it from .bash_profile and .profile.
6
+
7
+ # ensure .bash_profile only calls .profile
8
+ # ensure .profile calls .bashrc only at the end.
9
+
10
+ When you login: /etc/profile -> ~/.profile -> ~/.bash_profile -> ~/.bashrc
11
+ When you open a new terminal: ~/.bashrc
@@ -0,0 +1,74 @@
1
+
2
+ from typing import Literal
3
+ from pathlib import Path
4
+ import shutil
5
+ from machineconfig.utils.source_of_truth import LIBRARY_ROOT, CONFIG_ROOT
6
+
7
+
8
+ def _copy_path(source: Path, target: Path, overwrite: bool = False) -> None:
9
+ source = source.expanduser().resolve()
10
+ target = target.expanduser().resolve()
11
+ if not source.exists():
12
+ raise FileNotFoundError(f"Source path does not exist: {source}")
13
+ target.parent.mkdir(parents=True, exist_ok=True)
14
+ if target.exists() and not overwrite:
15
+ raise FileExistsError(f"Target already exists and overwrite=False: {target}")
16
+ if target.exists() and overwrite:
17
+ if target.is_dir():
18
+ shutil.rmtree(target)
19
+ else:
20
+ target.unlink()
21
+ if source.is_file():
22
+ shutil.copy2(source, target)
23
+ elif source.is_dir():
24
+ shutil.copytree(source, target, dirs_exist_ok=overwrite)
25
+ else:
26
+ raise ValueError(f"Source is neither file nor directory: {source}")
27
+
28
+
29
+ def copy_assets_to_machine(which: Literal["scripts", "settings"]) -> None:
30
+ import platform
31
+ import subprocess
32
+
33
+ system_name = platform.system().lower()
34
+ if system_name == "windows":
35
+ system = "windows"
36
+ elif system_name in {"linux", "darwin"}:
37
+ system = "linux"
38
+ else:
39
+ raise NotImplementedError(f"System {system_name} not supported")
40
+
41
+ match which:
42
+ case "scripts":
43
+ source = LIBRARY_ROOT.joinpath("scripts", system)
44
+ target = CONFIG_ROOT.joinpath("scripts")
45
+
46
+ wrap_mcfg_source = LIBRARY_ROOT.joinpath("scripts", "nu", "wrap_mcfg.nu")
47
+ wrap_mcfg_target = CONFIG_ROOT.joinpath("scripts", "wrap_mcfg.nu")
48
+ wrap_mcfg_target.parent.mkdir(parents=True, exist_ok=True)
49
+ _copy_path(source=wrap_mcfg_source, target=wrap_mcfg_target, overwrite=True)
50
+ case "settings":
51
+ source = LIBRARY_ROOT.joinpath("settings")
52
+ target = CONFIG_ROOT.joinpath("settings")
53
+
54
+ _copy_path(source=source, target=target, overwrite=True)
55
+
56
+ if system_name == "linux" and which == "scripts":
57
+ from rich.console import Console
58
+ console = Console()
59
+ console.print("\n[bold]📜 Setting executable permissions for scripts...[/bold]")
60
+ scripts_path = CONFIG_ROOT.joinpath("scripts")
61
+ subprocess.run(f"chmod +x {scripts_path} -R", shell=True, capture_output=True, text=True, check=False)
62
+ console.print("[green]✅ Script permissions updated[/green]")
63
+
64
+ home_dir = Path.home()
65
+ if system_name == "windows":
66
+ yazi_plugins_dir = home_dir.joinpath("AppData", "Roaming", "yazi", "config")
67
+ else:
68
+ yazi_plugins_dir = home_dir.joinpath(".config", "yazi")
69
+
70
+ yazi_plugins_path = yazi_plugins_dir.joinpath("plugins")
71
+ if not yazi_plugins_path.exists():
72
+ yazi_plugins_dir.mkdir(parents=True, exist_ok=True)
73
+ import git
74
+ git.Repo.clone_from("https://github.com/yazi-rs/plugins", yazi_plugins_path)