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,176 +0,0 @@
1
- """shell"""
2
-
3
- from machineconfig.utils.path_extended import PathExtended
4
- from machineconfig.utils.source_of_truth import LIBRARY_ROOT
5
-
6
- import platform
7
- import os
8
- import subprocess
9
- from rich.console import Console
10
- from rich.panel import Panel
11
-
12
-
13
- system = platform.system()
14
- sep = ";" if system == "Windows" else ":" # PATH separator, this is special for PATH object, not to be confused with PathExtended.sep (normal paths), usually / or \
15
- PATH = os.environ["PATH"].split(sep) # this is a list of paths in PATH variable, not a crocodile.file_management.P object.
16
- console = Console()
17
- BOX_WIDTH = 100 # Define BOX_WIDTH or get it from a config
18
-
19
-
20
- def get_shell_profile_path() -> PathExtended:
21
- if system == "Windows":
22
- result = subprocess.run(["pwsh", "-Command", "$PROFILE"], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, check=False)
23
- if result.returncode == 0 and result.stdout.strip():
24
- profile_path = PathExtended(result.stdout.strip())
25
- else:
26
- print(f"Command failed with return code {result.returncode}")
27
- print(f"stdout: {result.stdout}")
28
- print(f"stderr: {result.stderr}")
29
- raise ValueError(f"""Could not get profile path for Windows. Got stdout: {result.stdout}, stderr: {result.stderr}""")
30
- elif system == "Linux":
31
- profile_path = PathExtended("~/.bashrc").expanduser()
32
- else:
33
- raise ValueError(f"""Not implemented for this system {system}""")
34
- console.print(Panel(f"""🐚 SHELL PROFILE | Working with path: `{profile_path}`""", title="[bold blue]Shell Profile[/bold blue]", border_style="blue"))
35
- return profile_path
36
-
37
-
38
- def create_default_shell_profile() -> None:
39
- shell_profile_path = get_shell_profile_path()
40
- shell_profile = shell_profile_path.read_text(encoding="utf-8")
41
- if system == "Windows":
42
- source = f""". {str(PathExtended(LIBRARY_ROOT).joinpath("settings/shells/pwsh/init.ps1").collapseuser()).replace("~", "$HOME")}"""
43
- else:
44
- source = f"""source {str(PathExtended(LIBRARY_ROOT).joinpath("settings/shells/bash/init.sh").collapseuser()).replace("~", "$HOME")}"""
45
- if source in shell_profile:
46
- console.print(Panel("🔄 PROFILE | Skipping init script sourcing - already present in profile", title="[bold blue]Profile[/bold blue]", border_style="blue"))
47
- else:
48
- console.print(Panel("📝 PROFILE | Adding init script sourcing to profile", title="[bold blue]Profile[/bold blue]", border_style="blue"))
49
- shell_profile += "\n" + source + "\n"
50
- if system == "Linux":
51
- result = subprocess.run(["cat", "/proc/version"], stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True, check=False)
52
- if result.returncode == 0 and result.stdout:
53
- version_info = result.stdout.lower()
54
- if "microsoft" in version_info or "wsl" in version_info:
55
- shell_profile += "\ncd ~"
56
- console.print("📌 WSL detected - adding 'cd ~' to profile to avoid Windows filesystem")
57
- shell_profile_path.parent.mkdir(parents=True, exist_ok=True)
58
- shell_profile_path.write_text(shell_profile, encoding="utf-8")
59
- console.print(Panel("✅ Profile updated successfully", title="[bold blue]Profile[/bold blue]", border_style="blue"))
60
-
61
-
62
- # def append_temporarily(dirs: list[str], kind: Literal["append", "prefix", "replace"]) -> str:
63
- # dirs_ = []
64
- # for path in dirs:
65
- # path_rel = PathExtended(path).collapseuser(strict=False)
66
- # if path_rel.as_posix() in PATH or str(path_rel) in PATH or str(path_rel.expanduser()) in PATH or path_rel.expanduser().as_posix() in PATH:
67
- # print(f"Path passed `{path}` is already in PATH, skipping the appending.")
68
- # else:
69
- # dirs_.append(path_rel.as_posix() if system == "Linux" else str(path_rel))
70
- # dirs = dirs_
71
- # if len(dirs) == 0:
72
- # return ""
73
-
74
- # if system == "Windows":
75
- # """Source: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_environment_variables?view=powershell-7.2"""
76
- # if kind == "append":
77
- # command = rf'$env:Path += ";{sep.join(dirs)}"' # Append to the Path variable in the current window:
78
- # elif kind == "prefix":
79
- # command = rf'$env:Path = "{sep.join(dirs)};" + $env:Path' # Prefix the Path variable in the current window:
80
- # elif kind == "replace":
81
- # command = rf'$env:Path = "{sep.join(dirs)}"' # Replace the Path variable in the current window (use with caution!):
82
- # else:
83
- # raise KeyError
84
- # return command # if run is False else tm.run(command, shell="powershell")
85
- # elif system in ["Linux", "Darwin"]:
86
- # result = f'export PATH="{sep.join(dirs)}:$PATH"'
87
- # else:
88
- # raise ValueError
89
- # return result
90
-
91
-
92
- # def main_add_sources_to_shell_profile(profile_path: Optional[str], choice: Optional[str]) -> None:
93
- # sources: list[str] = read_toml(LIBRARY_ROOT.joinpath("profile/sources.toml"))[system.lower()]["files"]
94
- # console.print(Panel("🔄 Adding sources to shell profile", title="[bold blue]Sources[/bold blue]", border_style="blue"))
95
-
96
- # if choice is None:
97
- # choice_obj = choose_from_options(msg="Which patch to add?", options=sources + ["all", "none(EXIT)"], default="none(EXIT)", multi=True)
98
- # if isinstance(choice_obj, str):
99
- # if choice_obj == "all":
100
- # choice = choice_obj
101
- # elif choice_obj == "none(EXIT)":
102
- # return
103
- # else:
104
- # sources = [choice_obj]
105
- # else: # isinstance(choice_obj, list):
106
- # sources = choice_obj
107
- # elif choice == "none(EXIT)":
108
- # return
109
-
110
- # if isinstance(profile_path, str):
111
- # profile_path_obj = PathExtended(profile_path)
112
- # else:
113
- # profile_path_obj = get_shell_profile_path()
114
- # profile = profile_path_obj.read_text(encoding="utf-8")
115
-
116
- # for a_file in sources:
117
- # tmp = a_file.replace("REPO_ROOT", REPO_ROOT.as_posix()).replace("LIBRARY_ROOT", LIBRARY_ROOT.as_posix())
118
- # file = PathExtended(tmp).collapseuser() # this makes the shell profile interuseable across machines.
119
- # file = file.as_posix() if system == "Linux" else str(file)
120
- # if file not in profile:
121
- # if system == "Windows":
122
- # profile += f"\n. {file}"
123
- # console.print(f"➕ Added PowerShell source: {file}")
124
- # elif system == "Linux":
125
- # profile += f"\nsource {file}"
126
- # console.print(f"➕ Added Bash source: {file}")
127
- # else:
128
- # raise ValueError(f"Not implemented for this system {system}")
129
- # else:
130
- # console.print(f"⏭️ Source already present: {file}")
131
-
132
- # profile_path_obj.write_text(profile, encoding="utf-8")
133
- # console.print(Panel("✅ Shell profile updated with sources", title="[bold blue]Sources[/bold blue]", border_style="blue"))
134
-
135
-
136
- # def main_add_patches_to_shell_profile(profile_path: Optional[str], choice: Optional[str]) -> None:
137
- # patches: list[str] = [item.as_posix() for item in PathExtended(LIBRARY_ROOT).joinpath(f"profile/patches/{system.lower()}").search()]
138
-
139
- # console.print(Panel("🩹 Adding patches to shell profile", title="[bold blue]Patches[/bold blue]", border_style="blue"))
140
-
141
- # if choice is None:
142
- # choice_chosen = choose_from_options(msg="Which patch to add?", options=list(patches) + ["all", "none(EXIT)"], default="none(EXIT)", multi=False)
143
- # assert isinstance(choice_chosen, str), f"Choice must be a string or a list of strings, not {type(choice)}"
144
- # choice = choice_chosen
145
- # if choice == "none(EXIT)":
146
- # return None
147
- # elif str(choice) == "all":
148
- # console.print("📌 Adding all patches to profile")
149
- # else:
150
- # patches = [choice]
151
- # console.print(f"📌 Adding selected patch: {choice}")
152
-
153
- # profile_path_obj = PathExtended(profile_path) if isinstance(profile_path, str) else get_shell_profile_path()
154
- # profile = profile_path_obj.read_text(encoding="utf-8")
155
-
156
- # for patch_path in patches:
157
- # patch_path_obj = PathExtended(patch_path)
158
- # patch = patch_path_obj.read_text(encoding="utf-8")
159
- # if patch in profile:
160
- # console.print(f"⏭️ Patch already present: {patch_path_obj.name}")
161
- # else:
162
- # profile += "\n" + patch
163
- # console.print(f"➕ Added patch: {patch_path_obj.name}")
164
-
165
- # if system == "Linux":
166
- # res = Terminal().run("cat /proc/version").op
167
- # if "microsoft" in res.lower() or "wsl" in res.lower():
168
- # profile += "\ncd ~" # this is to make sure that the current dir is not in the windows file system, which is terribly slow and its a bad idea to be there anyway.
169
- # console.print("📌 WSL detected - adding 'cd ~' to profile to avoid Windows filesystem")
170
-
171
- # profile_path_obj.write_text(profile, encoding="utf-8")
172
- # console.print(Panel("✅ Shell profile updated with patches", title="[bold blue]Patches[/bold blue]", border_style="blue"))
173
-
174
-
175
- if __name__ == "__main__":
176
- pass
@@ -1,119 +0,0 @@
1
- #!/bin/bash
2
- #=======================================================================
3
- # ☁️ CLOUD CONFIGURATION INITIALIZATION SCRIPT ☁️
4
- #=======================================================================
5
- # This script initializes cloud configuration settings and sets up the environment
6
-
7
- echo """#=======================================================================
8
- 🔑 COLLECTING CONFIGURATION PARAMETERS | Setting up cloud environment
9
- #=======================================================================
10
- """
11
-
12
- # Check for required environment variables and prompt if not set
13
- if [ -z "$CLOUD_CONFIG_NAME" ]; then
14
- echo """ #-----------------------------------------------------------------------
15
- 📋 CONFIG NAME | Specify cloud configuration to run
16
- #-----------------------------------------------------------------------
17
- """
18
- read -s -p "💭 Enter CLOUD_CONFIG_NAME (should be under cloud_config_name): " CLOUD_CONFIG_NAME
19
- export CLOUD_CONFIG_NAME=$CLOUD_CONFIG_NAME
20
- echo ""
21
- fi
22
-
23
- if [ -z "$SHARE_URL" ]; then
24
- echo """ #-----------------------------------------------------------------------
25
- 🔗 SHARE URL | Provide cloud share URL for configuration files
26
- #-----------------------------------------------------------------------
27
- ℹ️ To get share_url, go to dotfiles and run: cloud_copy . :^ --config ss
28
- """
29
- read -s -p "🔗 Enter SHARE_URL: " SHARE_URL
30
- export SHARE_URL=$SHARE_URL
31
- echo ""
32
- fi
33
-
34
- if [ -z "$DECRYPTION_PASSWORD" ]; then
35
- echo """ #-----------------------------------------------------------------------
36
- 🔒 SECURITY | Enter decryption password
37
- #-----------------------------------------------------------------------
38
- """
39
- read -s -p "🔑 Enter DECRYPTION_PASSWORD: " DECRYPTION_PASSWORD
40
- export DECRYPTION_PASSWORD=$DECRYPTION_PASSWORD
41
- echo ""
42
- fi
43
-
44
- echo """#=======================================================================
45
- 📦 INSTALLING ESSENTIALS | Setting up core dependencies
46
- #=======================================================================
47
- """
48
-
49
- # Set up package manager
50
- export package_manager="apt"
51
-
52
- # Install essential applications
53
- echo "📥 Installing essential Linux applications..."
54
- curl bit.ly/cfgappslinux -L | bash
55
-
56
- # Set up virtual environment
57
- echo "🔧 Setting up Python virtual environment..."
58
- curl bit.ly/cfgvelinux -L | bash
59
-
60
- # Activate virtual environment
61
- echo "🚀 Activating Python virtual environment..."
62
- . $HOME/code/machineconfig/.venv/bin/activate
63
-
64
- # Clone repositories
65
- echo "📋 Setting up code repositories..."
66
- curl bit.ly/cfgreposlinux -L | bash
67
-
68
- echo """#=======================================================================
69
- ⚙️ CONFIGURING ENVIRONMENT | Setting up dotfiles
70
- #=======================================================================
71
- """
72
-
73
- # Link configuration files
74
- echo "🔄 Creating symlinks for configuration files..."
75
- source ~/code/machineconfig/src/machineconfig/setup_linux/symlinks.sh
76
- sleep 1
77
-
78
- # Copy cloud configurations
79
- echo "☁️ Copying configuration files from cloud storage..."
80
- ~/scripts/cloud_copy $SHARE_URL $HOME --config ss
81
-
82
- # Refresh symlinks
83
- echo "🔄 Refreshing symlinks after cloud copy..."
84
- source ~/code/machineconfig/src/machineconfig/setup_linux/symlinks.sh
85
-
86
- # Reload shell configuration
87
- echo "🔄 Reloading shell configuration..."
88
- . ~/.bashrc
89
-
90
- echo """#=======================================================================
91
- 📦 INSTALLING DEVELOPMENT TOOLS | Setting up development environment
92
- #=======================================================================
93
- """
94
-
95
- # Activate virtual environment
96
- echo "🚀 Activating Python virtual environment..."
97
- . $HOME/scripts/activate_ve '.venv'
98
-
99
- # Install all essential development applications
100
- echo "📥 Installing essential development applications..."
101
- python -m fire machineconfig.scripts.python.devops_devapps_install main --which=essentials
102
-
103
- # Reload shell configuration
104
- echo "🔄 Reloading shell configuration..."
105
- . ~/.bashrc
106
-
107
- echo """#=======================================================================
108
- ✅ FINALIZING CONFIGURATION | Running cloud-specific initialization
109
- #=======================================================================
110
- """
111
-
112
- # Run cloud-specific initialization script
113
- echo "⚙️ Running cloud-specific configuration: $CLOUD_CONFIG_NAME"
114
- . $HOME/dotfiles/config/cloud/$CLOUD_CONFIG_NAME/init.sh
115
-
116
- echo """#=======================================================================
117
- ✅ INITIALIZATION COMPLETE | Cloud environment has been set up successfully
118
- #=======================================================================
119
- """
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig agents "$@"
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig choose_wezterm_theme
3
- source ~/.bashrc # reload the profile
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig cloud_copy "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig cloud_mount "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig cloud_repo_sync "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig cloud_sync
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig croshell "$@"
3
-
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig devops "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig fire "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig ftpx "$@"
@@ -1,21 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # uses fzf as interactive ripgrep launcher.
4
- # from https://github.com/junegunn/fzf/blob/master/ADVANCED.md#using-fzf-as-interative-ripgrep-launcher
5
-
6
- # 1. Search for text in files using Ripgrep
7
- # 2. Interactively restart Ripgrep with reload action
8
- # 3. Open the file in Vim
9
-
10
- RG_PREFIX="rg --column --line-number --no-heading --color=always --smart-case "
11
- INITIAL_QUERY="${*:-}"
12
- IFS=: read -ra selected < <(
13
- FZF_DEFAULT_COMMAND="$RG_PREFIX $(printf %q "$INITIAL_QUERY")" \
14
- fzf --ansi \
15
- --disabled --query "$INITIAL_QUERY" \
16
- --bind "change:reload:sleep 0.1; $RG_PREFIX {q} || true" \
17
- --delimiter : \
18
- --preview 'bat --color=always {1} --highlight-line {2}' \
19
- --preview-window 'up,60%,border-bottom,+{2}+3/3,~3'
20
- )
21
- [ -n "${selected[0]}" ] && lvim "${selected[0]}" "+${selected[1]}"
@@ -1,25 +0,0 @@
1
- #!/usr/bin/env bash
2
- # fzf from grep
3
- # from https://github.com/junegunn/fzf/blob/master/ADVANCED.md#switching-to-fzf-only-search-mode
4
-
5
- # Two-phase filtering with Ripgrep and fzf
6
- #
7
- # 1. Search for text in files using Ripgrep
8
- # 2. Interactively restart Ripgrep with reload action
9
- # * Press alt-enter to switch to fzf-only filtering
10
- # 3. Open the file in Vim
11
- RG_PREFIX="rg --column --line-number --no-heading --color=always --smart-case "
12
- INITIAL_QUERY="${*:-}"
13
- IFS=: read -ra selected < <(
14
- FZF_DEFAULT_COMMAND="$RG_PREFIX $(printf %q "$INITIAL_QUERY")" \
15
- fzf --ansi \
16
- --color "hl:-1:underline,hl+:-1:underline:reverse" \
17
- --disabled --query "$INITIAL_QUERY" \
18
- --bind "change:reload:sleep 0.1; $RG_PREFIX {q} || true" \
19
- --bind "alt-enter:unbind(change,alt-enter)+change-prompt(2. fzf> )+enable-search+clear-query" \
20
- --prompt '1. ripgrep> ' \
21
- --delimiter : \
22
- --preview 'batcat --color=always {1} --highlight-line {2}' \
23
- --preview-window 'up,60%,border-bottom,+{2}+3/3,~3'
24
- )
25
- [ -n "${selected[0]}" ] && lvim "${selected[0]}" "+${selected[1]}"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig gh_models "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig initai "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig kill_process "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig scheduler "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig sessions "$@"
@@ -1 +0,0 @@
1
- #!/usr/bin/env bash
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig start_slidev "$@"
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig create_zellij_template
3
- zellij --layout $HOME/tmp_results/tmp_files/templates/zellij_template.kdl
@@ -1,122 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Installs Cloudflare WARP (warp-cli) on supported Ubuntu / Debian systems.
3
- # Usage: sudo ./warp-cli.sh [--allow-unsupported] [--force-reinstall]
4
-
5
- set -euo pipefail
6
-
7
- ALLOW_UNSUPPORTED=0
8
- FORCE_REINSTALL=0
9
-
10
- for arg in "$@"; do
11
- case "$arg" in
12
- --allow-unsupported) ALLOW_UNSUPPORTED=1 ;;
13
- --force-reinstall) FORCE_REINSTALL=1 ;;
14
- -h|--help)
15
- printf "Usage: %s [--allow-unsupported] [--force-reinstall]\n" "$0"
16
- exit 0
17
- ;;
18
- *)
19
- printf "Unknown argument: %s\n" "$arg" >&2
20
- exit 2
21
- ;;
22
- esac
23
- done
24
-
25
- require_root() {
26
- if [ "${EUID}" -ne 0 ]; then
27
- printf "Please run as root (use sudo).\n" >&2
28
- exit 1
29
- fi
30
- }
31
-
32
- have_cmd() { command -v "$1" >/dev/null 2>&1; }
33
-
34
- detect_os() {
35
- if have_cmd lsb_release; then
36
- DIST_ID=$(lsb_release -si 2>/dev/null | tr '[:upper:]' '[:lower:]')
37
- CODENAME=$(lsb_release -sc 2>/dev/null | tr '[:upper:]' '[:lower:]')
38
- elif [ -f /etc/os-release ]; then
39
- # shellcheck disable=SC1091
40
- . /etc/os-release
41
- DIST_ID=$(printf "%s" "${ID:-}" | tr '[:upper:]' '[:lower:]')
42
- CODENAME=$(printf "%s" "${VERSION_CODENAME:-}" | tr '[:upper:]' '[:lower:]')
43
- else
44
- printf "Cannot detect distribution. Install lsb_release or provide /etc/os-release.\n" >&2
45
- exit 1
46
- fi
47
- }
48
-
49
- is_supported() {
50
- case "$DIST_ID" in
51
- ubuntu)
52
- # Supported: noble jammy focal (older: bionic xenial)
53
- case "$CODENAME" in
54
- noble|jammy|focal|bionic|xenial) return 0 ;; esac ;;
55
- debian)
56
- # Supported: bookworm bullseye buster (older: stretch)
57
- case "$CODENAME" in
58
- bookworm|bullseye|buster|stretch) return 0 ;; esac ;;
59
- esac
60
- return 1
61
- }
62
-
63
- add_key() {
64
- local key_path="/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg"
65
- if [ -s "$key_path" ]; then
66
- return 0
67
- fi
68
- curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | gpg --yes --dearmor --output "$key_path"
69
- }
70
-
71
- add_repo() {
72
- local list_file="/etc/apt/sources.list.d/cloudflare-client.list"
73
- if grep -q "pkg.cloudflareclient.com" "$list_file" 2>/dev/null; then
74
- return 0
75
- fi
76
- echo "deb [signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ ${CODENAME} main" > "$list_file"
77
- }
78
-
79
- need_update=0
80
- install_package() {
81
- if dpkg -s cloudflare-warp >/dev/null 2>&1; then
82
- if [ "$FORCE_REINSTALL" -eq 1 ]; then
83
- apt-get install --reinstall -y cloudflare-warp
84
- else
85
- printf "cloudflare-warp already installed. Use --force-reinstall to reinstall.\n"
86
- fi
87
- else
88
- apt-get install -y cloudflare-warp
89
- fi
90
- }
91
-
92
- main() {
93
- require_root
94
- if ! have_cmd apt-get; then
95
- printf "apt-get not found. This script supports only Debian/Ubuntu.\n" >&2
96
- exit 1
97
- fi
98
- detect_os
99
- if ! is_supported; then
100
- if [ "$ALLOW_UNSUPPORTED" -ne 1 ]; then
101
- printf "Distribution %s (%s) not in supported list. Use --allow-unsupported to proceed.\n" "$DIST_ID" "$CODENAME" >&2
102
- exit 3
103
- else
104
- printf "Proceeding on unsupported distribution %s (%s).\n" "$DIST_ID" "$CODENAME"
105
- fi
106
- fi
107
- pre_key_checksum=$( [ -f /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg ] && sha256sum /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg | cut -d' ' -f1 || true )
108
- add_key
109
- post_key_checksum=$(sha256sum /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg | cut -d' ' -f1)
110
- if [ "$pre_key_checksum" != "$post_key_checksum" ]; then need_update=1; fi
111
- repo_before=$(grep -R "pkg.cloudflareclient.com" /etc/apt/sources.list.d 2>/dev/null || true)
112
- add_repo
113
- repo_after=$(grep -R "pkg.cloudflareclient.com" /etc/apt/sources.list.d 2>/dev/null || true)
114
- if [ "$repo_before" != "$repo_after" ]; then need_update=1; fi
115
- if [ "$need_update" -eq 1 ]; then
116
- apt-get update
117
- fi
118
- install_package
119
- printf "Done. Basic usage: 'warp-cli register' then 'warp-cli connect'. For account: 'warp-cli set-mode warp'.\n"
120
- }
121
-
122
- main "$@"
@@ -1,2 +0,0 @@
1
- #!/usr/bin/env bash
2
- uv run --python 3.13 --no-dev --project $HOME/code/machineconfig wifi_conn
@@ -1,104 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # if variable zellij is not set, then set it to /$HOME/.local/bin/zellij
4
- if [ -z "$zellij" ]; then
5
- # zellij="$HOME/.local/bin/zellij"
6
- PATH="$HOME/.local/bin:$PATH"
7
- fi
8
-
9
- # adopted from https://zellij.dev/documentation/integration.html
10
- ZJ_SESSIONS=$(zellij list-sessions)
11
- # echo "$ZJ_SESSIONS"
12
-
13
-
14
- attach=false
15
-
16
- while (( "$#" )); do
17
- case "$1" in
18
- --attach)
19
- attach=true
20
- shift
21
- ;;
22
- *)
23
- shift
24
- ;;
25
- esac
26
- done
27
-
28
- if $attach; then
29
- echo "attached"
30
- fi
31
-
32
-
33
- NO_SESSIONS=$(echo "${ZJ_SESSIONS}" | wc -l)
34
- # if ZJ_SESSIONS is empty, then set NO_SESSIONS to 0
35
- if [ -z "${ZJ_SESSIONS}" ]; then
36
- NO_SESSIONS=0
37
- fi
38
-
39
- # check whether the string "(current)" is in ZJ_SESSIONS
40
- if [[ "${ZJ_SESSIONS}" == *"(current)"* ]]; then
41
- # if so, then we are in a zellijsession
42
- echo "already inside a session, existing."
43
- COMMANDS=$(ls $HOME/code/machineconfig/src/machineconfig/settings/zellij/commands)
44
- # fzf the results
45
- res="$(echo -e "${COMMANDS}" | fzf --ansi)"
46
- # run the bash fiZJ_SESSIONSle chosen
47
- bash $HOME/code/machineconfig/src/machineconfig/settings/zellij/commands/$res
48
-
49
- else # ==> we are not in a zellijsession
50
- if [ "${NO_SESSIONS}" -ge 1 ]; then # sessions do exist
51
-
52
- # remove sessions that have 'EXITED' in them
53
- ZJ_SESSIONS=$(echo -e "${ZJ_SESSIONS}" | grep -v "EXITED")
54
-
55
- echo "zj_sessions:$ZJ_SESSIONS:end of zj_sessions"
56
-
57
- # if the result has only 1 line in it and $attach is raised, then attach to it and exit the if statement and the script
58
- NO_SESSIONS=$(echo "${ZJ_SESSIONS}" | wc -l)
59
-
60
- echo "NO_SESSIONS: $NO_SESSIONS"
61
-
62
- # if ZJ_SESSIONS is empty, then set NO_SESSIONS to 0
63
- if [ -z "${ZJ_SESSIONS}" ]; then
64
- NO_SESSIONS=0
65
- zellij --layout st2
66
- exit 0
67
- fi
68
- echo "NO_SESSIONS: $NO_SESSIONS"
69
-
70
- if [ "${NO_SESSIONS}" -eq 1 ] && $attach; then
71
- chosen_session=$(echo -e "${ZJ_SESSIONS}" | cut -d' ' -f1)
72
- # remove the ansi colors from chosen_session
73
- chosen_session=$(echo $chosen_session | sed 's/\x1b\[[0-9;]*m//g')
74
- # echo "attaching to $chosen_session exclusively."
75
- zellij attach "$chosen_session"
76
- exit 0
77
- fi
78
-
79
- # add my options to the list of sessions
80
- # if number of sessions is zero, then exclude ZJ_SESSIONS from the fzf options
81
- if [ "${NO_SESSIONS}" -eq 0 ]; then
82
- ZJ_SESSIONS="new_session\nkill_all_and_create_fresh_one\nexit_zellij"
83
- else
84
- ZJ_SESSIONS="$ZJ_SESSIONS\nnew_session\nkill_all_and_create_fresh_one\nexit_zellij"
85
- fi
86
-
87
- res="$(echo -e "${ZJ_SESSIONS}" | fzf --ansi)"
88
- # split `res` at the first space, and take the first element
89
- res=$(echo $res | cut -d' ' -f1)
90
- if [ "${res}" = "exit_zellij" ]; then
91
- echo "existing zellij."
92
- elif [ "${res}" = "new_session" ]; then
93
- zellij --layout st2 # can't specify name here. I can call it "main" only if it is the first, otherwise name conflict! also, can't use attach -c syntax because layout can't be specified.
94
- elif [ "${res}" = "kill_all_and_create_fresh_one" ]; then
95
- zellij ka -y
96
- zellij --layout st2
97
- else
98
- zellij attach $res # options --mirror-session false
99
- fi
100
- else # no sessions, create one called main
101
- zellij --layout st2
102
- fi
103
-
104
- fi
@@ -1,5 +0,0 @@
1
- ---
2
- mode: agent
3
- ---
4
-
5
- please run the following