machineconfig 1.94__py3-none-any.whl → 1.96__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of machineconfig might be problematic. Click here for more details.

Files changed (529) hide show
  1. machineconfig/cluster/cloud_manager.py +445 -343
  2. machineconfig/cluster/data_transfer.py +63 -56
  3. machineconfig/cluster/distribute.py +284 -280
  4. machineconfig/cluster/file_manager.py +234 -237
  5. machineconfig/cluster/job_params.py +133 -133
  6. machineconfig/cluster/loader_runner.py +183 -149
  7. machineconfig/cluster/remote_machine.py +269 -252
  8. machineconfig/cluster/script_execution.py +215 -209
  9. machineconfig/cluster/script_notify_upon_completion.py +50 -43
  10. machineconfig/cluster/self_ssh.py +52 -54
  11. machineconfig/cluster/sessions_managers/__init__.py +0 -0
  12. machineconfig/cluster/sessions_managers/archive/__init__.py +0 -0
  13. machineconfig/{jobs/python → cluster/sessions_managers/archive}/create_zellij_template.py +5 -3
  14. machineconfig/cluster/sessions_managers/archive/session_managers.py +184 -0
  15. machineconfig/cluster/sessions_managers/demo_rich_zellij.py +0 -0
  16. machineconfig/cluster/sessions_managers/enhanced_command_runner.py +160 -0
  17. machineconfig/cluster/sessions_managers/wt_local.py +494 -0
  18. machineconfig/cluster/sessions_managers/wt_local_manager.py +577 -0
  19. machineconfig/cluster/sessions_managers/wt_remote.py +288 -0
  20. machineconfig/cluster/sessions_managers/wt_remote_manager.py +483 -0
  21. machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +196 -0
  22. machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +418 -0
  23. machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +175 -0
  24. machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +300 -0
  25. machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +228 -0
  26. machineconfig/cluster/sessions_managers/zellij_local.py +418 -0
  27. machineconfig/cluster/sessions_managers/zellij_local_manager.py +533 -0
  28. machineconfig/cluster/sessions_managers/zellij_remote.py +229 -0
  29. machineconfig/cluster/sessions_managers/zellij_remote_manager.py +188 -0
  30. machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +64 -0
  31. machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +126 -0
  32. machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +334 -0
  33. machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +68 -0
  34. machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +119 -0
  35. machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +85 -0
  36. machineconfig/cluster/templates/cli_click.py +0 -1
  37. machineconfig/cluster/templates/cli_gooey.py +102 -104
  38. machineconfig/cluster/templates/run_cloud.py +51 -51
  39. machineconfig/cluster/templates/run_cluster.py +103 -59
  40. machineconfig/cluster/templates/run_remote.py +57 -58
  41. machineconfig/cluster/templates/utils.py +69 -36
  42. machineconfig/jobs/__pycache__/__init__.cpython-311.pyc +0 -0
  43. machineconfig/jobs/linux/msc/lid.sh +2 -4
  44. machineconfig/jobs/linux/msc/network.sh +3 -6
  45. machineconfig/jobs/python/__pycache__/__init__.cpython-311.pyc +0 -0
  46. machineconfig/jobs/python/check_installations.py +258 -190
  47. machineconfig/jobs/python/create_bootable_media.py +7 -3
  48. machineconfig/jobs/python/python_cargo_build_share.py +50 -50
  49. machineconfig/jobs/python/python_ve_symlink.py +10 -10
  50. machineconfig/jobs/python/vscode/__pycache__/select_interpreter.cpython-311.pyc +0 -0
  51. machineconfig/jobs/python/vscode/api.py +3 -3
  52. machineconfig/jobs/python/vscode/link_ve.py +6 -6
  53. machineconfig/jobs/python/vscode/select_interpreter.py +13 -9
  54. machineconfig/jobs/python/vscode/sync_code.py +14 -11
  55. machineconfig/jobs/python_custom_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  56. machineconfig/jobs/python_custom_installers/archive/ngrok.py +5 -5
  57. machineconfig/jobs/python_custom_installers/dev/aider.py +4 -4
  58. machineconfig/jobs/python_custom_installers/dev/alacritty.py +7 -6
  59. machineconfig/jobs/python_custom_installers/dev/brave.py +11 -7
  60. machineconfig/jobs/python_custom_installers/dev/bypass_paywall.py +7 -8
  61. machineconfig/jobs/python_custom_installers/dev/code.py +7 -5
  62. machineconfig/jobs/python_custom_installers/dev/cursor.py +66 -5
  63. machineconfig/jobs/python_custom_installers/dev/docker_desktop.py +4 -5
  64. machineconfig/jobs/python_custom_installers/dev/espanso.py +21 -17
  65. machineconfig/jobs/python_custom_installers/dev/goes.py +6 -12
  66. machineconfig/jobs/python_custom_installers/dev/lvim.py +7 -6
  67. machineconfig/jobs/python_custom_installers/dev/nerdfont.py +5 -5
  68. machineconfig/jobs/python_custom_installers/dev/redis.py +11 -7
  69. machineconfig/jobs/python_custom_installers/dev/wezterm.py +12 -8
  70. machineconfig/jobs/python_custom_installers/dev/winget.py +194 -0
  71. machineconfig/jobs/python_custom_installers/{dev/docker.py → docker.py} +12 -7
  72. machineconfig/jobs/python_custom_installers/gh.py +10 -9
  73. machineconfig/jobs/python_custom_installers/hx.py +36 -65
  74. machineconfig/jobs/python_custom_installers/scripts/linux/brave.sh +4 -8
  75. machineconfig/jobs/python_custom_installers/scripts/linux/docker.sh +5 -10
  76. machineconfig/jobs/python_custom_installers/scripts/linux/docker_start.sh +3 -6
  77. machineconfig/jobs/python_custom_installers/scripts/linux/edge.sh +3 -6
  78. machineconfig/jobs/python_custom_installers/scripts/linux/nerdfont.sh +5 -10
  79. machineconfig/jobs/python_custom_installers/scripts/linux/pgsql.sh +4 -8
  80. machineconfig/jobs/python_custom_installers/scripts/linux/redis.sh +5 -10
  81. machineconfig/jobs/python_custom_installers/scripts/linux/timescaledb.sh +6 -12
  82. machineconfig/jobs/python_custom_installers/scripts/linux/vscode.sh +101 -33
  83. machineconfig/jobs/python_custom_installers/scripts/linux/warp-cli.sh +5 -10
  84. machineconfig/jobs/python_custom_installers/scripts/linux/wezterm.sh +3 -6
  85. machineconfig/jobs/python_custom_installers/{dev/warp-cli.py → warp-cli.py} +5 -5
  86. machineconfig/jobs/python_generic_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  87. machineconfig/jobs/python_generic_installers/config.json +133 -9
  88. machineconfig/jobs/python_generic_installers/dev/config.json +208 -37
  89. machineconfig/jobs/python_generic_installers/update.py +3 -0
  90. machineconfig/jobs/python_linux_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  91. machineconfig/jobs/python_linux_installers/config.json +42 -6
  92. machineconfig/jobs/python_linux_installers/dev/config.json +79 -11
  93. machineconfig/jobs/python_windows_installers/config.json +6 -0
  94. machineconfig/profile/__pycache__/__init__.cpython-311.pyc +0 -0
  95. machineconfig/profile/__pycache__/create.cpython-311.pyc +0 -0
  96. machineconfig/profile/__pycache__/shell.cpython-311.pyc +0 -0
  97. machineconfig/profile/create.py +5 -5
  98. machineconfig/profile/create_hardlinks.py +5 -5
  99. machineconfig/profile/shell.py +69 -63
  100. machineconfig/scripts/__pycache__/__init__.cpython-311.pyc +0 -0
  101. machineconfig/scripts/__pycache__/__init__.cpython-313.pyc +0 -0
  102. machineconfig/scripts/cloud/init.sh +9 -18
  103. machineconfig/scripts/linux/fire +5 -24
  104. machineconfig/scripts/linux/fire_agents +27 -0
  105. machineconfig/scripts/linux/share_cloud.sh +6 -12
  106. machineconfig/scripts/linux/wifi_conn +24 -0
  107. machineconfig/scripts/python/__pycache__/__init__.cpython-311.pyc +0 -0
  108. machineconfig/scripts/python/__pycache__/__init__.cpython-313.pyc +0 -0
  109. machineconfig/scripts/python/__pycache__/cloud_copy.cpython-311.pyc +0 -0
  110. machineconfig/scripts/python/__pycache__/cloud_mount.cpython-311.pyc +0 -0
  111. machineconfig/scripts/python/__pycache__/cloud_sync.cpython-311.pyc +0 -0
  112. machineconfig/scripts/python/__pycache__/croshell.cpython-311.pyc +0 -0
  113. machineconfig/scripts/python/__pycache__/devops.cpython-311.pyc +0 -0
  114. machineconfig/scripts/python/__pycache__/devops_backup_retrieve.cpython-311.pyc +0 -0
  115. machineconfig/scripts/python/__pycache__/devops_devapps_install.cpython-311.pyc +0 -0
  116. machineconfig/scripts/python/__pycache__/devops_update_repos.cpython-311.pyc +0 -0
  117. machineconfig/scripts/python/__pycache__/fire_agents.cpython-311.pyc +0 -0
  118. machineconfig/scripts/python/__pycache__/fire_jobs.cpython-311.pyc +0 -0
  119. machineconfig/scripts/python/__pycache__/fire_jobs.cpython-313.pyc +0 -0
  120. machineconfig/scripts/python/__pycache__/get_zellij_cmd.cpython-311.pyc +0 -0
  121. machineconfig/scripts/python/__pycache__/repos.cpython-311.pyc +0 -0
  122. machineconfig/scripts/python/archive/im2text.py +28 -30
  123. machineconfig/scripts/python/archive/tmate_conn.py +10 -13
  124. machineconfig/scripts/python/archive/tmate_start.py +12 -16
  125. machineconfig/scripts/python/choose_wezterm_theme.py +12 -21
  126. machineconfig/scripts/python/cloud_copy.py +49 -104
  127. machineconfig/scripts/python/cloud_manager.py +77 -91
  128. machineconfig/scripts/python/cloud_mount.py +36 -46
  129. machineconfig/scripts/python/cloud_repo_sync.py +33 -79
  130. machineconfig/scripts/python/cloud_sync.py +35 -45
  131. machineconfig/scripts/python/croshell.py +70 -92
  132. machineconfig/scripts/python/devops.py +54 -113
  133. machineconfig/scripts/python/devops_add_identity.py +71 -109
  134. machineconfig/scripts/python/devops_add_ssh_key.py +42 -149
  135. machineconfig/scripts/python/devops_backup_retrieve.py +31 -119
  136. machineconfig/scripts/python/devops_devapps_install.py +6 -10
  137. machineconfig/scripts/python/devops_update_repos.py +5 -4
  138. machineconfig/scripts/python/dotfile.py +10 -7
  139. machineconfig/scripts/python/fire_agents.py +69 -0
  140. machineconfig/scripts/python/fire_jobs.py +117 -78
  141. machineconfig/scripts/python/ftpx.py +8 -8
  142. machineconfig/scripts/python/get_zellij_cmd.py +3 -3
  143. machineconfig/scripts/python/gh_models.py +6 -4
  144. machineconfig/scripts/python/helpers/__pycache__/__init__.cpython-311.pyc +0 -0
  145. machineconfig/scripts/python/helpers/__pycache__/__init__.cpython-313.pyc +0 -0
  146. machineconfig/scripts/python/helpers/__pycache__/cloud_helpers.cpython-311.pyc +0 -0
  147. machineconfig/scripts/python/helpers/__pycache__/helpers2.cpython-311.pyc +0 -0
  148. machineconfig/scripts/python/helpers/__pycache__/helpers4.cpython-311.pyc +0 -0
  149. machineconfig/scripts/python/helpers/__pycache__/helpers4.cpython-313.pyc +0 -0
  150. machineconfig/scripts/python/helpers/__pycache__/repo_sync_helpers.cpython-311.pyc +0 -0
  151. machineconfig/scripts/python/helpers/cloud_helpers.py +49 -46
  152. machineconfig/scripts/python/helpers/helpers2.py +26 -39
  153. machineconfig/scripts/python/helpers/helpers4.py +23 -35
  154. machineconfig/scripts/python/helpers/repo_sync_helpers.py +33 -67
  155. machineconfig/scripts/python/mount_nfs.py +8 -11
  156. machineconfig/scripts/python/mount_nw_drive.py +4 -4
  157. machineconfig/scripts/python/mount_ssh.py +2 -2
  158. machineconfig/scripts/python/onetimeshare.py +56 -57
  159. machineconfig/scripts/python/pomodoro.py +55 -55
  160. machineconfig/scripts/python/repos.py +72 -49
  161. machineconfig/scripts/python/scheduler.py +70 -53
  162. machineconfig/scripts/python/snapshot.py +21 -24
  163. machineconfig/scripts/python/start_slidev.py +6 -5
  164. machineconfig/scripts/python/start_terminals.py +3 -1
  165. machineconfig/scripts/python/viewer.py +5 -4
  166. machineconfig/scripts/python/viewer_template.py +138 -140
  167. machineconfig/scripts/python/wifi_conn.py +416 -62
  168. machineconfig/scripts/python/wsl_windows_transfer.py +18 -3
  169. machineconfig/scripts/windows/fire.ps1 +27 -15
  170. machineconfig/settings/linters/.pylintrc +6 -7
  171. machineconfig/settings/lvim/windows/config.lua +0 -0
  172. machineconfig/settings/shells/bash/init.sh +6 -0
  173. machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +7 -6
  174. machineconfig/settings/shells/pwsh/init.ps1 +6 -6
  175. machineconfig/settings/shells/wt/settings.json +51 -266
  176. machineconfig/setup_linux/nix/cli_installation.sh +9 -18
  177. machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +3 -6
  178. machineconfig/setup_linux/web_shortcuts/all.sh +5 -10
  179. machineconfig/setup_linux/web_shortcuts/ascii_art.sh +7 -14
  180. machineconfig/setup_linux/web_shortcuts/croshell.sh +6 -12
  181. machineconfig/setup_linux/web_shortcuts/interactive.sh +39 -70
  182. machineconfig/setup_linux/web_shortcuts/ssh.sh +8 -16
  183. machineconfig/setup_linux/web_shortcuts/update_system.sh +7 -14
  184. machineconfig/setup_windows/wt_and_pwsh/set_pwsh_theme.py +3 -6
  185. machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +27 -21
  186. machineconfig/utils/ai/browser_user_wrapper.py +60 -45
  187. machineconfig/utils/ai/generate_file_checklist.py +4 -7
  188. machineconfig/utils/ai/url2md.py +15 -7
  189. machineconfig/utils/cloud/onedrive/setup_oauth.py +59 -0
  190. machineconfig/utils/cloud/onedrive/transaction.py +796 -0
  191. machineconfig/utils/{utils_code.py → code.py} +25 -22
  192. machineconfig/utils/installer.py +81 -44
  193. machineconfig/utils/installer_utils/installer_abc.py +7 -6
  194. machineconfig/utils/installer_utils/installer_class.py +44 -25
  195. machineconfig/utils/io_save.py +107 -0
  196. machineconfig/utils/{utils_links.py → links.py} +28 -35
  197. machineconfig/utils/{utils_options.py → options.py} +14 -28
  198. machineconfig/utils/path.py +112 -0
  199. machineconfig/utils/path_reduced.py +608 -0
  200. machineconfig/utils/procs.py +134 -73
  201. machineconfig/utils/scheduling.py +312 -222
  202. machineconfig/utils/utils.py +19 -26
  203. machineconfig/utils/utils2.py +42 -0
  204. machineconfig/utils/utils5.py +84 -0
  205. machineconfig/utils/ve.py +49 -103
  206. {machineconfig-1.94.dist-info → machineconfig-1.96.dist-info}/METADATA +5 -3
  207. machineconfig-1.96.dist-info/RECORD +437 -0
  208. {machineconfig-1.94.dist-info → machineconfig-1.96.dist-info}/WHEEL +1 -1
  209. machineconfig/cluster/session_managers.py +0 -183
  210. machineconfig/cluster/templates/f.py +0 -4
  211. machineconfig/jobs/python/__pycache__/check_installations.cpython-311.pyc +0 -0
  212. machineconfig/jobs/python/__pycache__/checkout_version.cpython-311.pyc +0 -0
  213. machineconfig/jobs/python/__pycache__/python_ve_symlink.cpython-311.pyc +0 -0
  214. machineconfig/jobs/python/checkout_version.py +0 -123
  215. machineconfig/jobs/python/vscode/__pycache__/api.cpython-311.pyc +0 -0
  216. machineconfig/jobs/python/vscode/__pycache__/link_ve.cpython-311.pyc +0 -0
  217. machineconfig/jobs/python_custom_installers/__pycache__/hx.cpython-311.pyc +0 -0
  218. machineconfig/jobs/python_windows_installers/__pycache__/__init__.cpython-311.pyc +0 -0
  219. machineconfig/scripts/python/.mypy_cache/.gitignore +0 -2
  220. machineconfig/scripts/python/.mypy_cache/3.11/@plugins_snapshot.json +0 -1
  221. machineconfig/scripts/python/.mypy_cache/3.11/__future__.data.json +0 -1
  222. machineconfig/scripts/python/.mypy_cache/3.11/__future__.meta.json +0 -1
  223. machineconfig/scripts/python/.mypy_cache/3.11/_ast.data.json +0 -1
  224. machineconfig/scripts/python/.mypy_cache/3.11/_ast.meta.json +0 -1
  225. machineconfig/scripts/python/.mypy_cache/3.11/_bz2.data.json +0 -1
  226. machineconfig/scripts/python/.mypy_cache/3.11/_bz2.meta.json +0 -1
  227. machineconfig/scripts/python/.mypy_cache/3.11/_codecs.data.json +0 -1
  228. machineconfig/scripts/python/.mypy_cache/3.11/_codecs.meta.json +0 -1
  229. machineconfig/scripts/python/.mypy_cache/3.11/_collections_abc.data.json +0 -1
  230. machineconfig/scripts/python/.mypy_cache/3.11/_collections_abc.meta.json +0 -1
  231. machineconfig/scripts/python/.mypy_cache/3.11/_compression.data.json +0 -1
  232. machineconfig/scripts/python/.mypy_cache/3.11/_compression.meta.json +0 -1
  233. machineconfig/scripts/python/.mypy_cache/3.11/_decimal.data.json +0 -1
  234. machineconfig/scripts/python/.mypy_cache/3.11/_decimal.meta.json +0 -1
  235. machineconfig/scripts/python/.mypy_cache/3.11/_frozen_importlib.data.json +0 -1
  236. machineconfig/scripts/python/.mypy_cache/3.11/_frozen_importlib.meta.json +0 -1
  237. machineconfig/scripts/python/.mypy_cache/3.11/_frozen_importlib_external.data.json +0 -1
  238. machineconfig/scripts/python/.mypy_cache/3.11/_frozen_importlib_external.meta.json +0 -1
  239. machineconfig/scripts/python/.mypy_cache/3.11/_io.data.json +0 -1
  240. machineconfig/scripts/python/.mypy_cache/3.11/_io.meta.json +0 -1
  241. machineconfig/scripts/python/.mypy_cache/3.11/_locale.data.json +0 -1
  242. machineconfig/scripts/python/.mypy_cache/3.11/_locale.meta.json +0 -1
  243. machineconfig/scripts/python/.mypy_cache/3.11/_stat.data.json +0 -1
  244. machineconfig/scripts/python/.mypy_cache/3.11/_stat.meta.json +0 -1
  245. machineconfig/scripts/python/.mypy_cache/3.11/_struct.data.json +0 -1
  246. machineconfig/scripts/python/.mypy_cache/3.11/_struct.meta.json +0 -1
  247. machineconfig/scripts/python/.mypy_cache/3.11/_thread.data.json +0 -1
  248. machineconfig/scripts/python/.mypy_cache/3.11/_thread.meta.json +0 -1
  249. machineconfig/scripts/python/.mypy_cache/3.11/_typeshed/__init__.data.json +0 -1
  250. machineconfig/scripts/python/.mypy_cache/3.11/_typeshed/__init__.meta.json +0 -1
  251. machineconfig/scripts/python/.mypy_cache/3.11/_typeshed/importlib.data.json +0 -1
  252. machineconfig/scripts/python/.mypy_cache/3.11/_typeshed/importlib.meta.json +0 -1
  253. machineconfig/scripts/python/.mypy_cache/3.11/_warnings.data.json +0 -1
  254. machineconfig/scripts/python/.mypy_cache/3.11/_warnings.meta.json +0 -1
  255. machineconfig/scripts/python/.mypy_cache/3.11/_weakref.data.json +0 -1
  256. machineconfig/scripts/python/.mypy_cache/3.11/_weakref.meta.json +0 -1
  257. machineconfig/scripts/python/.mypy_cache/3.11/_weakrefset.data.json +0 -1
  258. machineconfig/scripts/python/.mypy_cache/3.11/_weakrefset.meta.json +0 -1
  259. machineconfig/scripts/python/.mypy_cache/3.11/abc.data.json +0 -1
  260. machineconfig/scripts/python/.mypy_cache/3.11/abc.meta.json +0 -1
  261. machineconfig/scripts/python/.mypy_cache/3.11/argparse.data.json +0 -1
  262. machineconfig/scripts/python/.mypy_cache/3.11/argparse.meta.json +0 -1
  263. machineconfig/scripts/python/.mypy_cache/3.11/ast.data.json +0 -1
  264. machineconfig/scripts/python/.mypy_cache/3.11/ast.meta.json +0 -1
  265. machineconfig/scripts/python/.mypy_cache/3.11/binascii.data.json +0 -1
  266. machineconfig/scripts/python/.mypy_cache/3.11/binascii.meta.json +0 -1
  267. machineconfig/scripts/python/.mypy_cache/3.11/builtins.data.json +0 -1
  268. machineconfig/scripts/python/.mypy_cache/3.11/builtins.meta.json +0 -1
  269. machineconfig/scripts/python/.mypy_cache/3.11/bz2.data.json +0 -1
  270. machineconfig/scripts/python/.mypy_cache/3.11/bz2.meta.json +0 -1
  271. machineconfig/scripts/python/.mypy_cache/3.11/calendar.data.json +0 -1
  272. machineconfig/scripts/python/.mypy_cache/3.11/calendar.meta.json +0 -1
  273. machineconfig/scripts/python/.mypy_cache/3.11/codecs.data.json +0 -1
  274. machineconfig/scripts/python/.mypy_cache/3.11/codecs.meta.json +0 -1
  275. machineconfig/scripts/python/.mypy_cache/3.11/collections/__init__.data.json +0 -1
  276. machineconfig/scripts/python/.mypy_cache/3.11/collections/__init__.meta.json +0 -1
  277. machineconfig/scripts/python/.mypy_cache/3.11/collections/abc.data.json +0 -1
  278. machineconfig/scripts/python/.mypy_cache/3.11/collections/abc.meta.json +0 -1
  279. machineconfig/scripts/python/.mypy_cache/3.11/configparser.data.json +0 -1
  280. machineconfig/scripts/python/.mypy_cache/3.11/configparser.meta.json +0 -1
  281. machineconfig/scripts/python/.mypy_cache/3.11/contextlib.data.json +0 -1
  282. machineconfig/scripts/python/.mypy_cache/3.11/contextlib.meta.json +0 -1
  283. machineconfig/scripts/python/.mypy_cache/3.11/dataclasses.data.json +0 -1
  284. machineconfig/scripts/python/.mypy_cache/3.11/dataclasses.meta.json +0 -1
  285. machineconfig/scripts/python/.mypy_cache/3.11/datetime.data.json +0 -1
  286. machineconfig/scripts/python/.mypy_cache/3.11/datetime.meta.json +0 -1
  287. machineconfig/scripts/python/.mypy_cache/3.11/decimal.data.json +0 -1
  288. machineconfig/scripts/python/.mypy_cache/3.11/decimal.meta.json +0 -1
  289. machineconfig/scripts/python/.mypy_cache/3.11/dis.data.json +0 -1
  290. machineconfig/scripts/python/.mypy_cache/3.11/dis.meta.json +0 -1
  291. machineconfig/scripts/python/.mypy_cache/3.11/email/__init__.data.json +0 -1
  292. machineconfig/scripts/python/.mypy_cache/3.11/email/__init__.meta.json +0 -1
  293. machineconfig/scripts/python/.mypy_cache/3.11/email/_policybase.data.json +0 -1
  294. machineconfig/scripts/python/.mypy_cache/3.11/email/_policybase.meta.json +0 -1
  295. machineconfig/scripts/python/.mypy_cache/3.11/email/charset.data.json +0 -1
  296. machineconfig/scripts/python/.mypy_cache/3.11/email/charset.meta.json +0 -1
  297. machineconfig/scripts/python/.mypy_cache/3.11/email/contentmanager.data.json +0 -1
  298. machineconfig/scripts/python/.mypy_cache/3.11/email/contentmanager.meta.json +0 -1
  299. machineconfig/scripts/python/.mypy_cache/3.11/email/errors.data.json +0 -1
  300. machineconfig/scripts/python/.mypy_cache/3.11/email/errors.meta.json +0 -1
  301. machineconfig/scripts/python/.mypy_cache/3.11/email/header.data.json +0 -1
  302. machineconfig/scripts/python/.mypy_cache/3.11/email/header.meta.json +0 -1
  303. machineconfig/scripts/python/.mypy_cache/3.11/email/message.data.json +0 -1
  304. machineconfig/scripts/python/.mypy_cache/3.11/email/message.meta.json +0 -1
  305. machineconfig/scripts/python/.mypy_cache/3.11/email/policy.data.json +0 -1
  306. machineconfig/scripts/python/.mypy_cache/3.11/email/policy.meta.json +0 -1
  307. machineconfig/scripts/python/.mypy_cache/3.11/enum.data.json +0 -1
  308. machineconfig/scripts/python/.mypy_cache/3.11/enum.meta.json +0 -1
  309. machineconfig/scripts/python/.mypy_cache/3.11/fnmatch.data.json +0 -1
  310. machineconfig/scripts/python/.mypy_cache/3.11/fnmatch.meta.json +0 -1
  311. machineconfig/scripts/python/.mypy_cache/3.11/functools.data.json +0 -1
  312. machineconfig/scripts/python/.mypy_cache/3.11/functools.meta.json +0 -1
  313. machineconfig/scripts/python/.mypy_cache/3.11/gc.data.json +0 -1
  314. machineconfig/scripts/python/.mypy_cache/3.11/gc.meta.json +0 -1
  315. machineconfig/scripts/python/.mypy_cache/3.11/genericpath.data.json +0 -1
  316. machineconfig/scripts/python/.mypy_cache/3.11/genericpath.meta.json +0 -1
  317. machineconfig/scripts/python/.mypy_cache/3.11/getpass.data.json +0 -1
  318. machineconfig/scripts/python/.mypy_cache/3.11/getpass.meta.json +0 -1
  319. machineconfig/scripts/python/.mypy_cache/3.11/git/__init__.data.json +0 -1
  320. machineconfig/scripts/python/.mypy_cache/3.11/git/__init__.meta.json +0 -1
  321. machineconfig/scripts/python/.mypy_cache/3.11/git/cmd.data.json +0 -1
  322. machineconfig/scripts/python/.mypy_cache/3.11/git/cmd.meta.json +0 -1
  323. machineconfig/scripts/python/.mypy_cache/3.11/git/compat.data.json +0 -1
  324. machineconfig/scripts/python/.mypy_cache/3.11/git/compat.meta.json +0 -1
  325. machineconfig/scripts/python/.mypy_cache/3.11/git/config.data.json +0 -1
  326. machineconfig/scripts/python/.mypy_cache/3.11/git/config.meta.json +0 -1
  327. machineconfig/scripts/python/.mypy_cache/3.11/git/db.data.json +0 -1
  328. machineconfig/scripts/python/.mypy_cache/3.11/git/db.meta.json +0 -1
  329. machineconfig/scripts/python/.mypy_cache/3.11/git/diff.data.json +0 -1
  330. machineconfig/scripts/python/.mypy_cache/3.11/git/diff.meta.json +0 -1
  331. machineconfig/scripts/python/.mypy_cache/3.11/git/exc.data.json +0 -1
  332. machineconfig/scripts/python/.mypy_cache/3.11/git/exc.meta.json +0 -1
  333. machineconfig/scripts/python/.mypy_cache/3.11/git/index/__init__.data.json +0 -1
  334. machineconfig/scripts/python/.mypy_cache/3.11/git/index/__init__.meta.json +0 -1
  335. machineconfig/scripts/python/.mypy_cache/3.11/git/index/base.data.json +0 -1
  336. machineconfig/scripts/python/.mypy_cache/3.11/git/index/base.meta.json +0 -1
  337. machineconfig/scripts/python/.mypy_cache/3.11/git/index/fun.data.json +0 -1
  338. machineconfig/scripts/python/.mypy_cache/3.11/git/index/fun.meta.json +0 -1
  339. machineconfig/scripts/python/.mypy_cache/3.11/git/index/typ.data.json +0 -1
  340. machineconfig/scripts/python/.mypy_cache/3.11/git/index/typ.meta.json +0 -1
  341. machineconfig/scripts/python/.mypy_cache/3.11/git/index/util.data.json +0 -1
  342. machineconfig/scripts/python/.mypy_cache/3.11/git/index/util.meta.json +0 -1
  343. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/__init__.data.json +0 -1
  344. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/__init__.meta.json +0 -1
  345. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/base.data.json +0 -1
  346. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/base.meta.json +0 -1
  347. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/blob.data.json +0 -1
  348. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/blob.meta.json +0 -1
  349. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/commit.data.json +0 -1
  350. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/commit.meta.json +0 -1
  351. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/fun.data.json +0 -1
  352. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/fun.meta.json +0 -1
  353. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/__init__.data.json +0 -1
  354. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/__init__.meta.json +0 -1
  355. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/base.data.json +0 -1
  356. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/base.meta.json +0 -1
  357. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/root.data.json +0 -1
  358. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/root.meta.json +0 -1
  359. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/util.data.json +0 -1
  360. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/submodule/util.meta.json +0 -1
  361. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/tag.data.json +0 -1
  362. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/tag.meta.json +0 -1
  363. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/tree.data.json +0 -1
  364. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/tree.meta.json +0 -1
  365. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/util.data.json +0 -1
  366. machineconfig/scripts/python/.mypy_cache/3.11/git/objects/util.meta.json +0 -1
  367. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/__init__.data.json +0 -1
  368. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/__init__.meta.json +0 -1
  369. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/head.data.json +0 -1
  370. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/head.meta.json +0 -1
  371. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/log.data.json +0 -1
  372. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/log.meta.json +0 -1
  373. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/reference.data.json +0 -1
  374. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/reference.meta.json +0 -1
  375. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/remote.data.json +0 -1
  376. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/remote.meta.json +0 -1
  377. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/symbolic.data.json +0 -1
  378. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/symbolic.meta.json +0 -1
  379. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/tag.data.json +0 -1
  380. machineconfig/scripts/python/.mypy_cache/3.11/git/refs/tag.meta.json +0 -1
  381. machineconfig/scripts/python/.mypy_cache/3.11/git/remote.data.json +0 -1
  382. machineconfig/scripts/python/.mypy_cache/3.11/git/remote.meta.json +0 -1
  383. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/__init__.data.json +0 -1
  384. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/__init__.meta.json +0 -1
  385. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/base.data.json +0 -1
  386. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/base.meta.json +0 -1
  387. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/fun.data.json +0 -1
  388. machineconfig/scripts/python/.mypy_cache/3.11/git/repo/fun.meta.json +0 -1
  389. machineconfig/scripts/python/.mypy_cache/3.11/git/types.data.json +0 -1
  390. machineconfig/scripts/python/.mypy_cache/3.11/git/types.meta.json +0 -1
  391. machineconfig/scripts/python/.mypy_cache/3.11/git/util.data.json +0 -1
  392. machineconfig/scripts/python/.mypy_cache/3.11/git/util.meta.json +0 -1
  393. machineconfig/scripts/python/.mypy_cache/3.11/glob.data.json +0 -1
  394. machineconfig/scripts/python/.mypy_cache/3.11/glob.meta.json +0 -1
  395. machineconfig/scripts/python/.mypy_cache/3.11/gzip.data.json +0 -1
  396. machineconfig/scripts/python/.mypy_cache/3.11/gzip.meta.json +0 -1
  397. machineconfig/scripts/python/.mypy_cache/3.11/importlib/__init__.data.json +0 -1
  398. machineconfig/scripts/python/.mypy_cache/3.11/importlib/__init__.meta.json +0 -1
  399. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_abc.data.json +0 -1
  400. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_abc.meta.json +0 -1
  401. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_bootstrap.data.json +0 -1
  402. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_bootstrap.meta.json +0 -1
  403. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_bootstrap_external.data.json +0 -1
  404. machineconfig/scripts/python/.mypy_cache/3.11/importlib/_bootstrap_external.meta.json +0 -1
  405. machineconfig/scripts/python/.mypy_cache/3.11/importlib/abc.data.json +0 -1
  406. machineconfig/scripts/python/.mypy_cache/3.11/importlib/abc.meta.json +0 -1
  407. machineconfig/scripts/python/.mypy_cache/3.11/importlib/machinery.data.json +0 -1
  408. machineconfig/scripts/python/.mypy_cache/3.11/importlib/machinery.meta.json +0 -1
  409. machineconfig/scripts/python/.mypy_cache/3.11/importlib/metadata/__init__.data.json +0 -1
  410. machineconfig/scripts/python/.mypy_cache/3.11/importlib/metadata/__init__.meta.json +0 -1
  411. machineconfig/scripts/python/.mypy_cache/3.11/importlib/metadata/_meta.data.json +0 -1
  412. machineconfig/scripts/python/.mypy_cache/3.11/importlib/metadata/_meta.meta.json +0 -1
  413. machineconfig/scripts/python/.mypy_cache/3.11/importlib/readers.data.json +0 -1
  414. machineconfig/scripts/python/.mypy_cache/3.11/importlib/readers.meta.json +0 -1
  415. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/__init__.data.json +0 -1
  416. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/__init__.meta.json +0 -1
  417. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/_common.data.json +0 -1
  418. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/_common.meta.json +0 -1
  419. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/abc.data.json +0 -1
  420. machineconfig/scripts/python/.mypy_cache/3.11/importlib/resources/abc.meta.json +0 -1
  421. machineconfig/scripts/python/.mypy_cache/3.11/inspect.data.json +0 -1
  422. machineconfig/scripts/python/.mypy_cache/3.11/inspect.meta.json +0 -1
  423. machineconfig/scripts/python/.mypy_cache/3.11/io.data.json +0 -1
  424. machineconfig/scripts/python/.mypy_cache/3.11/io.meta.json +0 -1
  425. machineconfig/scripts/python/.mypy_cache/3.11/itertools.data.json +0 -1
  426. machineconfig/scripts/python/.mypy_cache/3.11/itertools.meta.json +0 -1
  427. machineconfig/scripts/python/.mypy_cache/3.11/locale.data.json +0 -1
  428. machineconfig/scripts/python/.mypy_cache/3.11/locale.meta.json +0 -1
  429. machineconfig/scripts/python/.mypy_cache/3.11/logging/__init__.data.json +0 -1
  430. machineconfig/scripts/python/.mypy_cache/3.11/logging/__init__.meta.json +0 -1
  431. machineconfig/scripts/python/.mypy_cache/3.11/mimetypes.data.json +0 -1
  432. machineconfig/scripts/python/.mypy_cache/3.11/mimetypes.meta.json +0 -1
  433. machineconfig/scripts/python/.mypy_cache/3.11/mmap.data.json +0 -1
  434. machineconfig/scripts/python/.mypy_cache/3.11/mmap.meta.json +0 -1
  435. machineconfig/scripts/python/.mypy_cache/3.11/numbers.data.json +0 -1
  436. machineconfig/scripts/python/.mypy_cache/3.11/numbers.meta.json +0 -1
  437. machineconfig/scripts/python/.mypy_cache/3.11/opcode.data.json +0 -1
  438. machineconfig/scripts/python/.mypy_cache/3.11/opcode.meta.json +0 -1
  439. machineconfig/scripts/python/.mypy_cache/3.11/os/__init__.data.json +0 -1
  440. machineconfig/scripts/python/.mypy_cache/3.11/os/__init__.meta.json +0 -1
  441. machineconfig/scripts/python/.mypy_cache/3.11/os/path.data.json +0 -1
  442. machineconfig/scripts/python/.mypy_cache/3.11/os/path.meta.json +0 -1
  443. machineconfig/scripts/python/.mypy_cache/3.11/pathlib.data.json +0 -1
  444. machineconfig/scripts/python/.mypy_cache/3.11/pathlib.meta.json +0 -1
  445. machineconfig/scripts/python/.mypy_cache/3.11/platform.data.json +0 -1
  446. machineconfig/scripts/python/.mypy_cache/3.11/platform.meta.json +0 -1
  447. machineconfig/scripts/python/.mypy_cache/3.11/posixpath.data.json +0 -1
  448. machineconfig/scripts/python/.mypy_cache/3.11/posixpath.meta.json +0 -1
  449. machineconfig/scripts/python/.mypy_cache/3.11/re.data.json +0 -1
  450. machineconfig/scripts/python/.mypy_cache/3.11/re.meta.json +0 -1
  451. machineconfig/scripts/python/.mypy_cache/3.11/resource.data.json +0 -1
  452. machineconfig/scripts/python/.mypy_cache/3.11/resource.meta.json +0 -1
  453. machineconfig/scripts/python/.mypy_cache/3.11/shlex.data.json +0 -1
  454. machineconfig/scripts/python/.mypy_cache/3.11/shlex.meta.json +0 -1
  455. machineconfig/scripts/python/.mypy_cache/3.11/shutil.data.json +0 -1
  456. machineconfig/scripts/python/.mypy_cache/3.11/shutil.meta.json +0 -1
  457. machineconfig/scripts/python/.mypy_cache/3.11/signal.data.json +0 -1
  458. machineconfig/scripts/python/.mypy_cache/3.11/signal.meta.json +0 -1
  459. machineconfig/scripts/python/.mypy_cache/3.11/src/__init__.data.json +0 -1
  460. machineconfig/scripts/python/.mypy_cache/3.11/src/__init__.meta.json +0 -1
  461. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/__init__.data.json +0 -1
  462. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/__init__.meta.json +0 -1
  463. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/scripts/__init__.data.json +0 -1
  464. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/scripts/__init__.meta.json +0 -1
  465. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/scripts/python/__init__.data.json +0 -1
  466. machineconfig/scripts/python/.mypy_cache/3.11/src/machineconfig/scripts/python/__init__.meta.json +0 -1
  467. machineconfig/scripts/python/.mypy_cache/3.11/sre_compile.data.json +0 -1
  468. machineconfig/scripts/python/.mypy_cache/3.11/sre_compile.meta.json +0 -1
  469. machineconfig/scripts/python/.mypy_cache/3.11/sre_constants.data.json +0 -1
  470. machineconfig/scripts/python/.mypy_cache/3.11/sre_constants.meta.json +0 -1
  471. machineconfig/scripts/python/.mypy_cache/3.11/sre_parse.data.json +0 -1
  472. machineconfig/scripts/python/.mypy_cache/3.11/sre_parse.meta.json +0 -1
  473. machineconfig/scripts/python/.mypy_cache/3.11/stat.data.json +0 -1
  474. machineconfig/scripts/python/.mypy_cache/3.11/stat.meta.json +0 -1
  475. machineconfig/scripts/python/.mypy_cache/3.11/string.data.json +0 -1
  476. machineconfig/scripts/python/.mypy_cache/3.11/string.meta.json +0 -1
  477. machineconfig/scripts/python/.mypy_cache/3.11/struct.data.json +0 -1
  478. machineconfig/scripts/python/.mypy_cache/3.11/struct.meta.json +0 -1
  479. machineconfig/scripts/python/.mypy_cache/3.11/subprocess.data.json +0 -1
  480. machineconfig/scripts/python/.mypy_cache/3.11/subprocess.meta.json +0 -1
  481. machineconfig/scripts/python/.mypy_cache/3.11/sys/__init__.data.json +0 -1
  482. machineconfig/scripts/python/.mypy_cache/3.11/sys/__init__.meta.json +0 -1
  483. machineconfig/scripts/python/.mypy_cache/3.11/tarfile.data.json +0 -1
  484. machineconfig/scripts/python/.mypy_cache/3.11/tarfile.meta.json +0 -1
  485. machineconfig/scripts/python/.mypy_cache/3.11/tempfile.data.json +0 -1
  486. machineconfig/scripts/python/.mypy_cache/3.11/tempfile.meta.json +0 -1
  487. machineconfig/scripts/python/.mypy_cache/3.11/textwrap.data.json +0 -1
  488. machineconfig/scripts/python/.mypy_cache/3.11/textwrap.meta.json +0 -1
  489. machineconfig/scripts/python/.mypy_cache/3.11/threading.data.json +0 -1
  490. machineconfig/scripts/python/.mypy_cache/3.11/threading.meta.json +0 -1
  491. machineconfig/scripts/python/.mypy_cache/3.11/time.data.json +0 -1
  492. machineconfig/scripts/python/.mypy_cache/3.11/time.meta.json +0 -1
  493. machineconfig/scripts/python/.mypy_cache/3.11/types.data.json +0 -1
  494. machineconfig/scripts/python/.mypy_cache/3.11/types.meta.json +0 -1
  495. machineconfig/scripts/python/.mypy_cache/3.11/typing.data.json +0 -1
  496. machineconfig/scripts/python/.mypy_cache/3.11/typing.meta.json +0 -1
  497. machineconfig/scripts/python/.mypy_cache/3.11/typing_extensions.data.json +0 -1
  498. machineconfig/scripts/python/.mypy_cache/3.11/typing_extensions.meta.json +0 -1
  499. machineconfig/scripts/python/.mypy_cache/3.11/urllib/__init__.data.json +0 -1
  500. machineconfig/scripts/python/.mypy_cache/3.11/urllib/__init__.meta.json +0 -1
  501. machineconfig/scripts/python/.mypy_cache/3.11/urllib/parse.data.json +0 -1
  502. machineconfig/scripts/python/.mypy_cache/3.11/urllib/parse.meta.json +0 -1
  503. machineconfig/scripts/python/.mypy_cache/3.11/uuid.data.json +0 -1
  504. machineconfig/scripts/python/.mypy_cache/3.11/uuid.meta.json +0 -1
  505. machineconfig/scripts/python/.mypy_cache/3.11/warnings.data.json +0 -1
  506. machineconfig/scripts/python/.mypy_cache/3.11/warnings.meta.json +0 -1
  507. machineconfig/scripts/python/.mypy_cache/3.11/weakref.data.json +0 -1
  508. machineconfig/scripts/python/.mypy_cache/3.11/weakref.meta.json +0 -1
  509. machineconfig/scripts/python/.mypy_cache/3.11/zipfile/__init__.data.json +0 -1
  510. machineconfig/scripts/python/.mypy_cache/3.11/zipfile/__init__.meta.json +0 -1
  511. machineconfig/scripts/python/.mypy_cache/3.11/zlib.data.json +0 -1
  512. machineconfig/scripts/python/.mypy_cache/3.11/zlib.meta.json +0 -1
  513. machineconfig/scripts/python/.mypy_cache/CACHEDIR.TAG +0 -3
  514. machineconfig/scripts/python/__pycache__/cloud_repo_sync.cpython-311.pyc +0 -0
  515. machineconfig/scripts/python/__pycache__/gh_models.cpython-311.pyc +0 -0
  516. machineconfig/scripts/python/__pycache__/url2md.cpython-311.pyc +0 -0
  517. machineconfig/scripts/python/__pycache__/viewer.cpython-311.pyc +0 -0
  518. machineconfig/scripts/python/__pycache__/vscode_api.cpython-311.pyc +0 -0
  519. machineconfig/settings/__pycache__/__init__.cpython-311.pyc +0 -0
  520. machineconfig/settings/linters/.ruff_cache/.gitignore +0 -2
  521. machineconfig/settings/linters/.ruff_cache/CACHEDIR.TAG +0 -1
  522. machineconfig/settings/shells/ipy/profiles/default/__pycache__/__init__.cpython-311.pyc +0 -0
  523. machineconfig/settings/shells/ipy/profiles/default/startup/__pycache__/__init__.cpython-311.pyc +0 -0
  524. machineconfig/settings/shells/ipy/profiles/default/startup/__pycache__/playext.cpython-311.pyc +0 -0
  525. machineconfig/utils/utils_path.py +0 -151
  526. machineconfig/utils/ve_utils/ve1.py +0 -111
  527. machineconfig/utils/ve_utils/ve2.py +0 -142
  528. machineconfig-1.94.dist-info/RECORD +0 -710
  529. {machineconfig-1.94.dist-info → machineconfig-1.96.dist-info}/top_level.txt +0 -0
@@ -3,126 +3,88 @@
3
3
 
4
4
 
5
5
  # from platform import system
6
- from crocodile.file_management import P
7
- from machineconfig.utils.utils_options import display_options
6
+ from machineconfig.utils.path_reduced import P as PathExtended, modify_text
7
+ from machineconfig.utils.options import display_options
8
+ from rich.panel import Panel
9
+ from rich.text import Text
10
+
11
+ BOX_WIDTH = 150 # width for box drawing
8
12
 
9
13
 
10
14
  def main():
11
- print(f"""
12
- ╔{'═' * 70}╗
13
- ║ 🔑 SSH IDENTITY MANAGEMENT ║
14
- ╚{'═' * 70}╝
15
- """)
16
-
17
- print(f"""
18
- ╭{'─' * 70}╮
19
- │ 🔍 Searching for existing SSH keys... │
20
- ╰{'─' * 70}╯
21
- """)
22
-
23
- private_keys = P.home().joinpath(".ssh").search("*.pub").apply(lambda x: x.with_name(x.stem)).filter(lambda x: x.exists())
24
-
15
+ title = "🔑 SSH IDENTITY MANAGEMENT"
16
+ print(Panel(Text(title, justify="center"), expand=False))
17
+
18
+ print(Panel("🔍 Searching for existing SSH keys...", expand=False))
19
+
20
+ private_keys = PathExtended.home().joinpath(".ssh").search("*.pub").apply(lambda x: x.with_name(x.stem)).filter(lambda x: x.exists())
21
+
25
22
  if private_keys:
26
- print(f"""
27
- ╭{'─' * 70}╮
28
- │ ✅ Found {len(private_keys)} SSH private key(s) │
29
- ╰{'─' * 70}╯
30
- """)
23
+ print(Panel(f"✅ Found {len(private_keys)} SSH private key(s)", expand=False))
31
24
  else:
32
- print(f"""
33
- ╭{'─' * 70}╮
34
- │ ⚠️ No SSH private keys found │
35
- ╰{'─' * 70}╯
36
- """)
37
-
25
+ print(Panel("⚠️ No SSH private keys found", expand=False))
26
+
38
27
  choice = display_options(msg="Path to private key to be used when ssh'ing: ", options=private_keys.apply(str).list + ["I have the path to the key file", "I want to paste the key itself"])
39
-
28
+
40
29
  if choice == "I have the path to the key file":
41
- print(f"""
42
- ╭{'─' * 70}╮
43
- 📄 Please enter the path to your private key file │
44
- ╰{'─' * 70}╯
45
- """)
46
- path_to_key = P(input("📋 Input path here: ")).expanduser().absolute()
47
- print(f"""
48
- ╭{'─' * 70}╮
49
- │ 📂 Using key from custom path: {path_to_key} │
50
- ╰{'─' * 70}╯
51
- """)
52
-
30
+ print(Panel("📄 Please enter the path to your private key file", expand=False))
31
+ path_to_key = PathExtended(input("📋 Input path here: ")).expanduser().absolute()
32
+ print(Panel(f"📂 Using key from custom path: {path_to_key}", expand=False))
33
+
53
34
  elif choice == "I want to paste the key itself":
54
- print(f"""
55
- ╭{'─' * 70}╮
56
- │ 📋 Please provide a filename and paste the private key content │
57
- ╰{'─' * 70}╯
58
- """)
35
+ print(Panel("📋 Please provide a filename and paste the private key content", expand=False))
59
36
  key_filename = input("📝 File name (default: my_pasted_key): ") or "my_pasted_key"
60
- path_to_key = P.home().joinpath(f".ssh/{key_filename}").write_text(input("🔑 Paste the private key here: "))
61
- print(f"""
62
- ╭{'─' * 70}╮
63
- 💾 Key saved to: {path_to_key} │
64
- ╰{'─' * 70}╯
65
- """)
66
-
67
- elif isinstance(choice, str):
68
- path_to_key = P(choice)
69
- print(f"""
70
- ╭{'─' * 70}╮
71
- │ 🔑 Using selected key: {path_to_key.name} │
72
- ╰{'─' * 70}╯
73
- """)
74
-
75
- else:
76
- print(f"""
77
- ╔{'═' * 70}╗
78
- ║ ❌ ERROR: Invalid choice ║
79
- ║ The selected option is not supported: {choice} ║
80
- ╚{'═' * 70}╝
81
- """)
37
+ path_to_key = PathExtended.home().joinpath(f".ssh/{key_filename}").write_text(input("🔑 Paste the private key here: "))
38
+ print(Panel(f"💾 Key saved to: {path_to_key}", expand=False))
39
+
40
+ elif isinstance(choice, str):
41
+ path_to_key = PathExtended(choice)
42
+ print(Panel(f"🔑 Using selected key: {path_to_key.name}", expand=False))
43
+
44
+ else:
45
+ error_message = f"❌ ERROR: Invalid choice\nThe selected option is not supported: {choice}"
46
+ print(Panel(Text(error_message, justify="center"), expand=False, border_style="red"))
82
47
  raise NotImplementedError(f"Choice {choice} not supported")
83
-
48
+
84
49
  txt = f"IdentityFile {path_to_key.collapseuser().as_posix()}" # adds this id for all connections, no host specified.
85
- config_path = P.home().joinpath(".ssh/config")
86
-
87
- print(f"""
88
- ╭{'─' * 70}╮
89
- 📝 Updating SSH configuration... │
90
- ╰{'─' * 70}╯
91
- """)
92
-
93
- if config_path.exists():
94
- config_path.modify_text(txt_search=txt, txt_alt=txt, replace_line=True, notfound_append=True, prepend=True) # note that Identity line must come on top of config file otherwise it won't work, hence `prepend=True`
95
- print(f"""
96
- ╭{'─' * 70}╮
97
- ✏️ Updated existing SSH config file
98
- ╰{'─' * 70}╯
99
- """)
100
- else:
101
- config_path.write_text(txt)
102
- print(f"""
103
- ╭{'─' * 70}╮
104
- │ 📄 Created new SSH config file │
105
- ╰{'─' * 70}╯
106
- """)
107
-
108
- program = f"""echo '
109
- ╔{'═' * 70}╗
110
- ✅ SSH IDENTITY CONFIGURATION COMPLETE
111
- ╠{'═' * 70}╣
112
- Identity added to SSH config file ║
113
- ║ Consider reloading the SSH config to apply changes ║
114
- ╚{'═' * 70}╝
115
- '"""
116
-
117
- print(f"""
118
- ╔{'═' * 70}
119
- ║ 🎉 CONFIGURATION SUCCESSFUL ║
120
- {'═' * 70}
121
- Identity added: {path_to_key.name}
122
- ║ Config file: {config_path}
123
- ╚{'═' * 70}╝
124
- """)
125
-
50
+ config_path = PathExtended.home().joinpath(".ssh/config")
51
+
52
+ print(Panel("📝 Updating SSH configuration...", expand=False))
53
+
54
+ # Inline the previous P.modify_text behavior (now deprecated):
55
+ # - If file doesn't exist, seed content with txt_search
56
+ # - Then run modify_text to replace/append accordingly and write back
57
+ if config_path.exists():
58
+ current = config_path.read_text()
59
+ print(Panel("✏️ Updated existing SSH config file", expand=False))
60
+ else:
61
+ current = txt
62
+ print(Panel("📄 Created new SSH config file", expand=False))
63
+ new_content = modify_text(
64
+ txt_raw=current,
65
+ txt_search=txt,
66
+ txt_alt=txt,
67
+ replace_line=True,
68
+ notfound_append=True,
69
+ prepend=True,
70
+ )
71
+ config_path.write_text(new_content)
72
+
73
+ panel_complete = Panel(
74
+ Text(
75
+ "✅ SSH IDENTITY CONFIGURATION COMPLETE\n"
76
+ "Identity added to SSH config file\n"
77
+ "Consider reloading the SSH config to apply changes",
78
+ justify="center"
79
+ ),
80
+ expand=False,
81
+ border_style="green"
82
+ )
83
+ program = f"echo '{panel_complete}'"
84
+
85
+ success_message = f"🎉 CONFIGURATION SUCCESSFUL\nIdentity added: {path_to_key.name}\nConfig file: {config_path}"
86
+ print(Panel(Text(success_message, justify="center"), expand=False, border_style="green"))
87
+
126
88
  return program
127
89
 
128
90
 
@@ -4,72 +4,39 @@
4
4
 
5
5
  from platform import system
6
6
  from machineconfig.utils.utils import LIBRARY_ROOT, display_options
7
- from crocodile.file_management import P
7
+ from machineconfig.utils.path_reduced import P as PathExtended
8
+ from rich.console import Console
9
+ from rich.panel import Panel
10
+ from rich import box # Import box
8
11
 
9
12
 
10
- def get_add_ssh_key_script(path_to_key: P):
11
- print(f"""
12
- ╔{'═' * 70}╗
13
- 🔑 SSH KEY CONFIGURATION ║
14
- ╚{'═' * 70}╝
15
- """)
16
-
17
- if system() == "Linux":
18
- authorized_keys = P.home().joinpath(".ssh/authorized_keys")
19
- print(f"""
20
- ╭{'─' * 70}╮
21
- 🐧 Linux SSH configuration
22
- │ 📄 Authorized keys file: {authorized_keys} │
23
- ╰{'─' * 70}╯
24
- """)
25
- elif system() == "Windows":
26
- authorized_keys = P("C:/ProgramData/ssh/administrators_authorized_keys")
27
- print(f"""
28
- ╭{'─' * 70}╮
29
- │ 🪟 Windows SSH configuration │
30
- │ 📄 Authorized keys file: {authorized_keys} │
31
- ╰{'─' * 70}╯
32
- """)
33
- else:
34
- print(f"""
35
- ╔{'═' * 70}╗
36
- ║ ❌ ERROR: Unsupported operating system ║
37
- ║ Only Linux and Windows are supported ║
38
- ╚{'═' * 70}╝
39
- """)
13
+ console = Console()
14
+
15
+
16
+ def get_add_ssh_key_script(path_to_key: PathExtended):
17
+ console.print(Panel("🔑 SSH KEY CONFIGURATION", title="[bold blue]SSH Setup[/bold blue]"))
18
+
19
+ if system() == "Linux":
20
+ authorized_keys = PathExtended.home().joinpath(".ssh/authorized_keys")
21
+ console.print(Panel(f"🐧 Linux SSH configuration\n📄 Authorized keys file: {authorized_keys}", title="[bold blue]System Info[/bold blue]"))
22
+ elif system() == "Windows":
23
+ authorized_keys = PathExtended("C:/ProgramData/ssh/administrators_authorized_keys")
24
+ console.print(Panel(f"🪟 Windows SSH configuration\n📄 Authorized keys file: {authorized_keys}", title="[bold blue]System Info[/bold blue]"))
25
+ else:
26
+ console.print(Panel("❌ ERROR: Unsupported operating system\nOnly Linux and Windows are supported", title="[bold red]Error[/bold red]"))
40
27
  raise NotImplementedError
41
28
 
42
29
  if authorized_keys.exists():
43
30
  split = "\n"
44
31
  keys_text = authorized_keys.read_text().split(split)
45
32
  key_count = len([k for k in keys_text if k.strip()])
46
-
47
- print(f"""
48
- ╭{'─' * 70}╮
49
- │ 🔍 Current SSH authorization status │
50
- │ ✅ Found {key_count} authorized key(s) │
51
- ╰{'─' * 70}╯
52
- """)
53
-
33
+ console.print(Panel(f"🔍 Current SSH authorization status\n✅ Found {key_count} authorized key(s)", title="[bold blue]Status[/bold blue]"))
34
+
54
35
  if path_to_key.read_text() in authorized_keys.read_text():
55
- print(f"""
56
- ╔{'═' * 70}╗
57
- ║ ⚠️ Key already authorized ║
58
- ╠{'═' * 70}╣
59
- ║ Key: {path_to_key.name}
60
- ║ Status: Already present in authorized_keys file
61
- ║ No action required
62
- ╚{'═' * 70}╝
63
- """)
36
+ console.print(Panel(f"⚠️ Key already authorized\nKey: {path_to_key.name}\nStatus: Already present in authorized_keys file\nNo action required", title="[bold yellow]Warning[/bold yellow]"))
64
37
  program = ""
65
38
  else:
66
- print(f"""
67
- ╭{'─' * 70}╮
68
- │ ➕ Adding new SSH key to authorized keys │
69
- │ 🔑 Key file: {path_to_key.name} │
70
- ╰{'─' * 70}╯
71
- """)
72
-
39
+ console.print(Panel(f"➕ Adding new SSH key to authorized keys\n🔑 Key file: {path_to_key.name}", title="[bold blue]Action[/bold blue]"))
73
40
  if system() == "Linux":
74
41
  program = f"cat {path_to_key} >> ~/.ssh/authorized_keys"
75
42
  elif system() == "Windows":
@@ -78,34 +45,18 @@ def get_add_ssh_key_script(path_to_key: P):
78
45
  place_holder = r'$sshfile = "$env:USERPROFILE\.ssh\pubkey.pub"'
79
46
  assert place_holder in program, f"This section performs string manipulation on the script {program_path} to add the key to the authorized_keys file. The script has changed and the string {place_holder} is not found."
80
47
  program = program.replace(place_holder, f'$sshfile = "{path_to_key}"')
81
- print(f"""
82
- ╭{'─' * 70}╮
83
- │ 🔧 Configured PowerShell script for Windows │
84
- │ 📝 Replaced placeholder with actual key path │
85
- ╰{'─' * 70}╯
86
- """)
48
+ console.print(Panel("🔧 Configured PowerShell script for Windows\n📝 Replaced placeholder with actual key path", title="[bold blue]Configuration[/bold blue]"))
87
49
  else: raise NotImplementedError
88
50
  else:
89
- print(f"""
90
- ╭{'─' * 70}╮
91
- │ 📝 Creating new authorized_keys file │
92
- │ 🔑 Using key: {path_to_key.name} │
93
- ╰{'─' * 70}╯
94
- """)
95
-
51
+ console.print(Panel(f"📝 Creating new authorized_keys file\n🔑 Using key: {path_to_key.name}", title="[bold blue]Action[/bold blue]"))
96
52
  if system() == "Linux":
97
53
  program = f"cat {path_to_key} > ~/.ssh/authorized_keys"
98
54
  else:
99
55
  program_path = LIBRARY_ROOT.joinpath("setup_windows/openssh-server_add-sshkey.ps1")
100
- program = P(program_path).expanduser().read_text().replace('$sshfile=""', f'$sshfile="{path_to_key}"')
101
- print(f"""
102
- ╭{'─' * 70}╮
103
- │ 🔧 Configured PowerShell script for Windows │
104
- │ 📝 Set key path in script │
105
- ╰{'─' * 70}╯
106
- """)
56
+ program = PathExtended(program_path).expanduser().read_text().replace('$sshfile=""', f'$sshfile="{path_to_key}"')
57
+ console.print(Panel("🔧 Configured PowerShell script for Windows\n📝 Set key path in script", title="[bold blue]Configuration[/bold blue]"))
107
58
 
108
- if system() == "Linux":
59
+ if system() == "Linux":
109
60
  program += """
110
61
 
111
62
  sudo chmod 700 ~/.ssh
@@ -113,50 +64,21 @@ sudo chmod 644 ~/.ssh/authorized_keys
113
64
  sudo chmod 644 ~/.ssh/*.pub
114
65
  sudo service ssh --full-restart
115
66
  # from superuser.com/questions/215504/permissions-on-private-key-in-ssh-folder
116
-
117
67
  """
118
- print(f"""
119
- ╭{'─' * 70}╮
120
- │ 🔒 Setting proper SSH permissions and restarting service │
121
- ╰{'─' * 70}╯
122
- """)
123
-
124
- print(f"""
125
- ╔{'═' * 70}╗
126
- ║ ✅ SSH KEY CONFIGURATION PREPARED ║
127
- ╚{'═' * 70}╝
128
- """)
129
-
130
68
  return program
131
69
 
132
70
 
133
71
  def main():
134
- print(f"""
135
- ╔{'═' * 70}╗
136
- ║ 🔐 SSH PUBLIC KEY AUTHORIZATION TOOL ║
137
- ╚{'═' * 70}╝
138
- """)
72
+ console.print(Panel("🔐 SSH PUBLIC KEY AUTHORIZATION TOOL", box=box.DOUBLE_EDGE, title_align="left"))
139
73
 
140
- print(f"""
141
- ╭{'─' * 70}╮
142
- │ 🔍 Searching for public keys... │
143
- ╰{'─' * 70}╯
144
- """)
74
+ console.print(Panel("🔍 Searching for public keys...", title="[bold blue]SSH Setup[/bold blue]", border_style="blue"))
145
75
 
146
- pub_keys = P.home().joinpath(".ssh").search("*.pub")
76
+ pub_keys = PathExtended.home().joinpath(".ssh").search("*.pub")
147
77
 
148
78
  if pub_keys:
149
- print(f"""
150
- ╭{'─' * 70}╮
151
- │ ✅ Found {len(pub_keys)} public key(s) │
152
- ╰{'─' * 70}╯
153
- """)
79
+ console.print(Panel(f"✅ Found {len(pub_keys)} public key(s)", title="[bold green]Status[/bold green]", border_style="green"))
154
80
  else:
155
- print(f"""
156
- ╭{'─' * 70}╮
157
- │ ⚠️ No public keys found │
158
- ╰{'─' * 70}╯
159
- """)
81
+ console.print(Panel("⚠️ No public keys found", title="[bold yellow]Warning[/bold yellow]", border_style="yellow"))
160
82
 
161
83
  all_keys_option = f"all pub keys available ({len(pub_keys)})"
162
84
  i_have_path_option = "I have the path to the key file"
@@ -166,57 +88,28 @@ def main():
166
88
  assert isinstance(res, str), f"Got {res} of type {type(res)} instead of str."
167
89
 
168
90
  if res == all_keys_option:
169
- print(f"""
170
- ╭{'─' * 70}╮
171
- │ 🔄 Processing all {len(pub_keys)} public keys... │
172
- ╰{'─' * 70}╯
173
- """)
91
+ console.print(Panel(f"🔄 Processing all {len(pub_keys)} public keys...", title="[bold blue]Processing[/bold blue]", border_style="blue"))
174
92
  program = "\n\n\n".join(pub_keys.apply(get_add_ssh_key_script))
175
93
 
176
94
  elif res == i_have_path_option:
177
- print(f"""
178
- ╭{'─' * 70}╮
179
- 📂 Please provide the path to your public key │
180
- ╰{'─' * 70}╯
181
- """)
182
- key_path = P(input("📋 Path: ")).expanduser().absolute()
183
- print(f"""
184
- ╭{'─' * 70}╮
185
- │ 📄 Using key from path: {key_path} │
186
- ╰{'─' * 70}╯
187
- """)
95
+ console.print(Panel("📂 Please provide the path to your public key", title="[bold blue]Input Required[/bold blue]", border_style="blue"))
96
+ key_path = PathExtended(input("📋 Path: ")).expanduser().absolute()
97
+ console.print(Panel(f"📄 Using key from path: {key_path}", title="[bold blue]Info[/bold blue]", border_style="blue"))
188
98
  program = get_add_ssh_key_script(key_path)
189
99
 
190
100
  elif res == i_paste_option:
191
- print(f"""
192
- ╭{'─' * 70}╮
193
- │ 📋 Please provide a filename and paste the public key content │
194
- ╰{'─' * 70}╯
195
- """)
101
+ console.print(Panel("📋 Please provide a filename and paste the public key content", title="[bold blue]Input Required[/bold blue]", border_style="blue"))
196
102
  key_filename = input("📝 File name (default: my_pasted_key.pub): ") or "my_pasted_key.pub"
197
- key_path = P.home().joinpath(f".ssh/{key_filename}")
103
+ key_path = PathExtended.home().joinpath(f".ssh/{key_filename}")
198
104
  key_path.write_text(input("🔑 Paste the public key here: "))
199
- print(f"""
200
- ╭{'─' * 70}╮
201
- │ 💾 Key saved to: {key_path} │
202
- ╰{'─' * 70}╯
203
- """)
105
+ console.print(Panel(f"💾 Key saved to: {key_path}", title="[bold green]Success[/bold green]", border_style="green"))
204
106
  program = get_add_ssh_key_script(key_path)
205
107
 
206
108
  else:
207
- print(f"""
208
- ╭{'─' * 70}╮
209
- │ 🔑 Using selected key: {P(res).name} │
210
- ╰{'─' * 70}╯
211
- """)
212
- program = get_add_ssh_key_script(P(res))
109
+ console.print(Panel(f"🔑 Using selected key: {PathExtended(res).name}", title="[bold blue]Info[/bold blue]", border_style="blue"))
110
+ program = get_add_ssh_key_script(PathExtended(res))
213
111
 
214
- print(f"""
215
- ╔{'═' * 70}╗
216
- ║ 🚀 SSH KEY AUTHORIZATION READY ║
217
- ║ Run the generated script to apply changes ║
218
- ╚{'═' * 70}╝
219
- """)
112
+ console.print(Panel("🚀 SSH KEY AUTHORIZATION READY\nRun the generated script to apply changes", box=box.DOUBLE_EDGE, title_align="left"))
220
113
 
221
114
  return program
222
115