machineconfig 3.8__tar.gz → 3.82__tar.gz

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 (439) hide show
  1. {machineconfig-3.8/src/machineconfig.egg-info → machineconfig-3.82}/PKG-INFO +2 -1
  2. {machineconfig-3.8 → machineconfig-3.82}/pyproject.toml +6 -5
  3. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/cloud_repo_sync.py +11 -17
  4. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/croshell.py +2 -3
  5. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops.py +21 -38
  6. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops_devapps_install.py +11 -4
  7. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_jobs.py +59 -6
  8. machineconfig-3.82/src/machineconfig/scripts/python/fire_jobs_args_helper.py +48 -0
  9. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ftpx.py +55 -48
  10. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/repos.py +43 -44
  11. {machineconfig-3.8 → machineconfig-3.82/src/machineconfig.egg-info}/PKG-INFO +2 -1
  12. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig.egg-info/SOURCES.txt +0 -4
  13. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig.egg-info/entry_points.txt +4 -3
  14. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig.egg-info/requires.txt +1 -0
  15. machineconfig-3.8/src/machineconfig/cluster/templates/cli_click.py +0 -102
  16. machineconfig-3.8/src/machineconfig/scripts/python/archive/im2text.py +0 -34
  17. machineconfig-3.8/src/machineconfig/scripts/python/archive/tmate_conn.py +0 -41
  18. machineconfig-3.8/src/machineconfig/scripts/python/archive/tmate_start.py +0 -44
  19. machineconfig-3.8/src/machineconfig/scripts/python/fire_jobs_args_helper.py +0 -84
  20. {machineconfig-3.8 → machineconfig-3.82}/MANIFEST.in +0 -0
  21. {machineconfig-3.8 → machineconfig-3.82}/README.md +0 -0
  22. {machineconfig-3.8 → machineconfig-3.82}/setup.cfg +0 -0
  23. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/__init__.py +0 -0
  24. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/__init__.py +0 -0
  25. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/cloud_manager.py +0 -0
  26. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/data_transfer.py +0 -0
  27. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/distribute.py +0 -0
  28. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/file_manager.py +0 -0
  29. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/job_params.py +0 -0
  30. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/loader_runner.py +0 -0
  31. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/remote_machine.py +0 -0
  32. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/script_execution.py +0 -0
  33. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/remote/script_notify_upon_completion.py +0 -0
  34. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
  35. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/enhanced_command_runner.py +0 -0
  36. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_local.py +0 -0
  37. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +0 -0
  38. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_remote.py +0 -0
  39. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +0 -0
  40. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +0 -0
  41. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +0 -0
  42. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +0 -0
  43. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +0 -0
  44. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +0 -0
  45. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_local.py +0 -0
  46. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +0 -0
  47. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +0 -0
  48. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +0 -0
  49. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +0 -0
  50. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +0 -0
  51. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py +0 -0
  52. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +0 -0
  53. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +0 -0
  54. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +0 -0
  55. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +0 -0
  56. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/__init__.py +0 -0
  57. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/cli_gooey.py +0 -0
  58. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/cli_trogon.py +0 -0
  59. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/run_cloud.py +0 -0
  60. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/run_cluster.py +0 -0
  61. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/run_remote.py +0 -0
  62. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/cluster/templates/utils.py +0 -0
  63. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/__init__.py +0 -0
  64. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/linux/msc/cli_agents.sh +0 -0
  65. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/linux/msc/lid.sh +0 -0
  66. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/linux/msc/network.sh +0 -0
  67. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/__init__.py +0 -0
  68. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/check_installations.py +0 -0
  69. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/create_bootable_media.py +0 -0
  70. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/python_cargo_build_share.py +0 -0
  71. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/python_ve_symlink.py +0 -0
  72. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/tasks.py +0 -0
  73. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/vscode/api.py +0 -0
  74. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/vscode/link_ve.py +0 -0
  75. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/vscode/select_interpreter.py +0 -0
  76. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python/vscode/sync_code.py +0 -0
  77. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/__init__.py +0 -0
  78. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/archive/ngrok.py +0 -0
  79. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/aider.py +0 -0
  80. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/alacritty.py +0 -0
  81. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/brave.py +0 -0
  82. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/bypass_paywall.py +0 -0
  83. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/code.py +0 -0
  84. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/cursor.py +0 -0
  85. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/docker_desktop.py +0 -0
  86. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/espanso.py +0 -0
  87. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/goes.py +0 -0
  88. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/lvim.py +0 -0
  89. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/nerdfont.py +0 -0
  90. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/redis.py +0 -0
  91. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/reverse_proxy.md +0 -0
  92. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/wezterm.py +0 -0
  93. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/dev/winget.py +0 -0
  94. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/docker.py +0 -0
  95. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/gh.py +0 -0
  96. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/hx.py +0 -0
  97. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/brave.sh +0 -0
  98. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/docker.sh +0 -0
  99. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/docker_start.sh +0 -0
  100. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/edge.sh +0 -0
  101. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/nerdfont.sh +0 -0
  102. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/pgsql.sh +0 -0
  103. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/redis.sh +0 -0
  104. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/timescaledb.sh +0 -0
  105. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/vscode.sh +0 -0
  106. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/warp-cli.sh +0 -0
  107. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/scripts/linux/wezterm.sh +0 -0
  108. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_custom_installers/warp-cli.py +0 -0
  109. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/__init__.py +0 -0
  110. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/config.json +0 -0
  111. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/config.json.bak +0 -0
  112. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/dev/config.archive.json +0 -0
  113. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/dev/config.json +0 -0
  114. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_generic_installers/dev/config.json.bak +0 -0
  115. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/__init__.py +0 -0
  116. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/archive/config.json +0 -0
  117. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/archive/config.json.bak +0 -0
  118. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/config.json +0 -0
  119. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/config.json.bak +0 -0
  120. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/dev/__init__.py +0 -0
  121. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/dev/config.json +0 -0
  122. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_linux_installers/dev/config.json.bak +0 -0
  123. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/__init__.py +0 -0
  124. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/archive/__init__.py +0 -0
  125. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/archive/file.json +0 -0
  126. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/config.json +0 -0
  127. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/config.json.bak +0 -0
  128. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/dev/__init__.py +0 -0
  129. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/dev/config.json +0 -0
  130. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/python_windows_installers/dev/config.json.bak +0 -0
  131. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -0
  132. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/archive/openssh-server_add_key.ps1 +0 -0
  133. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/archive/openssh-server_copy-ssh-id.ps1 +0 -0
  134. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/msc/cli_agents.bat +0 -0
  135. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/msc/cli_agents.ps1 +0 -0
  136. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/start_terminal.ps1 +0 -0
  137. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/jobs/windows/startup_file.cmd +0 -0
  138. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/logger.py +0 -0
  139. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/__init__.py +0 -0
  140. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/create.py +0 -0
  141. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/records/generic/shares.toml +0 -0
  142. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
  143. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
  144. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
  145. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
  146. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/profile/shell.py +0 -0
  147. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/__init__.py +0 -0
  148. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/cloud/init.sh +0 -0
  149. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/choose_wezterm_theme +0 -0
  150. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/cloud_copy +0 -0
  151. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/cloud_mount +0 -0
  152. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/cloud_repo_sync +0 -0
  153. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/cloud_sync +0 -0
  154. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/croshell +0 -0
  155. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/devops +0 -0
  156. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fire +0 -0
  157. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fire_agents +0 -0
  158. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/ftpx +0 -0
  159. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fzf2g +0 -0
  160. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fzfag +0 -0
  161. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fzffg +0 -0
  162. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fzfg +0 -0
  163. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/fzfrga +0 -0
  164. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/gh_models +0 -0
  165. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/initai +0 -0
  166. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/kill_process +0 -0
  167. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/mount_drive +0 -0
  168. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/mount_nfs +0 -0
  169. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/mount_nw_drive +0 -0
  170. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/mount_smb +0 -0
  171. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/programs +0 -0
  172. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/repos +0 -0
  173. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/scheduler +0 -0
  174. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/share_cloud.sh +0 -0
  175. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/share_nfs +0 -0
  176. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/share_smb +0 -0
  177. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/skrg +0 -0
  178. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/start_docker +0 -0
  179. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/start_slidev +0 -0
  180. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/start_terminals +0 -0
  181. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/switch_ip +0 -0
  182. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/warp-cli.sh +0 -0
  183. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/wifi_conn +0 -0
  184. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/linux/z_ls +0 -0
  185. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/__init__.py +0 -0
  186. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/__init__.py +0 -0
  187. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/generate_files.py +0 -0
  188. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/initai.py +0 -0
  189. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +0 -0
  190. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/__init__.py +0 -0
  191. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/_shared.py +0 -0
  192. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/claude/claude.py +0 -0
  193. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/cline/cline.py +0 -0
  194. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Thinking-Beast-Mode.chatmode.md +0 -0
  195. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +0 -0
  196. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/deepResearch.chatmode.md +0 -0
  197. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
  198. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
  199. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/privacy.md +0 -0
  200. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -0
  201. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
  202. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/crush/crush.json +0 -0
  203. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/crush/crush.py +0 -0
  204. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/crush/privacy.md +0 -0
  205. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/cursor/cursors.py +0 -0
  206. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/gemini/gemini.py +0 -0
  207. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/gemini/settings.json +0 -0
  208. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/generic.py +0 -0
  209. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
  210. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.json +0 -0
  211. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.py +0 -0
  212. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/choose_wezterm_theme.py +0 -0
  213. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/cloud_copy.py +0 -0
  214. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/cloud_manager.py +0 -0
  215. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/cloud_mount.py +0 -0
  216. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/cloud_sync.py +0 -0
  217. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops_add_identity.py +0 -0
  218. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops_add_ssh_key.py +0 -0
  219. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops_backup_retrieve.py +0 -0
  220. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/devops_update_repos.py +0 -0
  221. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/dotfile.py +0 -0
  222. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_agents.py +0 -0
  223. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_agents_help_launch.py +0 -0
  224. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_agents_help_search.py +0 -0
  225. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_agents_load_balancer.py +0 -0
  226. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -0
  227. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/fire_jobs_streamlit_helper.py +0 -0
  228. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/get_zellij_cmd.py +0 -0
  229. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/gh_models.py +0 -0
  230. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/__init__.py +0 -0
  231. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/cloud_helpers.py +0 -0
  232. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/helpers2.py +0 -0
  233. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/helpers4.py +0 -0
  234. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/helpers5.py +0 -0
  235. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -0
  236. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/mount_nfs.py +0 -0
  237. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/mount_nw_drive.py +0 -0
  238. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/mount_ssh.py +0 -0
  239. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/onetimeshare.py +0 -0
  240. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/pomodoro.py +0 -0
  241. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/repos_helper_clone.py +0 -0
  242. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/repos_helper_record.py +0 -0
  243. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/repos_helper_update.py +0 -0
  244. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/scheduler.py +0 -0
  245. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/snapshot.py +0 -0
  246. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/start_slidev.py +0 -0
  247. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/start_terminals.py +0 -0
  248. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/viewer.py +0 -0
  249. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/viewer_template.py +0 -0
  250. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/wifi_conn.py +0 -0
  251. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/python/wsl_windows_transfer.py +0 -0
  252. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -0
  253. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/cloud_copy.ps1 +0 -0
  254. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/cloud_mount.ps1 +0 -0
  255. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -0
  256. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/cloud_sync.ps1 +0 -0
  257. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/croshell.ps1 +0 -0
  258. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/devops.ps1 +0 -0
  259. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/dotfile.ps1 +0 -0
  260. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/fire.ps1 +0 -0
  261. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/ftpx.ps1 +0 -0
  262. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
  263. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
  264. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
  265. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/gpt.ps1 +0 -0
  266. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/grep.ps1 +0 -0
  267. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/initai.ps1 +0 -0
  268. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/kill_process.ps1 +0 -0
  269. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/mount_nfs.ps1 +0 -0
  270. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/mount_nw.ps1 +0 -0
  271. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/mount_smb.ps1 +0 -0
  272. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/mount_ssh.ps1 +0 -0
  273. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/nano.ps1 +0 -0
  274. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/pomodoro.ps1 +0 -0
  275. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/reload_path.ps1 +0 -0
  276. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/repos.ps1 +0 -0
  277. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/scheduler.ps1 +0 -0
  278. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/share_cloud.cmd +0 -0
  279. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/share_nfs.ps1 +0 -0
  280. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/share_smb.ps1 +0 -0
  281. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/snapshot.ps1 +0 -0
  282. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/start_slidev.ps1 +0 -0
  283. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/start_terminals.ps1 +0 -0
  284. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/unlock_bitlocker.ps1 +0 -0
  285. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/wifi_conn.ps1 +0 -0
  286. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -0
  287. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -0
  288. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/__init__.py +0 -0
  289. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/broot/br.sh +0 -0
  290. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
  291. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/broot/conf.toml +0 -0
  292. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/glow/glow.yml +0 -0
  293. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
  294. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/helix/config.toml +0 -0
  295. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/helix/languages.toml +0 -0
  296. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/keras/keras.json +0 -0
  297. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
  298. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
  299. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
  300. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
  301. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
  302. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
  303. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
  304. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
  305. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
  306. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
  307. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/colors +0 -0
  308. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
  309. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
  310. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
  311. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
  312. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
  313. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
  314. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/icons +0 -0
  315. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/linux/lfrc +0 -0
  316. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
  317. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
  318. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
  319. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
  320. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
  321. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
  322. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
  323. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
  324. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
  325. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
  326. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/colors +0 -0
  327. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
  328. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/icons +0 -0
  329. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
  330. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
  331. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/lfrc +0 -0
  332. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
  333. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
  334. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
  335. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
  336. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/linters/.flake8 +0 -0
  337. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/linters/.mypy.ini +0 -0
  338. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/linters/.pylintrc +0 -0
  339. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/linters/.ruff.toml +0 -0
  340. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
  341. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -0
  342. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
  343. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
  344. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
  345. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/mprocs/windows/other +0 -0
  346. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/pistol/pistol.conf +0 -0
  347. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/presenterm/config.yaml +0 -0
  348. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/procs/.procs.toml +0 -0
  349. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
  350. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/rofi/config.rasi +0 -0
  351. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
  352. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
  353. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
  354. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/bash/init.sh +0 -0
  355. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
  356. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/ipy/profiles/default/__init__.py +0 -0
  357. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py +0 -0
  358. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
  359. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
  360. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
  361. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
  362. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/pwsh/init.ps1 +0 -0
  363. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
  364. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
  365. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
  366. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
  367. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/shells/wt/settings.json +0 -0
  368. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/streamlit/config.toml +0 -0
  369. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/svim/linux/init.toml +0 -0
  370. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/svim/windows/init.toml +0 -0
  371. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
  372. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/tere/terecd.sh +0 -0
  373. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
  374. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
  375. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/wsl/.wslconfig +0 -0
  376. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/yazi/keymap.toml +0 -0
  377. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/yazi/theme.toml +0 -0
  378. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/yazi/yazi.toml +0 -0
  379. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zed/settings.json +0 -0
  380. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/commands/monitor +0 -0
  381. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
  382. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/config.kdl +0 -0
  383. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
  384. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/layouts/hist +0 -0
  385. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
  386. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
  387. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
  388. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
  389. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/nix/cli_installation.sh +0 -0
  390. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
  391. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -0
  392. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/web_shortcuts/android.sh +0 -0
  393. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -0
  394. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -0
  395. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +0 -0
  396. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -0
  397. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/__init__.py +0 -0
  398. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
  399. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
  400. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -0
  401. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -0
  402. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -0
  403. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +0 -0
  404. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -0
  405. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/wt_and_pwsh/__init__.py +0 -0
  406. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/wt_and_pwsh/install_fonts.ps1 +0 -0
  407. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/wt_and_pwsh/install_nerd_fonts.py +0 -0
  408. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +0 -0
  409. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/__init__.py +0 -0
  410. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/accessories.py +0 -0
  411. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/ai/__init__.py +0 -0
  412. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/ai/generate_file_checklist.py +0 -0
  413. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +0 -0
  414. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/cloud/onedrive/transaction.py +0 -0
  415. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/code.py +0 -0
  416. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/installer.py +0 -0
  417. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/installer_utils/__init__.py +0 -0
  418. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/installer_utils/installer_abc.py +0 -0
  419. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/installer_utils/installer_class.py +0 -0
  420. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/io.py +0 -0
  421. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/links.py +0 -0
  422. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/notifications.py +0 -0
  423. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/options.py +0 -0
  424. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/path_extended.py +0 -0
  425. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/path_helper.py +0 -0
  426. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/procs.py +0 -0
  427. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/scheduler.py +0 -0
  428. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/scheduling.py +0 -0
  429. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/schemas/fire_agents/fire_agents_input.py +0 -0
  430. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/schemas/installer/installer_types.py +0 -0
  431. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/schemas/layouts/layout_types.py +0 -0
  432. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/schemas/repos/repos_types.py +0 -0
  433. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/source_of_truth.py +0 -0
  434. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/ssh.py +0 -0
  435. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/terminal.py +0 -0
  436. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/upgrade_packages.py +0 -0
  437. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig/utils/ve.py +0 -0
  438. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig.egg-info/dependency_links.txt +0 -0
  439. {machineconfig-3.8 → machineconfig-3.82}/src/machineconfig.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: machineconfig
3
- Version: 3.8
3
+ Version: 3.82
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -24,6 +24,7 @@ Requires-Dist: gitpython>=3.1.44
24
24
  Requires-Dist: pyfzf>=0.3.1
25
25
  Requires-Dist: rclone-python>=0.1.23
26
26
  Requires-Dist: pyjson5>=1.6.9
27
+ Requires-Dist: typer-slim>=0.19.2
27
28
  Provides-Extra: windows
28
29
  Requires-Dist: pywin32; extra == "windows"
29
30
  Provides-Extra: docs
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
6
6
 
7
7
  [project]
8
8
  name = "machineconfig"
9
- version = "3.8"
9
+ version = "3.82"
10
10
  description = "Dotfiles management package"
11
11
  readme = "README.md"
12
12
  license = {text = "Apache 2.0"}
@@ -33,6 +33,7 @@ dependencies = [
33
33
  "pyfzf>=0.3.1",
34
34
  "rclone-python>=0.1.23",
35
35
  "pyjson5>=1.6.9",
36
+ "typer-slim>=0.19.2",
36
37
  ]
37
38
 
38
39
  [project.optional-dependencies]
@@ -50,20 +51,20 @@ docs = [
50
51
 
51
52
  [project.scripts]
52
53
  devops = "machineconfig.scripts.python.devops:args_parser"
53
- # machineconfig.scripts.python.devops_devapps_install
54
+ install = "machineconfig.scripts.python.devops_devapps_install:main_with_parser"
54
55
  choose_wezterm_theme = "machineconfig.scripts.python.choose_wezterm_theme:main"
55
56
  cloud_copy = "machineconfig.scripts.python.cloud_copy:arg_parser"
56
57
  cloud_mount = "machineconfig.scripts.python.cloud_mount:main"
57
58
  cloud_repo_sync = "machineconfig.scripts.python.cloud_repo_sync:args_parser"
58
59
  cloud_sync = "machineconfig.scripts.python.cloud_sync:args_parser"
59
60
  croshell = "machineconfig.scripts.python.croshell:build_parser"
60
- fire = "machineconfig.scripts.python.fire_jobs:main"
61
+ fire = "machineconfig.scripts.python.fire_jobs:main_from_parser"
61
62
  fire_agents = "machineconfig.scripts.python.fire_agents:main"
62
- ftpx = "machineconfig.scripts.python.ftpx:main"
63
+ ftpx = "machineconfig.scripts.python.ftpx:main_from_parser"
63
64
  initai = "machineconfig.scripts.python.ai.initai:main"
64
65
  mount_nfs = "machineconfig.scripts.python.mount_nfs:main"
65
66
  mount_nw_drive = "machineconfig.scripts.python.mount_nw_drive:main"
66
- repos = "machineconfig.scripts.python.repos:main"
67
+ repos = "machineconfig.scripts.python.repos:main_from_parser"
67
68
  start_slidev = "machineconfig.scripts.python.start_slidev:main"
68
69
  wifi_conn = "machineconfig.scripts.python.wifi_conn:main"
69
70
  kill_process = "machineconfig.utils.procs:main"
@@ -5,14 +5,12 @@ import git
5
5
  from machineconfig.utils.io import read_ini
6
6
  from machineconfig.utils.path_extended import PathExtended as PathExtended
7
7
  from machineconfig.utils.terminal import Terminal
8
- from machineconfig.utils.accessories import randstr
9
8
 
10
9
  from machineconfig.scripts.python.helpers.repo_sync_helpers import fetch_dotfiles
11
10
  from machineconfig.utils.source_of_truth import CONFIG_PATH, DEFAULTS_PATH
12
11
  from machineconfig.utils.options import choose_from_options
13
12
  from machineconfig.utils.code import get_shell_file_executing_python_script, write_shell_script_to_file
14
13
  import platform
15
- import argparse
16
14
  from typing import Optional, Literal
17
15
  from rich.console import Console
18
16
  from rich.panel import Panel
@@ -171,21 +169,17 @@ git commit -am "finished merging"
171
169
 
172
170
 
173
171
  def args_parser():
174
- console.print(Panel("🔄 Repository Synchronization Utility", title_align="left", border_style="blue"))
175
-
176
- parser = argparse.ArgumentParser(description="Secure Repo CLI.")
177
- # parser.add_argument("cmd", help="command to run", choices=["pull", "push"])
178
- parser.add_argument("path", nargs="?", type=str, help="Repository path, defaults to cwd.", default=None)
179
- # parser.add_argument("--share", help="Repository path, defaults to cwd.", action="store_true", default=False)
180
- parser.add_argument("--cloud", "-c", help="rclone cloud profile name.", default=None)
181
- parser.add_argument("--message", "-m", help="Commit Message", default=f"new message {randstr()}")
182
- # parser.add_argument("--skip_confirmation", "-s", help="Skip confirmation.", action="store_true", default=False)
183
- # parser.add_argument("--key", "-k", help="Key for encryption", default=None)
184
- parser.add_argument("--pwd", "-p", help="Password for encryption", default=None)
185
- # parser.add_argument("--no_push", "-u", help="push to reomte.", action="store_true") # default is False
186
- parser.add_argument("--action", "-a", help="Action to take if merge fails.", choices=["ask", "pushLocalMerge", "overwriteLocal", "InspectRepos", "RemoveLocalRclone"], default="ask")
187
- args = parser.parse_args()
188
- main(cloud=args.cloud, path=args.path, message=args.message, action=args.action)
172
+ # console.print(Panel("🔄 Repository Synchronization Utility", title_align="left", border_style="blue"))
173
+ # parser = argparse.ArgumentParser(description="Secure Repo CLI.")
174
+ # parser.add_argument("path", nargs="?", type=str, help="Repository path, defaults to cwd.", default=None)
175
+ # parser.add_argument("--cloud", "-c", help="rclone cloud profile name.", default=None)
176
+ # parser.add_argument("--message", "-m", help="Commit Message", default=f"new message {randstr()}")
177
+ # parser.add_argument("--pwd", "-p", help="Password for encryption", default=None)
178
+ # parser.add_argument("--action", "-a", help="Action to take if merge fails.", choices=["ask", "pushLocalMerge", "overwriteLocal", "InspectRepos", "RemoveLocalRclone"], default="ask")
179
+ # args = parser.parse_args()
180
+ # main(cloud=args.cloud, path=args.path, message=args.message, action=args.action)
181
+ import typer
182
+ typer.run(main)
189
183
 
190
184
 
191
185
  if __name__ == "__main__":
@@ -13,8 +13,7 @@ from machineconfig.utils.ve import get_ve_activate_line
13
13
  from typing import Optional
14
14
  from rich.console import Console
15
15
  from rich.panel import Panel
16
- from rich.text import Text # Added import for rich.text
17
- # from machineconfig.utils.utils2 import pprint
16
+ from rich.text import Text
18
17
 
19
18
  console = Console()
20
19
 
@@ -24,7 +23,7 @@ def add_print_header_pycode(path: str, title: str):
24
23
  try:
25
24
  from crocodile.file_management import P as PathExtended
26
25
  except ImportError:
27
- from machineconfig.utils.path_reduced import PathExtended
26
+ from machineconfig.utils.path_extended import PathExtended
28
27
  pycode = PathExtended(r'{path}').read_text(encoding="utf-8")
29
28
  pycode = pycode.split("except Exception: print(pycode)")[2]
30
29
 
@@ -3,8 +3,7 @@
3
3
  from machineconfig.utils.options import choose_from_options
4
4
 
5
5
  from platform import system
6
- from enum import Enum
7
- from typing import Optional
6
+ from typing import Optional, Literal, TypeAlias
8
7
  from rich.console import Console
9
8
  from rich.panel import Panel
10
9
 
@@ -13,36 +12,20 @@ console = Console()
13
12
  BOX_WIDTH = 150 # width for box drawing
14
13
 
15
14
 
16
- class Options(Enum):
17
- update = "🔄 UPDATE essential repos"
18
- cli_install = "⚙️ DEVAPPS install"
19
- sym_path_shell = "🔗 SYMLINKS, SHELL PROFILE, FONT, TERMINAL SETTINGS."
20
- sym_new = "🆕 SYMLINKS new"
21
- ssh_add_pubkey = "🔑 SSH add pub key to this machine"
22
- ssh_add_id = "🗝️ SSH add identity (private key) to this machine"
23
- ssh_use_pair = "🔐 SSH use key pair to connect two machines"
24
- ssh_setup = "📡 SSH setup"
25
- ssh_setup_wsl = "🐧 SSH setup wsl"
26
- backup = "💾 BACKUP"
27
- retreive = "📥 RETRIEVE"
28
- scheduler = "⏰ SCHEDULER"
15
+ Options: TypeAlias = Literal["🔄 UPDATE essential repos", "⚙️ DEVAPPS install", "🔗 SYMLINKS, SHELL PROFILE, FONT, TERMINAL SETTINGS.", "🆕 SYMLINKS new", "🔑 SSH add pub key to this machine", "🗝️ SSH add identity (private key) to this machine", "🔐 SSH use key pair to connect two machines", "📡 SSH setup", "🐧 SSH setup wsl", "💾 BACKUP", "📥 RETRIEVE", "⏰ SCHEDULER"]
29
16
 
17
+ options_list = list(Options.__args__)
30
18
 
31
- def args_parser():
32
- console.print(Panel("🛠️ DevOps Tool Suite", title_align="left", border_style="blue", width=BOX_WIDTH))
33
- import argparse
34
19
 
35
- parser = argparse.ArgumentParser()
36
- new_line = "\n\n"
37
- parser.add_argument("-w", "--which", help=f"""which option to run\nChoose one of those:\n{new_line.join([f"{item.name}: {item.value}" for item in list(Options)])}""", type=str, default=None) # , choices=[op.value for op in Options]
38
- args = parser.parse_args()
39
- main(which=args.which)
20
+ def args_parser():
21
+ import typer
22
+ typer.run(main)
40
23
 
41
24
 
42
- def main(which: Optional[str] = None):
25
+ def main(which: Optional[Options] = None):
43
26
  # PathExtended(_program_PATH).delete(sure=True, verbose=False)
44
27
  console.print(Panel("🚀 Initializing DevOps operation...", width=BOX_WIDTH, border_style="blue"))
45
- options = [op.value for op in Options]
28
+ options = options_list
46
29
  if which is None:
47
30
  try:
48
31
  choice_key = choose_from_options(msg="", options=options, header="🛠️ DEVOPS", default=options[0], multi=False)
@@ -50,51 +33,51 @@ def main(which: Optional[str] = None):
50
33
  console.print(Panel("❌ Operation cancelled by user", title_align="left", border_style="red", width=BOX_WIDTH))
51
34
  return
52
35
  else:
53
- choice_key = Options[which].value
36
+ choice_key = which
54
37
 
55
38
  console.print(Panel(f"🔧 SELECTED OPERATION\n{choice_key}", title_align="left", border_style="green", width=BOX_WIDTH))
56
39
 
57
- if choice_key == Options.update.value:
40
+ if choice_key == "🔄 UPDATE essential repos":
58
41
  console.print(Panel("🔄 Updating essential repositories...", width=BOX_WIDTH, border_style="blue"))
59
42
  import machineconfig.scripts.python.devops_update_repos as helper
60
43
 
61
44
  helper.main()
62
- elif choice_key == Options.cli_install.value:
45
+ elif choice_key == "⚙️ DEVAPPS install":
63
46
  console.print(Panel("⚙️ Installing development applications...", width=BOX_WIDTH, border_style="blue"))
64
47
  import machineconfig.scripts.python.devops_devapps_install as helper
65
48
 
66
49
  helper.main(which=None)
67
50
 
68
- elif choice_key == Options.sym_new.value:
51
+ elif choice_key == "🆕 SYMLINKS new":
69
52
  console.print(Panel("🔄 Creating new symlinks...", width=BOX_WIDTH, border_style="blue"))
70
53
  import machineconfig.jobs.python.python_ve_symlink as helper
71
54
 
72
55
  helper.main()
73
56
 
74
- elif choice_key == Options.sym_path_shell.value:
57
+ elif choice_key == "🔗 SYMLINKS, SHELL PROFILE, FONT, TERMINAL SETTINGS.":
75
58
  console.print(Panel("🔗 Setting up symlinks, PATH, and shell profile...", width=BOX_WIDTH, border_style="blue"))
76
59
  import machineconfig.profile.create as helper
77
60
 
78
61
  helper.main()
79
62
  "echo '✅ done with symlinks'"
80
63
 
81
- elif choice_key == Options.ssh_add_pubkey.value:
64
+ elif choice_key == "🔑 SSH add pub key to this machine":
82
65
  console.print(Panel("🔑 Adding public SSH key to this machine...", width=BOX_WIDTH, border_style="blue"))
83
66
  import machineconfig.scripts.python.devops_add_ssh_key as helper
84
67
 
85
68
  helper.main()
86
69
 
87
- elif choice_key == Options.ssh_use_pair.value:
70
+ elif choice_key == "🔐 SSH use key pair to connect two machines":
88
71
  console.print(Panel("❌ ERROR: Not Implemented\nSSH key pair connection feature is not yet implemented", title_align="left", border_style="red", width=BOX_WIDTH))
89
72
  raise NotImplementedError
90
73
 
91
- elif choice_key == Options.ssh_add_id.value: # so that you can SSH directly withuot pointing to identity key.
74
+ elif choice_key == "🗝️ SSH add identity (private key) to this machine": # so that you can SSH directly withuot pointing to identity key.
92
75
  console.print(Panel("🗝️ Adding SSH identity (private key) to this machine...", width=BOX_WIDTH, border_style="blue"))
93
76
  import machineconfig.scripts.python.devops_add_identity as helper
94
77
 
95
78
  helper.main()
96
79
 
97
- elif choice_key == Options.ssh_setup.value:
80
+ elif choice_key == "📡 SSH setup":
98
81
  console.print(Panel("📡 Setting up SSH...", width=BOX_WIDTH, border_style="blue"))
99
82
  _program_windows = """Invoke-WebRequest https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/openssh_all.ps1 | Invoke-Expression # https://github.com/thisismygitrepo.keys"""
100
83
  _program_linux = """curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/openssh_all.sh | sudo bash # https://github.com/thisismygitrepo.keys"""
@@ -103,23 +86,23 @@ def main(which: Optional[str] = None):
103
86
 
104
87
  subprocess.run(_program_linux if system() == "Linux" else _program_windows, shell=True, check=True)
105
88
 
106
- elif choice_key == Options.ssh_setup_wsl.value:
89
+ elif choice_key == "🐧 SSH setup wsl":
107
90
  console.print(Panel("🐧 Setting up SSH for WSL...", width=BOX_WIDTH, border_style="blue"))
108
91
  """curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/openssh_wsl.sh | sudo bash"""
109
92
 
110
- elif choice_key == Options.backup.value:
93
+ elif choice_key == "💾 BACKUP":
111
94
  console.print(Panel("💾 Creating backup...", width=BOX_WIDTH, border_style="blue"))
112
95
  from machineconfig.scripts.python.devops_backup_retrieve import main_backup_retrieve
113
96
 
114
97
  main_backup_retrieve(direction="BACKUP")
115
98
 
116
- elif choice_key == Options.retreive.value:
99
+ elif choice_key == "📥 RETRIEVE":
117
100
  console.print(Panel("📥 Retrieving backup...", width=BOX_WIDTH, border_style="blue"))
118
101
  from machineconfig.scripts.python.devops_backup_retrieve import main_backup_retrieve
119
102
 
120
103
  main_backup_retrieve(direction="RETRIEVE")
121
104
 
122
- elif choice_key == Options.scheduler.value:
105
+ elif choice_key == "⏰ SCHEDULER":
123
106
  console.print(Panel("⏰ Setting up scheduler...", width=BOX_WIDTH, border_style="blue"))
124
107
  # from machineconfig.scripts.python.scheduler import main as helper
125
108
  # helper()
@@ -1,18 +1,25 @@
1
1
  """Devops Devapps Install"""
2
2
 
3
3
  # import subprocess
4
+ import typer
4
5
  from rich.progress import Progress, SpinnerColumn, TextColumn
5
6
  from machineconfig.utils.source_of_truth import LIBRARY_ROOT
6
7
  from machineconfig.utils.options import choose_from_options
7
8
  from machineconfig.utils.installer import get_installers, install_all
8
9
  from platform import system
9
- from typing import Any, Optional, Literal, TypeAlias, get_args
10
-
10
+ from typing import Any, Optional, Literal, TypeAlias, get_args, Annotated
11
11
 
12
12
  WHICH_CAT: TypeAlias = Literal["AllEssentials", "EssentialsAndOthers", "SystemInstallers", "PrecheckedCloudInstaller"]
13
13
 
14
14
 
15
- def main(which: Optional[WHICH_CAT | str]) -> None:
15
+ def main_with_parser():
16
+ import typer
17
+ app = typer.Typer()
18
+ app.command()(main)
19
+ app()
20
+
21
+
22
+ def main(which: Annotated[Optional[str], typer.Argument(help=f"Choose a category or program to install, {list(get_args(WHICH_CAT))} or <program_name>")]) -> None:
16
23
  if which is not None and which in get_args(WHICH_CAT): # install by category
17
24
  return get_programs_by_category(program_name=which) # type: ignore
18
25
 
@@ -123,7 +130,7 @@ def get_programs_by_category(program_name: WHICH_CAT):
123
130
  if sub_program.startswith("#winget"):
124
131
  sub_program = sub_program[1:]
125
132
  program += "\n" + sub_program
126
-
133
+ # case "CHOOSE": raise NotImplementedError("CHOOSE is not implemented yet.")
127
134
  # case "OtherDevApps":
128
135
  # installers = get_installers(dev=True, system=system())
129
136
  # options__: list[str] = [x.get_description() for x in tqdm(installers, desc="Checking installed programs")]
@@ -17,11 +17,12 @@ from machineconfig.utils.path_helper import match_file_name, sanitize_path
17
17
 
18
18
  from machineconfig.utils.path_extended import PathExtended as PathExtended
19
19
  from machineconfig.utils.accessories import get_repo_root, randstr
20
- from machineconfig.scripts.python.fire_jobs_args_helper import get_args, FireJobArgs, extract_kwargs
20
+ from machineconfig.scripts.python.fire_jobs_args_helper import FireJobArgs, extract_kwargs
21
21
  import platform
22
- from typing import Optional
22
+ from typing import Optional, Annotated
23
23
  from pathlib import Path
24
24
  import tomllib
25
+ import typer
25
26
  # import os
26
27
 
27
28
 
@@ -328,12 +329,64 @@ python -m machineconfig.cluster.templates.cli_click --file {choice_file} """
328
329
  subprocess.run(command, shell=True, check=True)
329
330
 
330
331
 
331
- def main():
332
- args = get_args()
332
+ def main(
333
+ path: Annotated[str, typer.Argument(help="The directory containing the jobs")] = ".",
334
+ function: Annotated[Optional[str], typer.Argument(help="Function to run")] = None,
335
+ ve: Annotated[str, typer.Option("--ve", "-v", help="Virtual environment name")] = "",
336
+ cmd: Annotated[bool, typer.Option("--cmd", "-B", help="Create a cmd fire command to launch the job asynchronously")] = False,
337
+ interactive: Annotated[bool, typer.Option("--interactive", "-i", help="Whether to run the job interactively using IPython")] = False,
338
+ debug: Annotated[bool, typer.Option("--debug", "-d", help="Enable debug mode")] = False,
339
+ choose_function: Annotated[bool, typer.Option("--choose_function", "-c", help="Choose function interactively")] = False,
340
+ loop: Annotated[bool, typer.Option("--loop", "-l", help="Infinite recursion (runs again after completion/interruption)")] = False,
341
+ jupyter: Annotated[bool, typer.Option("--jupyter", "-j", help="Open in a jupyter notebook")] = False,
342
+ submit_to_cloud: Annotated[bool, typer.Option("--submit_to_cloud", "-C", help="Submit to cloud compute")] = False,
343
+ remote: Annotated[bool, typer.Option("--remote", "-r", help="Launch on a remote machine")] = False,
344
+ module: Annotated[bool, typer.Option("--module", "-m", help="Launch the main file")] = False,
345
+ streamlit: Annotated[bool, typer.Option("--streamlit", "-S", help="Run as streamlit app")] = False,
346
+ environment: Annotated[str, typer.Option("--environment", "-E", help="Choose ip, localhost, hostname or arbitrary url")] = "",
347
+ holdDirectory: Annotated[bool, typer.Option("--holdDirectory", "-D", help="Hold current directory and avoid cd'ing to the script directory")] = False,
348
+ PathExport: Annotated[bool, typer.Option("--PathExport", "-P", help="Augment the PYTHONPATH with repo root")] = False,
349
+ git_pull: Annotated[bool, typer.Option("--git_pull", "-g", help="Start by pulling the git repo")] = False,
350
+ optimized: Annotated[bool, typer.Option("--optimized", "-O", help="Run the optimized version of the function")] = False,
351
+ Nprocess: Annotated[int, typer.Option("--Nprocess", "-p", help="Number of processes to use")] = 1,
352
+ zellij_tab: Annotated[Optional[str], typer.Option("--zellij_tab", "-z", help="Open in a new zellij tab")] = None,
353
+ watch: Annotated[bool, typer.Option("--watch", "-w", help="Watch the file for changes")] = False,
354
+ kw: Annotated[Optional[list[str]], typer.Option("--kw", help="Keyword arguments to pass to the function in the form of k1 v1 k2 v2 ... (meaning k1=v1, k2=v2, etc)")] = None,
355
+ layout: Annotated[bool, typer.Option("--layout", "-L", help="Use layout configuration (Zellij Or WindowsTerminal)")] = False,
356
+ ) -> None:
357
+ """Main function to process fire jobs arguments."""
358
+ args = FireJobArgs(
359
+ path=path,
360
+ function=function,
361
+ ve=ve,
362
+ cmd=cmd,
363
+ interactive=interactive,
364
+ debug=debug,
365
+ choose_function=choose_function,
366
+ loop=loop,
367
+ jupyter=jupyter,
368
+ submit_to_cloud=submit_to_cloud,
369
+ remote=remote,
370
+ module=module,
371
+ streamlit=streamlit,
372
+ environment=environment,
373
+ holdDirectory=holdDirectory,
374
+ PathExport=PathExport,
375
+ git_pull=git_pull,
376
+ optimized=optimized,
377
+ Nprocess=Nprocess,
378
+ zellij_tab=zellij_tab,
379
+ watch=watch,
380
+ kw=kw,
381
+ layout=layout,
382
+ )
333
383
  route(args)
334
384
 
335
385
 
386
+ def main_from_parser():
387
+ typer.run(main)
388
+
389
+
336
390
  if __name__ == "__main__":
337
391
  # options, func_args = parse_pyfile(file_path="C:/Users/aalsaf01/code/machineconfig/myresources/crocodile/core.py")
338
- args = get_args()
339
- route(args)
392
+ pass
@@ -0,0 +1,48 @@
1
+ from dataclasses import dataclass
2
+ from typing import Optional, Annotated
3
+ import typer
4
+
5
+
6
+ @dataclass
7
+ class FireJobArgs:
8
+ """Type-safe dataclass for fire_jobs command line arguments."""
9
+
10
+ path: str = "."
11
+ function: Optional[str] = None
12
+ ve: str = ""
13
+ cmd: bool = False
14
+ interactive: bool = False
15
+ debug: bool = False
16
+ choose_function: bool = False
17
+ loop: bool = False
18
+ jupyter: bool = False
19
+ submit_to_cloud: bool = False
20
+ remote: bool = False
21
+ module: bool = False
22
+ streamlit: bool = False
23
+ environment: str = ""
24
+ holdDirectory: bool = False
25
+ PathExport: bool = False
26
+ git_pull: bool = False
27
+ optimized: bool = False
28
+ Nprocess: int = 1
29
+ zellij_tab: Optional[str] = None
30
+ watch: bool = False
31
+ kw: Optional[list[str]] = None
32
+ layout: bool = False
33
+
34
+
35
+ def extract_kwargs(args: FireJobArgs) -> dict[str, object]:
36
+ str2obj = {"True": True, "False": False, "None": None}
37
+ if args.kw is not None:
38
+ assert len(args.kw) % 2 == 0, f"args.kw must be a list of even length. Got {len(args.kw)}"
39
+ kwargs = dict(zip(args.kw[::2], args.kw[1::2]))
40
+ kwargs: dict[str, object]
41
+ for key, value in kwargs.items():
42
+ if value in str2obj:
43
+ kwargs[key] = str2obj[str(value)]
44
+ if args.function is None: # if user passed arguments and forgot to pass function, then assume they want to run the main function.
45
+ args.choose_function = True
46
+ else:
47
+ kwargs = {}
48
+ return kwargs
@@ -6,39 +6,40 @@ Currently, the only way to work around this is to predifine the host in ~/.ssh/c
6
6
 
7
7
  """
8
8
 
9
- import argparse
9
+ import typer
10
+ from typing_extensions import Annotated
10
11
  from machineconfig.utils.ssh import SSH
11
12
  from machineconfig.utils.path_extended import PathExtended as PathExtended
12
13
  from machineconfig.scripts.python.helpers.helpers2 import ES
13
14
  from machineconfig.utils.accessories import pprint
14
15
 
15
16
 
16
- def main():
17
+ def main(
18
+ source: Annotated[str, typer.Argument(help="Source path (machine:path)")],
19
+ target: Annotated[str, typer.Argument(help="Target path (machine:path)")],
20
+ recursive: Annotated[bool, typer.Option("--recursive", "-r", help="Send recursively.")] = False,
21
+ zipFirst: Annotated[bool, typer.Option("--zipFirst", "-z", help="Zip before sending.")] = False,
22
+ cloud: Annotated[bool, typer.Option("--cloud", "-c", help="Transfer through the cloud.")] = False,
23
+ ) -> None:
17
24
  print("""
18
25
  ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
19
26
  ┃ 🚀 FTP File Transfer
20
27
  ┃ 📋 Starting transfer process...
21
28
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━""")
22
- parser = argparse.ArgumentParser(description="FTP client")
23
-
24
- parser.add_argument("source", help="source path (machine:path)")
25
- parser.add_argument("target", help="target path (machine:path)")
26
-
27
- # FLAGS
28
- parser.add_argument("--recursive", "-r", help="Send recursively.", action="store_true") # default is False
29
- parser.add_argument("--zipFirst", "-z", help="Zip before sending.", action="store_true") # default is False
30
- parser.add_argument("--cloud", "-c", help="Transfer through the cloud.", action="store_true") # default is False
31
-
32
- args = parser.parse_args()
33
-
34
- if ":" in args.source and (args.source[1] != ":" if len(args.source) > 1 else True): # avoid the case of "C:/":
29
+
30
+ # Initialize variables
31
+ resolved_source: str | None = None
32
+ resolved_target: str | None = None
33
+ machine: str = ""
34
+
35
+ if ":" in source and (source[1] != ":" if len(source) > 1 else True): # avoid the case of "C:/":
35
36
  source_is_remote = True
36
37
 
37
38
  # calculating source:
38
- source_parts = args.source.split(":")
39
+ source_parts = source.split(":")
39
40
  machine = source_parts[0]
40
41
  if len(source_parts) > 1 and source_parts[1] == ES: # the source path is to be inferred from target.
41
- if args.target == ES:
42
+ if target == ES:
42
43
  raise ValueError(f"""
43
44
  ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
44
45
  ┃ ❌ Configuration Error
@@ -46,21 +47,22 @@ def main():
46
47
  ┃ This creates a cyclical inference dependency
47
48
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━""")
48
49
  else:
49
- target = PathExtended(args.target).expanduser().absolute()
50
- source = target.collapseuser().as_posix()
50
+ target_path_obj = PathExtended(target).expanduser().absolute()
51
+ resolved_source = target_path_obj.collapseuser().as_posix()
52
+ resolved_target = target
51
53
  else:
52
- source = ":".join(args.source.split(":")[1:])
53
- if args.target == ES:
54
- target = None
54
+ resolved_source = ":".join(source.split(":")[1:])
55
+ if target == ES:
56
+ resolved_target = None
55
57
  else:
56
- target = PathExtended(args.target).expanduser().absolute().as_posix()
58
+ resolved_target = PathExtended(target).expanduser().absolute().as_posix()
57
59
 
58
- elif ":" in args.target and (args.target[1] != ":" if len(args.target) > 1 else True): # avoid the case of "C:/":
60
+ elif ":" in target and (target[1] != ":" if len(target) > 1 else True): # avoid the case of "C:/":
59
61
  source_is_remote = False
60
- target_parts = args.target.split(":")
62
+ target_parts = target.split(":")
61
63
  machine = target_parts[0]
62
64
  if len(target_parts) > 1 and target_parts[1] == ES:
63
- if args.source == ES:
65
+ if source == ES:
64
66
  raise ValueError(f"""
65
67
  ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
66
68
  ┃ ❌ Configuration Error
@@ -68,14 +70,14 @@ def main():
68
70
  ┃ This creates a cyclical inference dependency
69
71
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━""")
70
72
  else:
71
- source = args.source
72
- target = None
73
+ resolved_source = source
74
+ resolved_target = None
73
75
  else:
74
- target = ":".join(args.target.split(":")[1:])
75
- if args.source == ES:
76
- source = None
76
+ resolved_target = ":".join(target.split(":")[1:])
77
+ if source == ES:
78
+ resolved_source = None
77
79
  else:
78
- source = PathExtended(args.source).expanduser().absolute()
80
+ resolved_source = PathExtended(source).expanduser().absolute().as_posix()
79
81
 
80
82
  else:
81
83
  raise ValueError("""
@@ -85,7 +87,7 @@ def main():
85
87
  ┃ Format should be: machine:path
86
88
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━""")
87
89
 
88
- pprint({"source": str(source), "target": str(target), "machine": machine}, "CLI Resolution")
90
+ pprint({"source": str(resolved_source), "target": str(resolved_target), "machine": machine}, "CLI Resolution")
89
91
 
90
92
  from paramiko.ssh_exception import AuthenticationException # type: ignore
91
93
 
@@ -105,43 +107,43 @@ def main():
105
107
  pwd = getpass.getpass()
106
108
  ssh = SSH(rf"{machine}", pwd=pwd)
107
109
 
108
- if args.cloud:
110
+ if cloud:
109
111
  print("""
110
112
  ┌────────────────────────────────────────────────────────────────
111
113
  │ ☁️ Cloud Transfer Mode
112
114
  │ Uploading from remote to cloud...
113
115
  └────────────────────────────────────────────────────────────────""")
114
- ssh.run(f"cloud_copy {source} :^", desc="Uploading from remote to the cloud.").print()
116
+ ssh.run(f"cloud_copy {resolved_source} :^", desc="Uploading from remote to the cloud.").print()
115
117
  print("""
116
118
  ┌────────────────────────────────────────────────────────────────
117
119
  │ ⬇️ Cloud Transfer Mode
118
120
  │ Downloading from cloud to local...
119
121
  └────────────────────────────────────────────────────────────────""")
120
- ssh.run_locally(f"cloud_copy :^ {target}").print()
121
- received_file = PathExtended(target) # type: ignore
122
+ ssh.run_locally(f"cloud_copy :^ {resolved_target}").print()
123
+ received_file = PathExtended(resolved_target) # type: ignore
122
124
  else:
123
125
  if source_is_remote:
124
- assert source is not None, """
126
+ assert resolved_source is not None, """
125
127
  ❌ Path Error: Source must be a remote path (machine:path)"""
126
128
  print(f"""
127
129
  ┌────────────────────────────────────────────────────────────────
128
130
  │ 📥 Transfer Mode: Remote → Local
129
- │ Source: {source}
130
- │ Target: {target}
131
- │ Options: {"ZIP compression" if args.zipFirst else "No compression"}, {"Recursive" if args.recursive else "Non-recursive"}
131
+ │ Source: {resolved_source}
132
+ │ Target: {resolved_target}
133
+ │ Options: {"ZIP compression" if zipFirst else "No compression"}, {"Recursive" if recursive else "Non-recursive"}
132
134
  └────────────────────────────────────────────────────────────────""")
133
- received_file = ssh.copy_to_here(source=source, target=target, z=args.zipFirst, r=args.recursive)
135
+ received_file = ssh.copy_to_here(source=resolved_source, target=resolved_target, z=zipFirst, r=recursive)
134
136
  else:
135
- assert source is not None, """
137
+ assert resolved_source is not None, """
136
138
  ❌ Path Error: Target must be a remote path (machine:path)"""
137
139
  print(f"""
138
140
  ┌────────────────────────────────────────────────────────────────
139
141
  │ 📤 Transfer Mode: Local → Remote
140
- │ Source: {source}
141
- │ Target: {target}
142
- │ Options: {"ZIP compression" if args.zipFirst else "No compression"}, {"Recursive" if args.recursive else "Non-recursive"}
142
+ │ Source: {resolved_source}
143
+ │ Target: {resolved_target}
144
+ │ Options: {"ZIP compression" if zipFirst else "No compression"}, {"Recursive" if recursive else "Non-recursive"}
143
145
  └────────────────────────────────────────────────────────────────""")
144
- received_file = ssh.copy_from_here(source=source, target=target, z=args.zipFirst, r=args.recursive)
146
+ received_file = ssh.copy_from_here(source=resolved_source, target=resolved_target, z=zipFirst, r=recursive)
145
147
 
146
148
  if source_is_remote and isinstance(received_file, PathExtended):
147
149
  print(f"""
@@ -157,5 +159,10 @@ def main():
157
159
  ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━""")
158
160
 
159
161
 
162
+ def main_from_parser() -> None:
163
+ """Entry point function that uses typer to parse arguments and call main."""
164
+ typer.run(main)
165
+
166
+
160
167
  if __name__ == "__main__":
161
- main()
168
+ main_from_parser()