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
@@ -5,9 +5,13 @@
5
5
  # # one can either install rufus: https://rufus.ie/en/
6
6
  # # however, to create bootable media with multiple OSs to choose from:
7
7
 
8
- # P(r'https://github.com/ventoy/Ventoy/archive/refs/tags/v1.0.78.zip').download().unzip().search[0]()
9
- # P(r'https://mirrors.layeronline.com/linuxmint/stable/21/linuxmint-21-cinnamon-64bit.iso').download(folder=P.home().joinpath("Downloads/os").create())
10
- # P(r'https://download.manjaro.org/kde/21.3.7/manjaro-kde-21.3.7-minimal-220816-linux515.iso').download(folder=P.home().joinpath("Downloads/os").create())
8
+ # PathExtended(r'https://github.com/ventoy/Ventoy/archive/refs/tags/v1.0.78.zip').download().unzip().search[0]()
9
+ # download_folder = PathExtended.home().joinpath("Downloads/os")
10
+ # download_folder.mkdir(parents=True, exist_ok=True)
11
+ # PathExtended(r'https://mirrors.layeronline.com/linuxmint/stable/21/linuxmint-21-cinnamon-64bit.iso').download(folder=download_folder)
12
+ # download_folder2 = PathExtended.home().joinpath("Downloads/os")
13
+ # download_folder2.mkdir(parents=True, exist_ok=True)
14
+ # PathExtended(r'https://download.manjaro.org/kde/21.3.7/manjaro-kde-21.3.7-minimal-220816-linux515.iso').download(folder=download_folder2)
11
15
 
12
16
 
13
17
  # if __name__ == '__main__':
@@ -2,56 +2,56 @@
2
2
  cargo install
3
3
  """
4
4
 
5
- from crocodile.meta import Terminal
6
- from crocodile.file_management import P
7
- import platform
8
-
9
-
10
- def build_rust_executable(url: str=r"https://github.com/atanunq/viu"):
11
- tool_name = url.split('/')[-1]
12
-
13
- # move command is not required since tool will go to .cargo/bin which is in PATH by default.
14
- # move_command = f"mv {exe} {tb.get_env().WindowsApps.as_posix()}/" if platform.platform() == "Windows" else f"sudo mv {exe} /usr/local/bin/"
15
- # {move_command}
16
-
17
- script = f"""
18
- cd ~
19
- git clone --depth 1 {url}
20
- cd {tool_name}
21
- cargo install --path .
22
- """
23
- print(f"""
24
- {'=' * 70}
25
- 🦀 CARGO BUILD | Building Rust project: {tool_name}
26
- 📦 Source: {url}
27
- {'=' * 70}
28
- """)
29
- if platform.system() == "Windows":
30
- Terminal(stdout=None).run(f". {P.tmpfile(suffix='.ps1').write_text(script)}", shell="pwsh").print()
31
- else:
32
- Terminal(stdout=None).run(script, shell="pwsh")
33
-
34
- exe = P.home().joinpath(f".cargo/bin/{tool_name}" + (".exe" if platform.system() == "Windows" else ""))
35
-
36
- try:
37
- P.home().joinpath(tool_name).delete(sure=True)
38
- except PermissionError:
39
- print(f"""
40
- {'⚠️' * 20}
41
- ⚠️ WARNING | Permission error when cleaning up
42
- 📂 Path: {P.home().joinpath(tool_name)}
43
- {'⚠️' * 20}
44
- """)
45
-
46
- if platform.system() == "Windows":
47
- exe = exe.move(folder=P.get_env().WindowsPaths().WindowsApps)
48
- elif platform.system() == "Linux":
49
- Terminal().run(f"sudo mv {exe} /usr/local/bin")
50
- exe = P(r"/usr/local/bin").joinpath(exe.name)
51
- else:
52
- raise NotImplementedError(f"🚫 Platform {platform.system()} not supported.")
53
- share_link = exe.to_cloud("gdpo", share=True)
54
- return share_link
5
+ # from crocodile.meta import Terminal
6
+ # from machineconfig.utils.path_reduced import P as PathExtended
7
+ # import platform
8
+
9
+
10
+ # def build_rust_executable(url: str=r"https://github.com/atanunq/viu"):
11
+ # tool_name = url.split('/')[-1]
12
+
13
+ # # move command is not required since tool will go to .cargo/bin which is in PATH by default.
14
+ # # move_command = f"mv {exe} {tb.get_env().WindowsApps.as_posix()}/" if platform.platform() == "Windows" else f"sudo mv {exe} /usr/local/bin/"
15
+ # # {move_command}
16
+
17
+ # script = f"""
18
+ # cd ~
19
+ # git clone --depth 1 {url}
20
+ # cd {tool_name}
21
+ # cargo install --path .
22
+ # """
23
+ # print(f"""
24
+ # {'=' * 150}
25
+ # 🦀 CARGO BUILD | Building Rust project: {tool_name}
26
+ # 📦 Source: {url}
27
+ # {'=' * 150}
28
+ # """)
29
+ # if platform.system() == "Windows":
30
+ # Terminal(stdout=None).run(f". {PathExtended.tmpfile(suffix='.ps1').write_text(script)}", shell="pwsh").print()
31
+ # else:
32
+ # Terminal(stdout=None).run(script, shell="pwsh")
33
+
34
+ # exe = PathExtended.home().joinpath(f".cargo/bin/{tool_name}" + (".exe" if platform.system() == "Windows" else ""))
35
+
36
+ # try:
37
+ # PathExtended.home().joinpath(tool_name).delete(sure=True)
38
+ # except PermissionError:
39
+ # print(f"""
40
+ # {'⚠️' * 20}
41
+ # ⚠️ WARNING | Permission error when cleaning up
42
+ # 📂 Path: {PathExtended.home().joinpath(tool_name)}
43
+ # {'⚠️' * 20}
44
+ # """)
45
+
46
+ # if platform.system() == "Windows":
47
+ # exe = exe.move(folder=PathExtended.get_env().WindowsPaths().WindowsApps)
48
+ # elif platform.system() in ["Linux", "Darwin"]:
49
+ # Terminal().run(f"sudo mv {exe} /usr/local/bin")
50
+ # exe = PathExtended(r"/usr/local/bin").joinpath(exe.name)
51
+ # else:
52
+ # raise NotImplementedError(f"🚫 Platform {platform.system()} not supported.")
53
+ # share_link = exe.to_cloud("gdpo", share=True)
54
+ # return share_link
55
55
 
56
56
 
57
57
  # after cargo install diskonaut
@@ -1,28 +1,28 @@
1
1
  """Symlinks
2
2
  """
3
3
 
4
- from crocodile.file_management import P
4
+ from machineconfig.utils.path_reduced import P as PathExtended
5
5
  # from machineconfig.utils.utils import display_options
6
6
 
7
7
 
8
8
  def main():
9
9
  print(f"""
10
- {'=' * 70}
10
+ {'=' * 150}
11
11
  🔗 SYMLINK CREATOR | Create symlinks for virtual environments
12
- {'=' * 70}
12
+ {'=' * 150}
13
13
  """)
14
- target = P(input("🎯 Symlink to which target? ")).expanduser().absolute()
15
- source = input(f"📍 Symlink from which source? [default to: CWD/{target.name}] ") or P.cwd().joinpath(target.name)
16
- if isinstance(source, str): source = P(source).expanduser().absolute()
17
- # ve_path = display_options(msg="symlin link? ", options=P.home().joinpath("ve").starget.symlink_to; P(r'$pwd').joinpath('venv').symlink_to(r'$to'); P('.gitignore').modify_text('venv', 'venv', replace_line=True)"(target.symlink_to(
18
- # P('.gitignore').modify_text('venv', 'venv', replace_line=True)"
14
+ target = PathExtended(input("🎯 Symlink to which target? ")).expanduser().absolute()
15
+ source = input(f"📍 Symlink from which source? [default to: CWD/{target.name}] ") or PathExtended.cwd().joinpath(target.name)
16
+ if isinstance(source, str): source = PathExtended(source).expanduser().absolute()
17
+ # ve_path = display_options(msg="symlin link? ", options=PathExtended.home().joinpath("ve").starget.symlink_to; PathExtended(r'$pwd').joinpath('venv').symlink_to(r'$to'); PathExtended('.gitignore').modify_text('venv', 'venv', replace_line=True)"(target.symlink_to(
18
+ # PathExtended('.gitignore').modify_text('venv', 'venv', replace_line=True)"
19
19
  source.symlink_to(target, overwrite=True)
20
20
  print(f"""
21
- {'=' * 70}
21
+ {'=' * 150}
22
22
  ✅ SUCCESS | Symlink created successfully
23
23
  📍 Source: {source}
24
24
  🎯 Target: {target}
25
- {'=' * 70}
25
+ {'=' * 150}
26
26
  """)
27
27
  return "echo '🔗 Finished creating symlink.'"
28
28
 
@@ -1,5 +1,5 @@
1
1
  from pathlib import Path
2
- from crocodile.core import randstr
2
+ from machineconfig.utils.utils2 import randstr
3
3
 
4
4
 
5
5
  def open_file_in_new_instance(file_path: str):
@@ -20,13 +20,13 @@ code --profile bitProfile --new-window {file_path}
20
20
  from rich.syntax import Syntax
21
21
  from rich.panel import Panel
22
22
  console = Console()
23
- console.print(f"\n{'=' * 70}")
23
+ console.print(f"\n{'=' * 150}")
24
24
  console.print(Panel(
25
25
  Syntax(code, lexer="bash"),
26
26
  title="🔍 VS CODE API | Opening file in new instance",
27
27
  subtitle=f"📂 {file_path}"
28
28
  ), style="bold blue")
29
- console.print(f"{'=' * 70}\n")
29
+ console.print(f"{'=' * 150}\n")
30
30
 
31
31
  code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
32
32
  code_path.parent.mkdir(parents=True, exist_ok=True)
@@ -3,17 +3,17 @@
3
3
 
4
4
  # import os
5
5
  # import json
6
- from crocodile.file_management import P as Path # , Read, Save
6
+ from pathlib import Path
7
7
  import argparse
8
8
  # import platform
9
9
 
10
10
 
11
11
  def select_interpreter(workspace_root: str):
12
12
  print(f"""
13
- {'=' * 70}
13
+ {'=' * 150}
14
14
  🔗 VSCODE VE LINKER | Linking virtual environment for VS Code
15
15
  📂 Workspace: {workspace_root}
16
- {'=' * 70}
16
+ {'=' * 150}
17
17
  """)
18
18
 
19
19
  path = Path(workspace_root).joinpath('.ve_path')
@@ -28,7 +28,7 @@ def select_interpreter(workspace_root: str):
28
28
  return
29
29
 
30
30
  with open(path, 'r', encoding='utf-8') as f:
31
- ve_path = Path(f.read().strip().replace("~", str(Path.home())))
31
+ ve_path = Path(f.read().strip()).expanduser()
32
32
 
33
33
  venv_link = Path(workspace_root).joinpath(".venv")
34
34
 
@@ -44,11 +44,11 @@ def select_interpreter(workspace_root: str):
44
44
  venv_link.symlink_to(target=ve_path.expanduser().absolute())
45
45
 
46
46
  print(f"""
47
- {'=' * 70}
47
+ {'=' * 150}
48
48
  ✅ SUCCESS | Virtual environment linked successfully
49
49
  🔗 Link: {venv_link}
50
50
  🎯 Target: {ve_path.expanduser().absolute()}
51
- {'=' * 70}
51
+ {'=' * 150}
52
52
  """)
53
53
 
54
54
 
@@ -3,17 +3,19 @@
3
3
 
4
4
  # import os
5
5
  # import json
6
- from crocodile.file_management import P as Path, Read, Save
6
+ from pathlib import Path
7
+ from machineconfig.utils.io_save import save_json
8
+ from machineconfig.utils.utils2 import read_json
7
9
  import argparse
8
10
  import platform
9
11
 
10
12
 
11
13
  def select_interpreter(workspace_root: str):
12
14
  print(f"""
13
- {'=' * 70}
15
+ {'=' * 150}
14
16
  🐍 PYTHON INTERPRETER | Setting up VS Code Python interpreter
15
17
  📂 Workspace: {workspace_root}
16
- {'=' * 70}
18
+ {'=' * 150}
17
19
  """)
18
20
 
19
21
  path = Path(workspace_root).joinpath('.ve_path')
@@ -27,7 +29,7 @@ def select_interpreter(workspace_root: str):
27
29
  return
28
30
 
29
31
  with open(path, 'r', encoding='utf-8') as f:
30
- python_path = Path(f.read().strip().replace("~", str(Path.home())))
32
+ python_path = Path(f.read().strip()).expanduser()
31
33
 
32
34
  print(f"📁 Virtual environment path: {python_path}")
33
35
 
@@ -51,24 +53,26 @@ def select_interpreter(workspace_root: str):
51
53
  # tmp = os.getenv('APPDATA')
52
54
  # assert tmp is not None
53
55
  # settings_path = Path(tmp).joinpath('Code', 'User', 'settings.json')
54
- work_space_settings = Path(workspace_root).joinpath('.vscode', 'settings.json').create(parents_only=True)
56
+ work_space_settings = Path(workspace_root).joinpath('.vscode', 'settings.json')
57
+ work_space_settings.parent.mkdir(parents=True, exist_ok=True)
55
58
  if not work_space_settings.exists():
56
59
  print(f"📄 Creating new settings file: {work_space_settings}")
60
+ work_space_settings.parent.mkdir(parents=True, exist_ok=True)
57
61
  work_space_settings.touch()
58
62
  work_space_settings.write_text("{}")
59
63
  else:
60
64
  print(f"📄 Updating existing settings file: {work_space_settings}")
61
65
 
62
- settings = Read.json(work_space_settings)
66
+ settings = read_json(work_space_settings)
63
67
  settings['python.defaultInterpreterPath'] = str(python_path)
64
- Save.json(obj=settings, path=work_space_settings, indent=4)
68
+ save_json(obj=settings, path=str(work_space_settings), indent=4)
65
69
 
66
70
  print(f"""
67
- {'=' * 70}
71
+ {'=' * 150}
68
72
  ✅ SUCCESS | Python interpreter configured successfully
69
73
  🐍 Interpreter: {python_path}
70
74
  📄 Settings: {work_space_settings}
71
- {'=' * 70}
75
+ {'=' * 150}
72
76
  """)
73
77
 
74
78
 
@@ -1,20 +1,23 @@
1
- from crocodile.core import Read
2
1
  from pathlib import Path
2
+ from configparser import SectionProxy
3
+ from machineconfig.utils.utils2 import read_ini
3
4
 
4
- config = Read.ini(Path.home().joinpath(".ssh", "config"))
5
- if config is None:
6
- raise ValueError("❌ SSH config not found. Please create one first.")
5
+ config = read_ini(Path.home().joinpath(".ssh", "config"))
7
6
 
8
7
 
9
8
  def sync_remote(machine_name: str):
10
9
  print(f"""
11
- {'=' * 70}
10
+ {'=' * 150}
12
11
  🔄 SYNC REMOTE | Initiating remote code synchronization
13
12
  🖥️ Target machine: {machine_name}
14
- {'=' * 70}
13
+ {'=' * 150}
15
14
  """)
16
15
 
17
- machine_config = config.get(machine_name)
16
+ # Handle config as a ConfigParser object
17
+ machine_config: SectionProxy | None = None
18
+ if machine_name in config:
19
+ machine_config = config[machine_name]
20
+
18
21
  if machine_config is None:
19
22
  error_msg = f"Machine {machine_name} not found in SSH config."
20
23
  print(f"""
@@ -33,13 +36,13 @@ ssh -o "HostName={machine_config['HostName']}" -o "User={machine_config['User']}
33
36
  from rich.panel import Panel
34
37
 
35
38
  console = Console()
36
- console.print(f"\n{'=' * 70}")
39
+ console.print(f"\n{'=' * 150}")
37
40
  console.print(Panel(
38
41
  Syntax(code, lexer="bash"),
39
42
  title=f"🔄 SYNC COMMAND | Connecting to {machine_name}",
40
43
  subtitle=f"🌐 Host: {machine_config['HostName']}"
41
44
  ), style="bold blue")
42
- console.print(f"{'=' * 70}\n")
45
+ console.print(f"{'=' * 150}\n")
43
46
 
44
47
  code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
45
48
  code_path.parent.mkdir(parents=True, exist_ok=True)
@@ -52,9 +55,9 @@ ssh -o "HostName={machine_config['HostName']}" -o "User={machine_config['User']}
52
55
  subprocess.run([str(code_path)], shell=True, check=True)
53
56
 
54
57
  print(f"""
55
- {'=' * 70}
58
+ {'=' * 150}
56
59
  ✅ SUCCESS | Remote sync completed successfully
57
60
  🖥️ Machine: {machine_name}
58
- {'=' * 70}
61
+ {'=' * 150}
59
62
  """)
60
63
 
@@ -19,17 +19,17 @@ config_dict = {
19
19
 
20
20
  def main(version: Optional[str]):
21
21
  print(f"""
22
- {'=' * 70}
22
+ {'=' * 150}
23
23
  🔄 NGROK INSTALLER | Setting up secure tunnels to localhost
24
24
  💻 Platform: {platform.system()}
25
- {'=' * 70}
25
+ {'=' * 150}
26
26
  """)
27
27
 
28
28
  _ = version
29
29
  if platform.system() == "Windows":
30
30
  print("🪟 Installing ngrok using winget on Windows...")
31
31
  program = "winget install ngrok.ngrok --source winget"
32
- elif platform.system() == "Linux":
32
+ elif platform.system() in ["Linux", "Darwin"]:
33
33
  print("🐧 Installing ngrok using apt/nala on Linux...")
34
34
  # as per https://ngrok.com/docs/getting-started/?os=linux
35
35
  program = """
@@ -50,10 +50,10 @@ sudo nala update && sudo nala install ngrok
50
50
  raise NotImplementedError(error_msg)
51
51
 
52
52
  print(f"""
53
- {'=' * 70}
53
+ {'=' * 150}
54
54
  ⚠️ SECURITY WARNING | ngrok has been flagged by some antivirus engines
55
55
  🛡️ Use at your own risk - flagged by 35% of antivirus engines
56
- {'=' * 70}
56
+ {'=' * 150}
57
57
  """)
58
58
  return program
59
59
 
@@ -13,20 +13,20 @@ config_dict = {
13
13
 
14
14
  def main(version: Optional[str] = None):
15
15
  print(f"""
16
- {'=' * 70}
16
+ {'=' * 150}
17
17
  🤖 AIDER INSTALLER | Installing AI code assistant
18
18
  💻 Platform: {platform.system()}
19
19
  🔄 Version: {'latest' if version is None else version}
20
- {'=' * 70}
20
+ {'=' * 150}
21
21
  """)
22
22
 
23
23
  install_script = "uv tool install --force --python python3.12 aider-chat@latest"
24
24
 
25
25
  print(f"""
26
- {'=' * 70}
26
+ {'=' * 150}
27
27
  ✅ SUCCESS | Installation command prepared:
28
28
  📄 Command: {install_script}
29
- {'=' * 70}
29
+ {'=' * 150}
30
30
  """)
31
31
 
32
32
  return install_script
@@ -17,11 +17,11 @@ config_dict = {
17
17
 
18
18
  def main(version: Optional[str]):
19
19
  print(f"""
20
- {'=' * 70}
20
+ {'=' * 150}
21
21
  🖥️ ALACRITTY INSTALLER | Installing GPU-accelerated terminal emulator
22
22
  💻 Platform: {platform.system()}
23
23
  🔄 Version: {'latest' if version is None else version}
24
- {'=' * 70}
24
+ {'=' * 150}
25
25
  """)
26
26
 
27
27
  _ = version
@@ -34,8 +34,9 @@ mkdir -p ~/.config/alacritty/themes
34
34
  git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty/themes
35
35
 
36
36
  """
37
- elif platform.system() == "Linux":
38
- print("🐧 Installing Alacritty on Linux using Cargo...")
37
+ elif platform.system() in ["Linux", "Darwin"]:
38
+ system_name = "Linux" if platform.system() == "Linux" else "macOS"
39
+ print(f"🐧 Installing Alacritty on {system_name} using Cargo...")
39
40
  program = """
40
41
 
41
42
 
@@ -54,12 +55,12 @@ git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty/theme
54
55
  raise NotImplementedError(error_msg)
55
56
 
56
57
  print(f"""
57
- {'=' * 70}
58
+ {'=' * 150}
58
59
  ℹ️ INFO | Installation will proceed with the following steps:
59
60
  1️⃣ Install Alacritty using Cargo
60
61
  2️⃣ Create config directories
61
62
  3️⃣ Clone theme repository
62
- {'=' * 70}
63
+ {'=' * 150}
63
64
  """)
64
65
 
65
66
  # _res = Terminal(stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE).run_script(script=program, shell="default").print(desc="Running custom installer", capture=True)
@@ -18,11 +18,11 @@ config_dict = {
18
18
 
19
19
  def main(version: Optional[str]):
20
20
  print(f"""
21
- {'=' * 70}
21
+ {'=' * 150}
22
22
  🦁 BRAVE BROWSER | Installing privacy-focused web browser
23
23
  💻 Platform: {platform.system()}
24
24
  🔄 Version: {'latest' if version is None else version}
25
- {'=' * 70}
25
+ {'=' * 150}
26
26
  """)
27
27
 
28
28
  _ = version
@@ -33,11 +33,15 @@ def main(version: Optional[str]):
33
33
  winget install --Name "Brave Browser" --Id Brave.Brave --source winget --accept-package-agreements --accept-source-agreements
34
34
 
35
35
  """
36
- elif platform.system() == "Linux":
37
- print("🐧 Installing Brave Browser on Linux using installation script...")
36
+ elif platform.system() in ["Linux", "Darwin"]:
37
+ system_name = "Linux" if platform.system() == "Linux" else "macOS"
38
+ print(f"🐧 Installing Brave Browser on {system_name}...")
38
39
  import machineconfig.jobs.python_custom_installers as module
39
40
  from pathlib import Path
40
- program = Path(module.__file__).parent.joinpath("scripts/linux/brave.sh").read_text(encoding="utf-8")
41
+ if platform.system() == "Linux":
42
+ program = Path(module.__file__).parent.joinpath("scripts/linux/brave.sh").read_text(encoding="utf-8")
43
+ else: # Darwin/macOS
44
+ program = "brew install --cask brave-browser"
41
45
  else:
42
46
  error_msg = f"Unsupported platform: {platform.system()}"
43
47
  print(f"""
@@ -48,13 +52,13 @@ winget install --Name "Brave Browser" --Id Brave.Brave --source winget --accept-
48
52
  raise NotImplementedError(error_msg)
49
53
 
50
54
  print(f"""
51
- {'=' * 70}
55
+ {'=' * 150}
52
56
  ℹ️ INFO | Brave Browser features:
53
57
  🔒 Built-in ad blocking
54
58
  🛡️ Privacy-focused browsing
55
59
  💨 Faster page loading
56
60
  🪙 Optional crypto rewards
57
- {'=' * 70}
61
+ {'=' * 150}
58
62
  """)
59
63
 
60
64
  # _res = Terminal(stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE).run_script(script=program, shell="default").print(desc="Running custom installer", capture=True)
@@ -1,9 +1,8 @@
1
- # import numpy as np
2
1
  # import matplotlib.pyplot as plt
3
2
 
4
3
  # from platform import system
5
4
  from typing import Optional
6
- from crocodile.file_management import P
5
+ from machineconfig.utils.path_reduced import P as PathExtended
7
6
 
8
7
 
9
8
  config_dict = {
@@ -18,10 +17,10 @@ config_dict = {
18
17
 
19
18
  def main(version: Optional[str] = None):
20
19
  print(f"""
21
- {'=' * 70}
20
+ {'=' * 150}
22
21
  🔓 BYPASS PAYWALL | Installing paywall bypass extension for Chrome
23
22
  🔄 Version: {'latest' if version is None else version}
24
- {'=' * 70}
23
+ {'=' * 150}
25
24
  """)
26
25
 
27
26
  _ = version
@@ -29,18 +28,18 @@ def main(version: Optional[str] = None):
29
28
  folder = r"C:\\"
30
29
 
31
30
  print("📥 Downloading extension from GitHub repository...")
32
- P("https://github.com/iamadamdev/bypass-paywalls-chrome/archive/master.zip").download().unzip(folder=folder, content=True)
33
- extension_folder = P(folder).joinpath("bypass-paywalls-chrome-master")
31
+ PathExtended("https://github.com/iamadamdev/bypass-paywalls-chrome/archive/master.zip").download().unzip(folder=folder, content=True)
32
+ extension_folder = PathExtended(folder).joinpath("bypass-paywalls-chrome-master")
34
33
 
35
34
  print(f"""
36
- {'=' * 70}
35
+ {'=' * 150}
37
36
  ✅ SUCCESS | Extension downloaded successfully
38
37
  📂 Location: {extension_folder}
39
38
  ℹ️ Next steps:
40
39
  1️⃣ Open Chrome and navigate to chrome://extensions
41
40
  2️⃣ Enable Developer Mode (toggle in top right)
42
41
  3️⃣ Click "Load unpacked" and select the extension folder
43
- {'=' * 70}
42
+ {'=' * 150}
44
43
  """)
45
44
 
46
45
  return ""
@@ -17,11 +17,11 @@ config_dict = {
17
17
 
18
18
  def main(version: Optional[str] = None):
19
19
  print(f"""
20
- {'=' * 70}
20
+ {'=' * 150}
21
21
  💻 VS CODE INSTALLER | Setting up Visual Studio Code
22
22
  🖥️ Platform: {platform.system()}
23
23
  🔄 Version: {'latest' if version is None else version}
24
- {'=' * 70}
24
+ {'=' * 150}
25
25
  """)
26
26
 
27
27
  if platform.system() == 'Linux':
@@ -29,7 +29,9 @@ def main(version: Optional[str] = None):
29
29
  import machineconfig.jobs.python_custom_installers as module
30
30
  from pathlib import Path
31
31
  install_script = Path(module.__file__).parent.joinpath("scripts/linux/vscode.sh").read_text(encoding="utf-8")
32
-
32
+ elif platform.system() == 'Darwin':
33
+ print("🍎 Installing VS Code on macOS using Homebrew...")
34
+ install_script = """brew install --cask visual-studio-code"""
33
35
  elif platform.system() == 'Windows':
34
36
  print("🪟 Installing VS Code on Windows using winget...")
35
37
  install_script = """winget install --no-upgrade --name "Microsoft Visual Studio Code" --Id "Microsoft.VisualStudioCode" --source winget --scope user --accept-package-agreements --accept-source-agreements"""
@@ -45,14 +47,14 @@ def main(version: Optional[str] = None):
45
47
  _ = version
46
48
 
47
49
  print(f"""
48
- {'=' * 70}
50
+ {'=' * 150}
49
51
  ℹ️ INFO | VS Code features:
50
52
  📝 Powerful code editor with IntelliSense
51
53
  🧩 Thousands of extensions available
52
54
  🔍 Integrated debugging
53
55
  🔄 Git integration
54
56
  ⚙️ Highly customizable
55
- {'=' * 70}
57
+ {'=' * 150}
56
58
  """)
57
59
 
58
60
  return install_script