machineconfig 1.97__tar.gz → 2.1__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 (502) hide show
  1. {machineconfig-1.97/src/machineconfig.egg-info → machineconfig-2.1}/PKG-INFO +15 -9
  2. {machineconfig-1.97 → machineconfig-2.1}/README.md +1 -1
  3. {machineconfig-1.97 → machineconfig-2.1}/pyproject.toml +33 -10
  4. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/cloud_manager.py +22 -29
  5. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/data_transfer.py +2 -3
  6. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/distribute.py +0 -2
  7. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/file_manager.py +4 -5
  8. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/job_params.py +1 -4
  9. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/loader_runner.py +8 -11
  10. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/remote_machine.py +4 -5
  11. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/script_execution.py +2 -2
  12. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/script_notify_upon_completion.py +0 -1
  13. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/archive/create_zellij_template.py +4 -6
  14. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/archive/session_managers.py +0 -1
  15. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/enhanced_command_runner.py +35 -75
  16. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_local.py +113 -185
  17. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +127 -197
  18. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_remote.py +60 -67
  19. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +110 -149
  20. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +61 -64
  21. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +72 -172
  22. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +27 -60
  23. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +58 -137
  24. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +46 -74
  25. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_local.py +91 -147
  26. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +165 -190
  27. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +51 -58
  28. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +40 -46
  29. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +19 -17
  30. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +30 -31
  31. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +64 -134
  32. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +7 -11
  33. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +27 -55
  34. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +14 -13
  35. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/cli_click.py +0 -1
  36. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/cli_gooey.py +0 -2
  37. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/cli_trogon.py +0 -1
  38. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/run_cloud.py +0 -1
  39. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/run_cluster.py +0 -1
  40. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/run_remote.py +0 -1
  41. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/utils.py +27 -11
  42. machineconfig-2.1/src/machineconfig/jobs/__pycache__/__init__.cpython-313.pyc +0 -0
  43. machineconfig-2.1/src/machineconfig/jobs/linux/msc/cli_agents.sh +16 -0
  44. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/check_installations.py +9 -9
  45. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/create_bootable_media.py +0 -2
  46. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/python_cargo_build_share.py +2 -2
  47. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/python_ve_symlink.py +9 -11
  48. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/tasks.py +0 -1
  49. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/vscode/api.py +5 -5
  50. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/vscode/link_ve.py +20 -21
  51. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/vscode/select_interpreter.py +28 -29
  52. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/vscode/sync_code.py +14 -18
  53. machineconfig-2.1/src/machineconfig/jobs/python_custom_installers/__pycache__/__init__.cpython-313.pyc +0 -0
  54. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/archive/ngrok.py +15 -15
  55. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/aider.py +10 -18
  56. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/alacritty.py +12 -21
  57. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/brave.py +13 -22
  58. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/bypass_paywall.py +13 -20
  59. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/code.py +17 -24
  60. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/cursor.py +10 -21
  61. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/docker_desktop.py +12 -11
  62. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/espanso.py +19 -23
  63. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/goes.py +9 -16
  64. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/lvim.py +13 -21
  65. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/nerdfont.py +15 -22
  66. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/redis.py +15 -23
  67. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/wezterm.py +15 -22
  68. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/winget.py +32 -50
  69. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/docker.py +15 -24
  70. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/gh.py +18 -26
  71. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/hx.py +33 -17
  72. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/warp-cli.py +15 -23
  73. machineconfig-2.1/src/machineconfig/jobs/python_generic_installers/__pycache__/__init__.cpython-313.pyc +0 -0
  74. machineconfig-2.1/src/machineconfig/jobs/python_generic_installers/config.json +414 -0
  75. machineconfig-2.1/src/machineconfig/jobs/python_linux_installers/__pycache__/__init__.cpython-313.pyc +0 -0
  76. machineconfig-2.1/src/machineconfig/jobs/python_windows_installers/dev/config.json +3 -0
  77. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +1 -1
  78. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/windows/start_terminal.ps1 +1 -1
  79. machineconfig-2.1/src/machineconfig/logger.py +50 -0
  80. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/create.py +50 -36
  81. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/create_hardlinks.py +33 -26
  82. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/shell.py +87 -60
  83. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/__pycache__/__init__.cpython-313.pyc +0 -0
  84. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/cloud/init.sh +2 -2
  85. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/checkout_versions +1 -1
  86. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/choose_wezterm_theme +1 -1
  87. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/cloud_copy +1 -1
  88. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/cloud_manager +1 -1
  89. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/cloud_mount +1 -1
  90. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/cloud_repo_sync +1 -1
  91. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/cloud_sync +1 -1
  92. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/croshell +1 -1
  93. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/devops +3 -5
  94. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fire +2 -1
  95. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fire_agents +3 -3
  96. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/ftpx +1 -1
  97. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/gh_models +1 -1
  98. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/kill_process +1 -1
  99. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/mcinit +2 -2
  100. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/repos +1 -1
  101. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/scheduler +1 -1
  102. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/start_slidev +1 -1
  103. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/start_terminals +1 -1
  104. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/url2md +1 -1
  105. machineconfig-2.1/src/machineconfig/scripts/linux/warp-cli.sh +122 -0
  106. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/wifi_conn +1 -1
  107. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/__init__.cpython-313.pyc +0 -0
  108. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/croshell.cpython-313.pyc +0 -0
  109. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/devops.cpython-313.pyc +0 -0
  110. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/devops_devapps_install.cpython-313.pyc +0 -0
  111. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/devops_update_repos.cpython-313.pyc +0 -0
  112. machineconfig-2.1/src/machineconfig/scripts/python/__pycache__/fire_jobs.cpython-313.pyc +0 -0
  113. machineconfig-2.1/src/machineconfig/scripts/python/ai/__pycache__/__init__.cpython-313.pyc +0 -0
  114. machineconfig-2.1/src/machineconfig/scripts/python/ai/__pycache__/generate_files.cpython-313.pyc +0 -0
  115. machineconfig-2.1/src/machineconfig/scripts/python/ai/__pycache__/mcinit.cpython-313.pyc +0 -0
  116. machineconfig-2.1/src/machineconfig/scripts/python/ai/chatmodes/Thinking-Beast-Mode.chatmode.md +337 -0
  117. machineconfig-2.1/src/machineconfig/scripts/python/ai/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +644 -0
  118. machineconfig-2.1/src/machineconfig/scripts/python/ai/chatmodes/deepResearch.chatmode.md +81 -0
  119. machineconfig-2.1/src/machineconfig/scripts/python/ai/configs/.gemini/settings.json +81 -0
  120. machineconfig-2.1/src/machineconfig/scripts/python/ai/generate_files.py +84 -0
  121. machineconfig-2.1/src/machineconfig/scripts/python/ai/instructions/python/dev.instructions.md +45 -0
  122. machineconfig-2.1/src/machineconfig/scripts/python/ai/mcinit.py +107 -0
  123. machineconfig-2.1/src/machineconfig/scripts/python/ai/prompts/allLintersAndTypeCheckers.prompt.md +5 -0
  124. machineconfig-2.1/src/machineconfig/scripts/python/ai/prompts/research-report-skeleton.prompt.md +38 -0
  125. machineconfig-2.1/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +52 -0
  126. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/archive/tmate_conn.py +5 -5
  127. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/archive/tmate_start.py +3 -3
  128. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/choose_wezterm_theme.py +2 -2
  129. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/cloud_copy.py +20 -19
  130. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/cloud_mount.py +10 -8
  131. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/cloud_repo_sync.py +15 -15
  132. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/cloud_sync.py +1 -1
  133. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/croshell.py +18 -16
  134. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/devops.py +6 -6
  135. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/devops_add_identity.py +9 -7
  136. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/devops_add_ssh_key.py +19 -19
  137. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/devops_backup_retrieve.py +14 -14
  138. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/devops_devapps_install.py +3 -3
  139. machineconfig-2.1/src/machineconfig/scripts/python/devops_update_repos.py +178 -0
  140. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/dotfile.py +3 -3
  141. machineconfig-2.1/src/machineconfig/scripts/python/fire_agents.py +230 -0
  142. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/fire_jobs.py +20 -21
  143. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/ftpx.py +4 -3
  144. machineconfig-2.1/src/machineconfig/scripts/python/gh_models.py +104 -0
  145. machineconfig-2.1/src/machineconfig/scripts/python/helpers/__pycache__/__init__.cpython-313.pyc +0 -0
  146. machineconfig-2.1/src/machineconfig/scripts/python/helpers/__pycache__/helpers4.cpython-313.pyc +0 -0
  147. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/helpers/cloud_helpers.py +3 -3
  148. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/helpers/helpers2.py +3 -3
  149. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/helpers/helpers4.py +8 -7
  150. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/helpers/helpers5.py +7 -7
  151. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/helpers/repo_sync_helpers.py +2 -2
  152. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/mount_nfs.py +4 -3
  153. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/mount_nw_drive.py +4 -4
  154. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/mount_ssh.py +4 -3
  155. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/repos.py +9 -9
  156. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/scheduler.py +1 -1
  157. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/start_slidev.py +9 -8
  158. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/start_terminals.py +1 -1
  159. machineconfig-2.1/src/machineconfig/scripts/python/viewer.py +54 -0
  160. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/wifi_conn.py +65 -66
  161. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/wsl_windows_transfer.py +2 -2
  162. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/checkout_version.ps1 +1 -3
  163. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/choose_wezterm_theme.ps1 +1 -3
  164. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/cloud_copy.ps1 +2 -6
  165. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/cloud_manager.ps1 +1 -1
  166. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/cloud_repo_sync.ps1 +1 -2
  167. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/cloud_sync.ps1 +2 -2
  168. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/croshell.ps1 +2 -2
  169. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/devops.ps1 +1 -4
  170. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/dotfile.ps1 +1 -3
  171. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/fire.ps1 +1 -1
  172. machineconfig-2.1/src/machineconfig/scripts/windows/ftpx.ps1 +5 -0
  173. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/gpt.ps1 +1 -1
  174. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/kill_process.ps1 +1 -2
  175. machineconfig-2.1/src/machineconfig/scripts/windows/mcinit.ps1 +4 -0
  176. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/mount_nfs.ps1 +1 -1
  177. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/mount_ssh.ps1 +1 -1
  178. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/pomodoro.ps1 +1 -1
  179. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/py2exe.ps1 +1 -3
  180. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/repos.ps1 +1 -1
  181. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/scheduler.ps1 +1 -1
  182. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/snapshot.ps1 +2 -2
  183. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/start_slidev.ps1 +1 -1
  184. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/start_terminals.ps1 +1 -1
  185. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/wifi_conn.ps1 +1 -1
  186. machineconfig-2.1/src/machineconfig/scripts/windows/wsl_windows_transfer.ps1 +5 -0
  187. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/lfrc +1 -1
  188. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/linters/.ruff.toml +2 -2
  189. machineconfig-2.1/src/machineconfig/settings/linters/.ruff_cache/.gitignore +2 -0
  190. machineconfig-2.1/src/machineconfig/settings/linters/.ruff_cache/CACHEDIR.TAG +1 -0
  191. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +1 -1
  192. machineconfig-2.1/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +84 -0
  193. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/wt/settings.json +8 -8
  194. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/svim/linux/init.toml +1 -1
  195. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/svim/windows/init.toml +1 -1
  196. machineconfig-2.1/src/machineconfig/setup_linux/web_shortcuts/croshell.sh +6 -0
  197. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +6 -6
  198. machineconfig-2.1/src/machineconfig/setup_linux/web_shortcuts/tmp.sh +2 -0
  199. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/web_shortcuts/all.ps1 +2 -2
  200. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +1 -1
  201. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/web_shortcuts/croshell.ps1 +1 -1
  202. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +5 -5
  203. machineconfig-2.1/src/machineconfig/setup_windows/wt_and_pwsh/install_fonts.ps1 +63 -0
  204. machineconfig-2.1/src/machineconfig/setup_windows/wt_and_pwsh/set_pwsh_theme.py +108 -0
  205. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +52 -42
  206. machineconfig-2.1/src/machineconfig/utils/__init__.py +0 -0
  207. machineconfig-2.1/src/machineconfig/utils/ai/__init__.py +0 -0
  208. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/ai/browser_user_wrapper.py +5 -5
  209. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/ai/generate_file_checklist.py +19 -22
  210. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/ai/url2md.py +5 -3
  211. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +5 -4
  212. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/cloud/onedrive/transaction.py +192 -227
  213. machineconfig-2.1/src/machineconfig/utils/code.py +113 -0
  214. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/installer.py +77 -85
  215. machineconfig-2.1/src/machineconfig/utils/installer_utils/__init__.py +0 -0
  216. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/installer_utils/installer_abc.py +29 -17
  217. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/installer_utils/installer_class.py +188 -83
  218. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/io_save.py +3 -15
  219. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/links.py +22 -11
  220. machineconfig-2.1/src/machineconfig/utils/notifications.py +197 -0
  221. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/options.py +38 -25
  222. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/path.py +18 -6
  223. machineconfig-2.1/src/machineconfig/utils/path_reduced.py +929 -0
  224. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/procs.py +69 -63
  225. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/scheduling.py +11 -13
  226. machineconfig-2.1/src/machineconfig/utils/ssh.py +351 -0
  227. machineconfig-2.1/src/machineconfig/utils/terminal.py +225 -0
  228. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/utils.py +13 -12
  229. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/utils2.py +43 -10
  230. machineconfig-2.1/src/machineconfig/utils/utils5.py +280 -0
  231. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/utils/ve.py +11 -6
  232. {machineconfig-1.97 → machineconfig-2.1/src/machineconfig.egg-info}/PKG-INFO +15 -9
  233. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig.egg-info/SOURCES.txt +33 -36
  234. machineconfig-2.1/src/machineconfig.egg-info/requires.txt +26 -0
  235. machineconfig-1.97/src/machineconfig/cluster/self_ssh.py +0 -57
  236. machineconfig-1.97/src/machineconfig/jobs/__pycache__/__init__.cpython-311.pyc +0 -0
  237. machineconfig-1.97/src/machineconfig/jobs/python/__pycache__/__init__.cpython-311.pyc +0 -0
  238. machineconfig-1.97/src/machineconfig/jobs/python/archive/python_tools.txt +0 -12
  239. machineconfig-1.97/src/machineconfig/jobs/python/vscode/__pycache__/select_interpreter.cpython-311.pyc +0 -0
  240. machineconfig-1.97/src/machineconfig/jobs/python_custom_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  241. machineconfig-1.97/src/machineconfig/jobs/python_generic_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  242. machineconfig-1.97/src/machineconfig/jobs/python_generic_installers/config.json +0 -391
  243. machineconfig-1.97/src/machineconfig/jobs/python_generic_installers/update.py +0 -3
  244. machineconfig-1.97/src/machineconfig/jobs/python_linux_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  245. machineconfig-1.97/src/machineconfig/jobs/python_windows_installers/dev/config.json +0 -3
  246. machineconfig-1.97/src/machineconfig/profile/__pycache__/__init__.cpython-311.pyc +0 -0
  247. machineconfig-1.97/src/machineconfig/profile/__pycache__/create.cpython-311.pyc +0 -0
  248. machineconfig-1.97/src/machineconfig/profile/__pycache__/shell.cpython-311.pyc +0 -0
  249. machineconfig-1.97/src/machineconfig/scripts/__pycache__/__init__.cpython-311.pyc +0 -0
  250. machineconfig-1.97/src/machineconfig/scripts/linux/activate_ve +0 -87
  251. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/__init__.cpython-311.pyc +0 -0
  252. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/__init__.cpython-313.pyc +0 -0
  253. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/cloud_copy.cpython-311.pyc +0 -0
  254. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/cloud_mount.cpython-311.pyc +0 -0
  255. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/cloud_sync.cpython-311.pyc +0 -0
  256. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/croshell.cpython-311.pyc +0 -0
  257. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/devops.cpython-311.pyc +0 -0
  258. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/devops_backup_retrieve.cpython-311.pyc +0 -0
  259. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/devops_devapps_install.cpython-311.pyc +0 -0
  260. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/devops_update_repos.cpython-311.pyc +0 -0
  261. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/fire_agents.cpython-311.pyc +0 -0
  262. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/fire_jobs.cpython-311.pyc +0 -0
  263. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/fire_jobs.cpython-313.pyc +0 -0
  264. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/get_zellij_cmd.cpython-311.pyc +0 -0
  265. machineconfig-1.97/src/machineconfig/scripts/python/__pycache__/repos.cpython-311.pyc +0 -0
  266. machineconfig-1.97/src/machineconfig/scripts/python/ai/__pycache__/init.cpython-311.pyc +0 -0
  267. machineconfig-1.97/src/machineconfig/scripts/python/ai/init.py +0 -56
  268. machineconfig-1.97/src/machineconfig/scripts/python/ai/rules/python/dev.md +0 -31
  269. machineconfig-1.97/src/machineconfig/scripts/python/devops_update_repos.py +0 -90
  270. machineconfig-1.97/src/machineconfig/scripts/python/fire_agents.py +0 -69
  271. machineconfig-1.97/src/machineconfig/scripts/python/gh_models.py +0 -104
  272. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/__init__.cpython-311.pyc +0 -0
  273. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/__init__.cpython-313.pyc +0 -0
  274. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/cloud_helpers.cpython-311.pyc +0 -0
  275. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/helpers2.cpython-311.pyc +0 -0
  276. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/helpers4.cpython-311.pyc +0 -0
  277. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/helpers4.cpython-313.pyc +0 -0
  278. machineconfig-1.97/src/machineconfig/scripts/python/helpers/__pycache__/repo_sync_helpers.cpython-311.pyc +0 -0
  279. machineconfig-1.97/src/machineconfig/scripts/python/viewer.py +0 -54
  280. machineconfig-1.97/src/machineconfig/scripts/windows/activate_ve.ps1 +0 -54
  281. machineconfig-1.97/src/machineconfig/scripts/windows/ftpx.ps1 +0 -5
  282. machineconfig-1.97/src/machineconfig/scripts/windows/mcinit.ps1 +0 -4
  283. machineconfig-1.97/src/machineconfig/scripts/windows/wsl_windows_transfer.ps1 +0 -7
  284. machineconfig-1.97/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -84
  285. machineconfig-1.97/src/machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -60
  286. machineconfig-1.97/src/machineconfig/setup_windows/wt_and_pwsh/install_fonts.ps1 +0 -27
  287. machineconfig-1.97/src/machineconfig/setup_windows/wt_and_pwsh/set_pwsh_theme.py +0 -51
  288. machineconfig-1.97/src/machineconfig/utils/code.py +0 -85
  289. machineconfig-1.97/src/machineconfig/utils/path_reduced.py +0 -608
  290. machineconfig-1.97/src/machineconfig/utils/utils5.py +0 -84
  291. machineconfig-1.97/src/machineconfig.egg-info/requires.txt +0 -20
  292. {machineconfig-1.97 → machineconfig-2.1}/MANIFEST.in +0 -0
  293. {machineconfig-1.97 → machineconfig-2.1}/setup.cfg +0 -0
  294. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/__init__.py +0 -0
  295. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/__init__.py +0 -0
  296. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
  297. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/archive/__init__.py +0 -0
  298. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/sessions_managers/demo_rich_zellij.py +0 -0
  299. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/cluster/templates/__init__.py +0 -0
  300. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/__init__.py +0 -0
  301. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/linux/msc/lid.sh +0 -0
  302. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/linux/msc/network.sh +0 -0
  303. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python/__init__.py +0 -0
  304. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/__init__.py +0 -0
  305. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/dev/reverse_proxy.md +0 -0
  306. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/brave.sh +0 -0
  307. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/docker.sh +0 -0
  308. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/docker_start.sh +0 -0
  309. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/edge.sh +0 -0
  310. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/nerdfont.sh +0 -0
  311. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/pgsql.sh +0 -0
  312. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/redis.sh +0 -0
  313. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/timescaledb.sh +0 -0
  314. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/vscode.sh +0 -0
  315. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/warp-cli.sh +0 -0
  316. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_custom_installers/scripts/linux/wezterm.sh +0 -0
  317. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_generic_installers/__init__.py +0 -0
  318. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_generic_installers/dev/config.archive.json +0 -0
  319. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_generic_installers/dev/config.json +0 -0
  320. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_linux_installers/__init__.py +0 -0
  321. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_linux_installers/archive/config.json +0 -0
  322. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_linux_installers/config.json +0 -0
  323. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_linux_installers/dev/__init__.py +0 -0
  324. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_linux_installers/dev/config.json +0 -0
  325. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_windows_installers/__init__.py +0 -0
  326. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_windows_installers/archive/__init__.py +0 -0
  327. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_windows_installers/archive/file.json +0 -0
  328. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_windows_installers/config.json +0 -0
  329. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/python_windows_installers/dev/__init__.py +0 -0
  330. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/windows/archive/openssh-server_add_key.ps1 +0 -0
  331. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/windows/archive/openssh-server_copy-ssh-id.ps1 +0 -0
  332. /machineconfig-1.97/src/machineconfig/profile/__init__.py → /machineconfig-2.1/src/machineconfig/jobs/windows/msc/cli_agents.bat +0 -0
  333. /machineconfig-1.97/src/machineconfig/scripts/python/__init__.py → /machineconfig-2.1/src/machineconfig/jobs/windows/msc/cli_agents.ps1 +0 -0
  334. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/jobs/windows/startup_file.cmd +0 -0
  335. {machineconfig-1.97/src/machineconfig/scripts/python/helpers → machineconfig-2.1/src/machineconfig/profile}/__init__.py +0 -0
  336. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/records/generic/shares.toml +0 -0
  337. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
  338. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
  339. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
  340. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
  341. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/__init__.py +0 -0
  342. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/archive/tmate_conn +0 -0
  343. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/archive/tmate_start +0 -0
  344. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/archive/transfer_wsl_win +0 -0
  345. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fzf2g +0 -0
  346. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fzfag +0 -0
  347. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fzffg +0 -0
  348. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fzfg +0 -0
  349. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/fzfrga +0 -0
  350. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/mount_drive +0 -0
  351. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/mount_nfs +0 -0
  352. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/mount_nw_drive +0 -0
  353. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/mount_smb +0 -0
  354. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/programs +0 -0
  355. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/share_cloud.sh +0 -0
  356. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/share_nfs +0 -0
  357. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/share_smb +0 -0
  358. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/skrg +0 -0
  359. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/start_docker +0 -0
  360. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/switch_ip +0 -0
  361. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/linux/z_ls +0 -0
  362. {machineconfig-1.97/src/machineconfig/settings → machineconfig-2.1/src/machineconfig/scripts/python}/__init__.py +0 -0
  363. {machineconfig-1.97/src/machineconfig/settings/shells/ipy/profiles/default → machineconfig-2.1/src/machineconfig/scripts/python/ai}/__init__.py +0 -0
  364. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/archive/im2text.py +0 -0
  365. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/cloud_manager.py +0 -0
  366. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/get_zellij_cmd.py +0 -0
  367. {machineconfig-1.97/src/machineconfig/settings/shells/ipy/profiles/default/startup → machineconfig-2.1/src/machineconfig/scripts/python/helpers}/__init__.py +0 -0
  368. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/onetimeshare.py +0 -0
  369. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/pomodoro.py +0 -0
  370. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/snapshot.py +0 -0
  371. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/python/viewer_template.py +0 -0
  372. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/archive/gource2vid.ps1 +0 -0
  373. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/archive/im2text.ps1 +0 -0
  374. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/archive/secure_pull.ps1 +0 -0
  375. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/archive/secure_push.ps1 +0 -0
  376. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/archive/tmate_conn.ps1 +0 -0
  377. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/cloud_mount.ps1 +0 -0
  378. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
  379. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
  380. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
  381. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/grep.ps1 +0 -0
  382. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/mount_nw.ps1 +0 -0
  383. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/mount_smb.ps1 +0 -0
  384. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/nano.ps1 +0 -0
  385. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/neofetch.ps1 +0 -0
  386. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/reload_path.ps1 +0 -0
  387. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/share_cloud.cmd +0 -0
  388. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/share_nfs.ps1 +0 -0
  389. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/share_smb.ps1 +0 -0
  390. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/unlock_bitlocker.ps1 +0 -0
  391. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/utils/op_script_delete.ps1 +0 -0
  392. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -0
  393. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -0
  394. {machineconfig-1.97/src/machineconfig/setup_windows → machineconfig-2.1/src/machineconfig/settings}/__init__.py +0 -0
  395. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/broot/br.sh +0 -0
  396. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
  397. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/broot/conf.toml +0 -0
  398. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/glow/glow.yml +0 -0
  399. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
  400. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/helix/config.toml +0 -0
  401. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/helix/languages.toml +0 -0
  402. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/keras/keras.json +0 -0
  403. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
  404. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
  405. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
  406. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
  407. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
  408. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
  409. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
  410. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
  411. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
  412. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
  413. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/colors +0 -0
  414. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
  415. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
  416. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
  417. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
  418. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
  419. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
  420. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/linux/icons +0 -0
  421. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
  422. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
  423. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
  424. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
  425. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
  426. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
  427. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
  428. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
  429. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
  430. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
  431. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/colors +0 -0
  432. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
  433. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/icons +0 -0
  434. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
  435. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
  436. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/lfrc +0 -0
  437. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
  438. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
  439. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
  440. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
  441. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/linters/.flake8 +0 -0
  442. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/linters/.mypy.ini +0 -0
  443. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/linters/.pylintrc +0 -0
  444. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
  445. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
  446. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
  447. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
  448. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/mprocs/windows/other +0 -0
  449. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/pistol/pistol.conf +0 -0
  450. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/presenterm/config.yaml +0 -0
  451. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/procs/.procs.toml +0 -0
  452. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
  453. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/rofi/config.rasi +0 -0
  454. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
  455. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
  456. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
  457. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/bash/.inputrc +0 -0
  458. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/bash/init.sh +0 -0
  459. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
  460. {machineconfig-1.97/src/machineconfig/setup_windows/wt_and_pwsh → machineconfig-2.1/src/machineconfig/settings/shells/ipy/profiles/default}/__init__.py +0 -0
  461. {machineconfig-1.97/src/machineconfig/utils → machineconfig-2.1/src/machineconfig/settings/shells/ipy/profiles/default/startup}/__init__.py +0 -0
  462. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
  463. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
  464. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
  465. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/pwsh/init.ps1 +0 -0
  466. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
  467. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
  468. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
  469. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
  470. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/streamlit/config.toml +0 -0
  471. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
  472. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/tere/terecd.sh +0 -0
  473. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
  474. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
  475. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/wsl/.wslconfig +0 -0
  476. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/yazi/keymap.toml +0 -0
  477. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/yazi/theme.toml +0 -0
  478. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/yazi/yazi.toml +0 -0
  479. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zed/settings.json +0 -0
  480. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/commands/monitor +0 -0
  481. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
  482. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/config.kdl +0 -0
  483. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
  484. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/layouts/hist +0 -0
  485. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
  486. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
  487. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
  488. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
  489. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/nix/cli_installation.sh +0 -0
  490. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
  491. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -0
  492. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/web_shortcuts/all.sh +0 -0
  493. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -0
  494. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -0
  495. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_linux/web_shortcuts/update_system.sh +0 -0
  496. {machineconfig-1.97/src/machineconfig/utils/ai → machineconfig-2.1/src/machineconfig/setup_windows}/__init__.py +0 -0
  497. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
  498. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
  499. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -0
  500. {machineconfig-1.97/src/machineconfig/utils/installer_utils → machineconfig-2.1/src/machineconfig/setup_windows/wt_and_pwsh}/__init__.py +0 -0
  501. {machineconfig-1.97 → machineconfig-2.1}/src/machineconfig.egg-info/dependency_links.txt +0 -0
  502. {machineconfig-1.97 → machineconfig-2.1}/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: 1.97
3
+ Version: 2.1
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -9,22 +9,28 @@ Project-URL: Bug Tracker, https://github.com/thisismygitrepo/machineconfig/issue
9
9
  Classifier: Programming Language :: Python :: 3
10
10
  Classifier: License :: OSI Approved :: Apache Software License
11
11
  Classifier: Operating System :: OS Independent
12
- Requires-Python: >=3.11
12
+ Requires-Python: >=3.13
13
13
  Description-Content-Type: text/markdown
14
- Requires-Dist: crocodile
15
14
  Requires-Dist: rich>=14.0.0
16
15
  Requires-Dist: paramiko>=3.5.1
17
16
  Requires-Dist: psutil>=7.0.0
18
- Requires-Dist: openai>=1.75.0
19
- Requires-Dist: nbformat>=5.10.4
20
17
  Requires-Dist: fire>=0.7.0
21
18
  Requires-Dist: pydantic>=2.11.3
22
- Requires-Dist: clipboard>=0.0.4
23
19
  Requires-Dist: gitpython>=3.1.44
24
- Requires-Dist: pudb>=2024.1.3
25
20
  Requires-Dist: pyfzf>=0.3.1
26
- Requires-Dist: call-function-with-timeout>=1.1.1
27
21
  Requires-Dist: rclone-python>=0.1.23
22
+ Requires-Dist: pytz>=2025.2
23
+ Requires-Dist: tomli>=2.2.1
24
+ Requires-Dist: toml>=0.10.2
25
+ Requires-Dist: pyyaml>=6.0.2
26
+ Requires-Dist: pyjson5>=1.6.9
27
+ Requires-Dist: requests>=2.32.5
28
+ Requires-Dist: tqdm>=4.67.1
29
+ Requires-Dist: joblib>=1.5.2
30
+ Requires-Dist: randomname>=0.2.1
31
+ Requires-Dist: cryptography>=44.0.2
32
+ Requires-Dist: tenacity>=9.1.2
33
+ Requires-Dist: markdown>=3.9
28
34
  Provides-Extra: windows
29
35
  Requires-Dist: pywin32; extra == "windows"
30
36
  Provides-Extra: docs
@@ -93,7 +99,7 @@ iwr https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/mac
93
99
  (iwr bit.ly/cfgwt).Content | iex
94
100
  . $HOME/code/machineconfig/src/machineconfig/setup_windows/symlinks.ps1
95
101
 
96
- & "$HOME\venvs\ve\Scripts\activate.ps1"
102
+ & "$HOME\code\machineconfig\.venv\Scripts\activate.ps1"
97
103
  python -m fire machineconfig.profile.create main2 --choice=all
98
104
  deactivate
99
105
 
@@ -61,7 +61,7 @@ iwr https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/mac
61
61
  (iwr bit.ly/cfgwt).Content | iex
62
62
  . $HOME/code/machineconfig/src/machineconfig/setup_windows/symlinks.ps1
63
63
 
64
- & "$HOME\venvs\ve\Scripts\activate.ps1"
64
+ & "$HOME\code\machineconfig\.venv\Scripts\activate.ps1"
65
65
  python -m fire machineconfig.profile.create main2 --choice=all
66
66
  deactivate
67
67
 
@@ -1,12 +1,12 @@
1
1
  [build-system]
2
- requires = ["setuptools>=62", "wheel"]
2
+ requires = ["setuptools>=80", "wheel"]
3
3
  build-backend = "setuptools.build_meta"
4
4
  # requires = ["hatchling"]
5
5
  # build-backend = "hatchling.build"
6
6
 
7
7
  [project]
8
8
  name = "machineconfig"
9
- version = "1.97"
9
+ version = "2.1"
10
10
  description = "Dotfiles management package"
11
11
  readme = "README.md"
12
12
  license = {text = "Apache 2.0"}
@@ -18,22 +18,28 @@ classifiers = [
18
18
  "License :: OSI Approved :: Apache Software License",
19
19
  "Operating System :: OS Independent",
20
20
  ]
21
- requires-python = ">=3.11"
21
+ requires-python = ">=3.13"
22
22
  dependencies = [
23
- "crocodile",
24
23
  "rich>=14.0.0",
25
24
  "paramiko>=3.5.1",
26
25
  "psutil>=7.0.0",
27
- "openai>=1.75.0",
28
- "nbformat>=5.10.4",
29
26
  "fire>=0.7.0",
30
27
  "pydantic>=2.11.3",
31
- "clipboard>=0.0.4",
32
28
  "gitpython>=3.1.44",
33
- "pudb>=2024.1.3",
34
29
  "pyfzf>=0.3.1",
35
- "call-function-with-timeout>=1.1.1",
36
30
  "rclone-python>=0.1.23",
31
+ "pytz>=2025.2",
32
+ "tomli>=2.2.1",
33
+ "toml>=0.10.2",
34
+ "pyyaml>=6.0.2",
35
+ "pyjson5>=1.6.9",
36
+ "requests>=2.32.5",
37
+ "tqdm>=4.67.1",
38
+ "joblib>=1.5.2",
39
+ "randomname>=0.2.1",
40
+ "cryptography>=44.0.2",
41
+ "tenacity>=9.1.2",
42
+ "markdown>=3.9",
37
43
  ]
38
44
 
39
45
  [project.optional-dependencies]
@@ -61,5 +67,22 @@ crocodile = { path = "../crocodile", editable = true }
61
67
 
62
68
  [dependency-groups]
63
69
  dev = [
64
- "rclone-python>=0.1.23",
70
+ "cleanpy>=0.5.1",
71
+ "ipykernel>=6.30.1",
72
+ "ipython>=9.5.0",
73
+ "mypy>=1.17.1",
74
+ "pudb>=2025.1",
75
+ "pylint>=3.3.8",
76
+ "pyrefly>=0.31.0",
77
+ "pyright>=1.1.404",
78
+ "ruff>=0.13.0",
79
+ "ty>=0.0.1a20",
80
+ "types-mysqlclient>=2.2.0.20250516",
81
+ "types-paramiko>=4.0.0.20250822",
82
+ "types-pytz>=2025.2.0.20250809",
83
+ "types-pyyaml>=6.0.12.20250822",
84
+ "types-requests>=2.32.4.20250809",
85
+ "types-sqlalchemy>=1.4.53.38",
86
+ "types-toml>=0.10.8.20240310",
87
+ "types-urllib3>=1.26.25.14",
65
88
  ]
@@ -1,6 +1,3 @@
1
-
2
-
3
-
4
1
  # from machineconfig.utils.utils2 import read_ini
5
2
  # from machineconfig.utils.io_save import save_pickle
6
3
 
@@ -19,18 +16,18 @@
19
16
  # """Convert list of dictionaries to markdown table format."""
20
17
  # if not data:
21
18
  # return ""
22
-
19
+
23
20
  # # Get all unique keys from all dictionaries
24
21
  # all_keys = set()
25
22
  # for row in data:
26
23
  # all_keys.update(row.keys())
27
-
24
+
28
25
  # keys = sorted(all_keys)
29
-
26
+
30
27
  # # Create header
31
28
  # header = "|" + "|".join(f" {key} " for key in keys) + "|"
32
29
  # separator = "|" + "|".join(" --- " for _ in keys) + "|"
33
-
30
+
34
31
  # # Create rows
35
32
  # rows = []
36
33
  # for row in data:
@@ -44,7 +41,7 @@
44
41
  # value = str(value)
45
42
  # row_values.append(f" {value} ")
46
43
  # rows.append("|" + "|".join(row_values) + "|")
47
-
44
+
48
45
  # return "\n".join([header, separator] + rows)
49
46
 
50
47
 
@@ -100,7 +97,6 @@
100
97
  # @staticmethod
101
98
  # def prepare_servers_report(cloud_root: PathExtended) -> list[dict[str, Any]]:
102
99
  # from machineconfig.cluster.remote_machine import RemoteMachine
103
- # # Replace crocodile List usage with plain Python list
104
100
  # workers_root = [p for p in cloud_root.joinpath("workers").iterdir()]
105
101
  # res: dict[str, list[RemoteMachine]] = {}
106
102
  # times: dict[str, timedelta] = {}
@@ -109,7 +105,7 @@
109
105
  # file_mod_time = datetime.fromtimestamp(running_jobs.stat().st_mtime) if running_jobs.exists() else datetime.min
110
106
  # times[a_worker.name] = datetime.now() - file_mod_time
111
107
  # res[a_worker.name] = pickle.loads(running_jobs.read_bytes()) if running_jobs.exists() else []
112
-
108
+
113
109
  # # Create list of dictionaries instead of DataFrame
114
110
  # servers_report = []
115
111
  # for machine in res.keys():
@@ -127,7 +123,7 @@
127
123
  # alternative_base = self.fetch_cloud_live()
128
124
  # assert alternative_base is not None
129
125
  # lock_path = alternative_base.expanduser().joinpath("lock.txt")
130
- # if lock_path.exists(): lock_owner: str = lock_path.read_text()
126
+ # if lock_path.exists(): lock_owner: str = lock_path.read_text(encoding="utf-8")
131
127
  # else: lock_owner = "None"
132
128
  # self.console.print(f"🔒 Lock is held by: {lock_owner}")
133
129
  # self.console.print("🧾 Log File:")
@@ -139,7 +135,7 @@
139
135
  # for item_name, item_list in log.items():
140
136
  # self.console.rule(f"{item_name} Jobs (Latest {'10' if len(item_list) > 10 else len(item_list)} / {len(item_list)})")
141
137
  # print() # empty line after the rule helps keeping the rendering clean in the terminal while zooming in and out.
142
-
138
+
143
139
  # # Add duration calculation for non-queued items
144
140
  # display_items = []
145
141
  # for item in item_list:
@@ -162,13 +158,13 @@
162
158
  # if item_name == "running": excluded_cols.update({"submission_time", "source_machine", "end_time"})
163
159
  # if item_name == "completed": excluded_cols.update({"submission_time", "source_machine", "start_time", "pid"})
164
160
  # if item_name == "failed": excluded_cols.update({"submission_time", "source_machine", "start_time"})
165
-
161
+
166
162
  # # Filter items and take last 10
167
163
  # filtered_items = []
168
164
  # for item in display_items[-10:]:
169
165
  # filtered_item = {k: v for k, v in item.items() if k not in excluded_cols}
170
166
  # filtered_items.append(filtered_item)
171
-
167
+
172
168
  # if filtered_items:
173
169
  # pprint(format_table_markdown(filtered_items))
174
170
  # pprint("\n\n")
@@ -246,9 +242,6 @@
246
242
  # """This method involves manual selection but has all-files scope (failed and running) and can be used for both local and remote machines.
247
243
  # The reason it is not automated for remotes is because even though the server might have failed, the processes therein might be running, so there is no automated way to tell."""
248
244
  # log = self.read_log()
249
- # from machineconfig.cluster.remote_machine import RemoteMachine
250
- # from machineconfig.utils.utils import display_options
251
- # # Replace crocodile List usage with plain Python list comprehension
252
245
  # jobs_all: list[str] = [p.name for p in self.base_path.expanduser().joinpath("jobs").iterdir()]
253
246
  # jobs_selected = display_options(options=jobs_all, msg="Select Jobs to Redo", multi=True, fzf=True)
254
247
  # for a_job in jobs_selected:
@@ -263,13 +256,13 @@
263
256
  # break
264
257
  # if found_log_type:
265
258
  # break
266
-
259
+
267
260
  # if not found_log_type:
268
261
  # raise ValueError(f"Job `{a_job}` is not found in any of the log lists.")
269
-
262
+
270
263
  # if found_entry_data is None:
271
264
  # raise ValueError(f"Job `{a_job}` has no entry data.")
272
-
265
+
273
266
  # entry = LogEntry.from_dict(found_entry_data)
274
267
  # a_job_path = CloudManager.base_path.expanduser().joinpath(f"jobs/{entry.name}")
275
268
  # entry.note += f"| Job failed @ {entry.run_machine}"
@@ -308,14 +301,14 @@
308
301
  # elif status == "completed" or status == "failed":
309
302
  # job_name = a_rm.config.job_id
310
303
  # log = self.read_log()
311
-
304
+
312
305
  # # Find the entry in running jobs
313
306
  # entry_data = None
314
307
  # for job_data in log["running"]:
315
308
  # if job_data.get("name") == job_name:
316
309
  # entry_data = job_data
317
310
  # break
318
-
311
+
319
312
  # if entry_data:
320
313
  # entry = LogEntry.from_dict(entry_data)
321
314
  # entry.end_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
@@ -344,7 +337,7 @@
344
337
  # while len(self.running_jobs) < self.max_jobs:
345
338
  # if idx >= len(log["queued"]):
346
339
  # break # looked at all jobs in the queue
347
-
340
+
348
341
  # queue_entry = LogEntry.from_dict(log["queued"][idx])
349
342
  # a_job_path = CloudManager.base_path.expanduser().joinpath(f"jobs/{queue_entry.name}")
350
343
  # rm: RemoteMachine = pickle.loads(a_job_path.joinpath("data/remote_machine.Machine.pkl").read_bytes())
@@ -352,14 +345,14 @@
352
345
  # print(f"Job `{queue_entry.name}` is not allowed to run on this machine. Skipping ...")
353
346
  # idx += 1
354
347
  # continue # look at the next job in the queue.
355
-
348
+
356
349
  # pid, _process_cmd = rm.fire(run=True)
357
350
  # queue_entry.pid = pid
358
351
  # # queue_entry.cmd = process_cmd
359
352
  # queue_entry.run_machine = f"{getpass.getuser()}@{platform.node()}"
360
353
  # queue_entry.start_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
361
354
  # queue_entry.session_name = rm.job_params.session_name
362
-
355
+
363
356
  # # Remove from queued and add to running
364
357
  # log["queued"] = [job for job in log["queued"] if job.get("name") != queue_entry.name]
365
358
  # log["running"].append(queue_entry.__dict__)
@@ -374,7 +367,7 @@
374
367
  # base_path.mkdir(parents=True, exist_ok=True)
375
368
  # base_path.sync_to_cloud(cloud=self.cloud, rel2home=True, sync_up=True, verbose=True, transfers=100)
376
369
  # self.release_lock()
377
- # def reset_lock(self):
370
+ # def reset_lock(self):
378
371
  # base_path = CloudManager.base_path.expanduser()
379
372
  # base_path.mkdir(parents=True, exist_ok=True)
380
373
  # base_path.joinpath("lock.txt").write_text("").to_cloud(cloud=self.cloud, rel2home=True, verbose=False)
@@ -402,7 +395,7 @@
402
395
  # path.joinpath("lock.txt").write_text(this_machine).to_cloud(cloud=self.cloud, rel2home=True, verbose=False)
403
396
  # return self.claim_lock(first_call=False)
404
397
 
405
- # locking_machine = lock_path.read_text()
398
+ # locking_machine = lock_path.read_text(encoding="utf-8")
406
399
  # if locking_machine != "" and locking_machine != this_machine:
407
400
  # lock_mod_time = datetime.fromtimestamp(lock_path.stat().st_mtime)
408
401
  # if (datetime.now() - lock_mod_time).total_seconds() > 3600:
@@ -424,7 +417,7 @@
424
417
  # while counter < self.num_claim_checks:
425
418
  # lock_path_tmp = path.joinpath("lock.txt").from_cloud(cloud=self.cloud, rel2home=True, verbose=False)
426
419
  # assert lock_path_tmp is not None
427
- # lock_data_tmp = lock_path_tmp.read_text()
420
+ # lock_data_tmp = lock_path_tmp.read_text(encoding="utf-8")
428
421
  # if lock_data_tmp != this_machine:
429
422
  # print(f"CloudManager: Lock already claimed by `{lock_data_tmp}`. 🤷‍♂️")
430
423
  # print(f"sleeping for {self.inter_check_interval_sec} seconds and trying again.")
@@ -450,7 +443,7 @@
450
443
  # path.joinpath("lock.txt").write_text("").to_cloud(cloud=self.cloud, rel2home=True, verbose=False)
451
444
  # self.lock_claimed = False
452
445
  # return NoReturn
453
- # data = lock_path.read_text()
446
+ # data = lock_path.read_text(encoding="utf-8")
454
447
  # this_machine = f"{getpass.getuser()}@{platform.node()}"
455
448
  # if data != this_machine:
456
449
  # raise ValueError(f"CloudManager: Lock already claimed by `{data}`. 🤷‍♂️ Can't release a lock not owned! This shouldn't happen. Consider increasing trails before confirming the claim.")
@@ -2,7 +2,6 @@
2
2
  # """
3
3
 
4
4
 
5
-
6
5
  # from machineconfig.cluster.remote_machine import RemoteMachine, FileManager
7
6
 
8
7
 
@@ -24,7 +23,7 @@
24
23
  # rm.file_manager.cloud_download_py_script_path.expanduser().write_text(cloud_download_py_script, encoding="utf-8")
25
24
  # # modify and save shell_script to including running of cloud_download_py_script before job script.
26
25
  # shell_file = rm.file_manager.shell_script_path.expanduser()
27
- # shell_script = shell_file.read_text().replace("# EXTRA-PLACEHOLDER-POST", f"cd ~; python {rm.file_manager.cloud_download_py_script_path.rel2home().as_posix()}")
26
+ # shell_script = shell_file.read_text(encoding="utf-8").replace("# EXTRA-PLACEHOLDER-POST", f"cd ~; python {rm.file_manager.cloud_download_py_script_path.rel2home().as_posix()}")
28
27
  # download_url = rm.file_manager.job_root.zip().share_on_cloud()
29
28
  # target = rm.file_manager.job_root.rel2home().parent.joinpath(download_url.name).as_posix()
30
29
  # tmp = f"cd ~; curl -o '{target}' '{download_url.as_url_str()}'; unzip '{target}' -d {rm.file_manager.job_root.rel2home().parent.as_posix()}"
@@ -40,7 +39,7 @@
40
39
  # downloads = '\n'.join([f"cloud_copy {cloud}: '{a_path.collapseuser().as_posix()} -r" for a_path in rm.data])
41
40
  # if not rm.config.copy_repo: downloads += f"""\n cloud_copy {cloud}: {P(rm.job_params.repo_path_rh).collapseuser().as_posix()} -zer """
42
41
  # downloads += f"\ncloud_copy {cloud}: {rm.file_manager.job_root} -zr"
43
- # rm.file_manager.shell_script_path.expanduser().write_text(downloads + rm.file_manager.shell_script_path.expanduser().read_text(), encoding='utf-8') # newline={"Windows": None, "Linux": "\n"}[rm.ssh.get_remote_machine()]
42
+ # rm.file_manager.shell_script_path.expanduser().write_text(downloads + rm.file_manager.shell_script_path.expanduser().read_text(encoding="utf-8"), encoding='utf-8') # newline={"Windows": None, "Linux": "\n"}[rm.ssh.get_remote_machine()]
44
43
  # PathExtended(rm.file_manager.job_root).to_cloud(cloud=cloud, zip=True, rel2home=True)
45
44
 
46
45
  # @staticmethod
@@ -190,8 +190,6 @@
190
190
  # def viz_load_ratios(self) -> None:
191
191
  # if not self.workload_params: raise RuntimeError("func_kwargs_list is None. You need to run generate_standard_kwargs() first.")
192
192
  # import plottext
193
- # names = L(self.sshz).apply(lambda x: x.get_remote_repr(add_machine=True)).list
194
-
195
193
  # plt.simple_multiple_bar(names, [[machine_specs.cpu for machine_specs in self.machines_specs], [machine_specs.ram for machine_specs in self.machines_specs]], title="Resources per machine", labels=["#cpu threads", "memory size"])
196
194
  # plt.show()
197
195
  # print("")
@@ -1,4 +1,3 @@
1
-
2
1
  # from rich.console import Console
3
2
  # from machineconfig.utils.utils2 import pprint
4
3
  # from datetime import datetime
@@ -68,16 +67,16 @@
68
67
  # # else:
69
68
  # if platform.system() == "Windows" and script_path.name.endswith(".sh"):
70
69
  # tmp = script_path.with_suffix(".ps1")
71
- # tmp.write_text(script_path.read_text(), encoding="utf-8", newline=None)
70
+ # tmp.write_text(script_path.read_text(encoding="utf-8"), encoding="utf-8", newline=None)
72
71
  # script_path = tmp
73
72
  # if platform.system() == "Linux" and script_path.name.endswith(".ps1"):
74
73
  # tmp = script_path.with_suffix(".sh")
75
- # tmp.write_text(script_path.read_text(), encoding="utf-8", newline='\n')
74
+ # tmp.write_text(script_path.read_text(encoding="utf-8"), encoding="utf-8", newline='\n')
76
75
  # script_path = tmp
77
76
  # return f". {script_path}"
78
77
  # def get_job_status(self, session_name: str, tab_name: str) -> JOB_STATUS:
79
78
  # pid_path = self.execution_log_dir.expanduser().joinpath("pid.txt")
80
- # tmp = self.execution_log_dir.expanduser().joinpath("status.txt").read_text()
79
+ # tmp = self.execution_log_dir.expanduser().joinpath("status.txt").read_text(encoding="utf-8")
81
80
  # status: JOB_STATUS = tmp # type: ignore
82
81
  # if status == "running":
83
82
  # if not pid_path.exists():
@@ -85,7 +84,7 @@
85
84
  # status = 'failed'
86
85
  # self.execution_log_dir.expanduser().joinpath("status.txt").write_text(status)
87
86
  # return status
88
- # pid: int = int(pid_path.read_text().rstrip())
87
+ # pid: int = int(pid_path.read_text(encoding="utf-8").rstrip())
89
88
  # import psutil
90
89
  # try: proc = psutil.Process(pid=pid)
91
90
  # except psutil.NoSuchProcess:
@@ -1,6 +1,3 @@
1
-
2
-
3
-
4
1
  # import git
5
2
 
6
3
  # from typing import Optional, Callable, Union, Any
@@ -113,7 +110,7 @@
113
110
  # else: base = f"""
114
111
  # res = None # in case the file did not define it.
115
112
  # # --------------------------------- SCRIPT AS IS
116
- # {P(self.file_path_rh).expanduser().read_text()}
113
+ # {P(self.file_path_rh).expanduser().read_text(encoding="utf-8")}
117
114
  # # --------------------------------- END OF SCRIPT AS IS
118
115
  # """
119
116
 
@@ -1,4 +1,3 @@
1
-
2
1
  # """
3
2
  # Runner
4
3
  # """
@@ -111,20 +110,19 @@
111
110
  # @staticmethod
112
111
  # def from_dict(a_dict: dict[str, Any]):
113
112
  # return LogEntry(
114
- # name=a_dict["name"],
115
- # submission_time=str(a_dict["submission_time"]),
116
- # start_time=str(a_dict["start_time"]) if a_dict.get("start_time") else None,
113
+ # name=a_dict["name"],
114
+ # submission_time=str(a_dict["submission_time"]),
115
+ # start_time=str(a_dict["start_time"]) if a_dict.get("start_time") else None,
117
116
  # end_time=str(a_dict["end_time"]) if a_dict.get("end_time") else None,
118
- # run_machine=a_dict.get("run_machine"),
119
- # source_machine=a_dict.get("source_machine", ""),
120
- # note=a_dict.get("note", ""),
121
- # pid=a_dict.get("pid"),
122
- # cmd=a_dict.get("cmd"),
117
+ # run_machine=a_dict.get("run_machine"),
118
+ # source_machine=a_dict.get("source_machine", ""),
119
+ # note=a_dict.get("note", ""),
120
+ # pid=a_dict.get("pid"),
121
+ # cmd=a_dict.get("cmd"),
123
122
  # session_name=a_dict.get("session_name")
124
123
  # )
125
124
 
126
125
 
127
-
128
126
  # @dataclass
129
127
  # class RemoteMachineConfig:
130
128
  # # conn
@@ -179,6 +177,5 @@
179
177
  # except (FileNotFoundError, KeyError, IndexError) as err: raise ValueError(f"Email config name is not provided. 🤷‍♂️ & default could not be read @ `{DEFAULTS_PATH}`") from err
180
178
 
181
179
 
182
-
183
180
  # if __name__ == '__main__':
184
181
  # pass
@@ -79,7 +79,7 @@
79
79
  # print(f"🧑‍💻 Waiting for Python process to start and declare its pid @ `{pid_path}` as dictated in python script ... ")
80
80
  # time.sleep(3)
81
81
  # try:
82
- # pid = int(pid_path.read_text())
82
+ # pid = int(pid_path.read_text(encoding="utf-8"))
83
83
  # import psutil
84
84
  # process_command = " ".join(psutil.Process(pid).cmdline())
85
85
  # print(f"🎉 Python process started running @ {pid=} & {process_command=}")
@@ -133,7 +133,7 @@
133
133
  # email_script = PathExtended(cluster.__file__).parent.joinpath("script_notify_upon_completion.py").read_text(encoding="utf-8").replace("email_params = EmailParams.from_empty()", f"email_params = {email_params}").replace('manager = FileManager.from_pickle(params.file_manager_path)', '')
134
134
  # py_script = py_script.replace("# NOTIFICATION-CODE-PLACEHOLDER", email_script)
135
135
  # ve_path = PathExtended(self.job_params.repo_path_rh).expanduser().joinpath(".ve_path")
136
- # if ve_path.exists(): ve_name = PathExtended(ve_path.read_text()).expanduser().name
136
+ # if ve_path.exists(): ve_name = PathExtended(ve_path.read_text(encoding="utf-8")).expanduser().name
137
137
  # else:
138
138
  # import sys
139
139
  # ve_name = PathExtended(sys.executable).parent.parent.name
@@ -144,7 +144,6 @@
144
144
  # echo "~~~~~~~~~~~~~~~~SHELL START~~~~~~~~~~~~~~~"
145
145
  # {'~/scripts/devops -w update' if self.config.update_essential_repos else ''}
146
146
  # {f'cd {P(self.job_params.repo_path_rh).collapseuser().as_posix()}'}
147
- # . activate_ve {ve_name}
148
147
  # {'git pull' if self.config.update_repo else ''}
149
148
  # {'pip install -e .' if self.config.install_repo else ''}
150
149
  # echo "~~~~~~~~~~~~~~~~SHELL END ~~~~~~~~~~~~~~~"
@@ -216,7 +215,7 @@
216
215
  # if not start_time_file.exists():
217
216
  # print(f"Job {self.config.job_id} is still in the queue. 😯")
218
217
  # else:
219
- # start_time = start_time_file.read_text()
218
+ # start_time = start_time_file.read_text(encoding="utf-8")
220
219
  # txt = f"Machine {self.ssh.get_remote_repr(add_machine=True)} has not yet finished job `{self.config.job_id}`. 😟"
221
220
  # txt += f"\nIt started at {start_time}. 🕒, and is still running. 🏃‍♂️"
222
221
  # try:
@@ -229,7 +228,7 @@
229
228
  # print("\n")
230
229
  # else:
231
230
  # results_folder_file = base.joinpath("results_folder_path.txt") # it could be one returned by function executed or one made up by the running context.
232
- # results_folder = results_folder_file.read_text()
231
+ # results_folder = results_folder_file.read_text(encoding="utf-8")
233
232
  # print("\n" * 2)
234
233
  # console.rule("Job Completed 🎉🥳🎆🥂🍾🎊🪅")
235
234
  # print(f"""Machine {self.ssh.get_remote_repr(add_machine=True)} has finished job `{self.config.job_id}`. 😁
@@ -63,9 +63,9 @@
63
63
  # ⏰ Time: {time_at_execution_start_local}
64
64
  # """, style="bold blue")
65
65
 
66
- # if isinstance(func_kwargs, dict):
66
+ # if isinstance(func_kwargs, dict):
67
67
  # pprint(func_kwargs, "📋 Function Arguments")
68
- # else:
68
+ # else:
69
69
  # pprint(func_kwargs, f"📋 Function Arguments from `{manager.kwargs_path.collapseuser().as_posix()}`")
70
70
 
71
71
  # print("\n" + "•" * 60 + "\n")
@@ -1,4 +1,3 @@
1
-
2
1
  # """
3
2
  # Notify User Upon Completion
4
3
  # """
@@ -1,10 +1,8 @@
1
-
2
- """ZT
3
- """
1
+ """ZT"""
4
2
 
5
3
  import socket
6
4
  from machineconfig.utils.utils import choose_ssh_host, write_shell_script_to_default_program_path
7
- from machineconfig.utils.path_reduced import P as PathExtended
5
+ from machineconfig.utils.path_reduced import PathExtended as PathExtended
8
6
 
9
7
  prefix = """
10
8
 
@@ -44,7 +42,7 @@ def build_template(tabs: list[str]):
44
42
  res += suffix.replace("THISMACHINE", socket.gethostname())
45
43
  file = PathExtended.tmp().joinpath("tmp_files/templates/zellij_template.kdl")
46
44
  file.parent.mkdir(parents=True, exist_ok=True)
47
- file.write_text(res)
45
+ file.write_text(res, encoding="utf-8")
48
46
  res = f"zellij --layout {file}"
49
47
  return res
50
48
 
@@ -57,5 +55,5 @@ def launch_from_ssh_config():
57
55
  return None
58
56
 
59
57
 
60
- if __name__ == '__main__':
58
+ if __name__ == "__main__":
61
59
  launch_from_ssh_config()