machineconfig 7.32__tar.gz → 7.34__tar.gz

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

Potentially problematic release.


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

Files changed (453) hide show
  1. {machineconfig-7.32/src/machineconfig.egg-info → machineconfig-7.34}/PKG-INFO +1 -1
  2. {machineconfig-7.32 → machineconfig-7.34}/pyproject.toml +3 -3
  3. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/define.py +2 -2
  4. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/env_manager/path_manager_tui.py +1 -1
  5. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_config.py +1 -1
  6. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_self.py +3 -3
  7. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +1 -1
  8. machineconfig-7.32/src/machineconfig/scripts/python/mcfg.py → machineconfig-7.34/src/machineconfig/scripts/python/machineconfig.py +4 -0
  9. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/mount_ssh.ps1 +1 -1
  10. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/bash/init.sh +1 -1
  11. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/pwsh/init.ps1 +2 -2
  12. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +10 -10
  13. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +10 -10
  14. machineconfig-7.34/src/machineconfig/utils/io.py +148 -0
  15. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/path_extended.py +2 -75
  16. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/ssh.py +10 -6
  17. {machineconfig-7.32 → machineconfig-7.34/src/machineconfig.egg-info}/PKG-INFO +1 -1
  18. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig.egg-info/SOURCES.txt +3 -3
  19. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig.egg-info/entry_points.txt +2 -2
  20. machineconfig-7.32/src/machineconfig/utils/io.py +0 -79
  21. {machineconfig-7.32 → machineconfig-7.34}/MANIFEST.in +0 -0
  22. {machineconfig-7.32 → machineconfig-7.34}/README.md +0 -0
  23. {machineconfig-7.32 → machineconfig-7.34}/setup.cfg +0 -0
  24. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/__init__.py +0 -0
  25. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/__init__.py +0 -0
  26. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/cloud_manager.py +0 -0
  27. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/data_transfer.py +0 -0
  28. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/distribute.py +0 -0
  29. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/file_manager.py +0 -0
  30. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/job_params.py +0 -0
  31. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/loader_runner.py +0 -0
  32. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/remote_machine.py +0 -0
  33. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/run_cloud.py +0 -0
  34. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/run_cluster.py +0 -0
  35. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/run_remote.py +0 -0
  36. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/script_execution.py +0 -0
  37. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/remote/script_notify_upon_completion.py +0 -0
  38. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
  39. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/helpers/enhanced_command_runner.py +0 -0
  40. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py +0 -0
  41. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/utils/load_balancer.py +0 -0
  42. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/utils/maker.py +0 -0
  43. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_local.py +0 -0
  44. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +0 -0
  45. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_remote.py +0 -0
  46. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +0 -0
  47. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +0 -0
  48. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +0 -0
  49. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +0 -0
  50. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +0 -0
  51. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +0 -0
  52. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +0 -0
  53. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +0 -0
  54. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +0 -0
  55. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +0 -0
  56. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_local.py +0 -0
  57. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +0 -0
  58. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +0 -0
  59. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +0 -0
  60. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +0 -0
  61. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +0 -0
  62. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py +0 -0
  63. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +0 -0
  64. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +0 -0
  65. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +0 -0
  66. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +0 -0
  67. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +0 -0
  68. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +0 -0
  69. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +0 -0
  70. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +0 -0
  71. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/templates/__init__.py +0 -0
  72. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/cluster/templates/cli_trogon.py +0 -0
  73. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/__init__.py +0 -0
  74. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/__init__.py +0 -0
  75. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/check_installations.py +0 -0
  76. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom/boxes.py +0 -0
  77. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom/gh.py +0 -0
  78. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom/hx.py +0 -0
  79. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/__init__.py +0 -0
  80. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/alacritty.py +0 -0
  81. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/brave.py +0 -0
  82. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/bypass_paywall.py +0 -0
  83. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/code.py +0 -0
  84. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/cursor.py +0 -0
  85. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +0 -0
  86. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/espanso.py +0 -0
  87. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/goes.py +0 -0
  88. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/lvim.py +0 -0
  89. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/nerdfont.py +0 -0
  90. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +0 -0
  91. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/redis.py +0 -0
  92. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/wezterm.py +0 -0
  93. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/custom_dev/winget.py +0 -0
  94. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/installer_data.json +0 -0
  95. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/brave.sh +0 -0
  96. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/docker.sh +0 -0
  97. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/docker_start.sh +0 -0
  98. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/edge.sh +0 -0
  99. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/lid.sh +0 -0
  100. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/nerdfont.sh +0 -0
  101. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/network.sh +0 -0
  102. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/ngrok.sh +0 -0
  103. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -0
  104. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/q.sh +0 -0
  105. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/redis.sh +0 -0
  106. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -0
  107. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/vscode.sh +0 -0
  108. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/warp-cli.sh +0 -0
  109. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/linux_scripts/wezterm.sh +0 -0
  110. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/package_groups.py +0 -0
  111. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/powershell_scripts/archive_pygraphviz.ps1 +0 -0
  112. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +0 -0
  113. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/powershell_scripts/openssh-server_add_key.ps1 +0 -0
  114. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/jobs/installer/powershell_scripts/openssh-server_copy-ssh-id.ps1 +0 -0
  115. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/logger.py +0 -0
  116. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/__init__.py +0 -0
  117. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/backup.toml +0 -0
  118. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/bash_shell_profiles.md +0 -0
  119. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/create_helper.py +0 -0
  120. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/create_links.py +0 -0
  121. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/create_links_export.py +0 -0
  122. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/create_shell_profile.py +0 -0
  123. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/mapper.toml +0 -0
  124. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/records/generic/shares.toml +0 -0
  125. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
  126. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
  127. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
  128. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
  129. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/Restore-ThunderbirdProfile.ps1 +0 -0
  130. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/__init__.py +0 -0
  131. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/fzf2g +0 -0
  132. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/fzfag +0 -0
  133. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/fzffg +0 -0
  134. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/fzfg +0 -0
  135. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/fzfrga +0 -0
  136. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/other/share_cloud.sh +0 -0
  137. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/other/share_nfs +0 -0
  138. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/other/start_docker +0 -0
  139. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/other/switch_ip +0 -0
  140. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/linux/skrg +0 -0
  141. /machineconfig-7.32/src/machineconfig/scripts/linux/mcfgs → /machineconfig-7.34/src/machineconfig/scripts/linux/wrap_mcfg +0 -0
  142. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/__init__.py +0 -0
  143. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/agents.py +0 -0
  144. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/__init__.py +0 -0
  145. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/command_runner/command_runner.sh +0 -0
  146. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/command_runner/prompt.txt +0 -0
  147. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/generate_files.py +0 -0
  148. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/initai.py +0 -0
  149. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +0 -0
  150. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +0 -0
  151. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/__init__.py +0 -0
  152. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/_shared.py +0 -0
  153. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/claude/claude.py +0 -0
  154. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/cline/cline.py +0 -0
  155. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Thinking-Beast-Mode.chatmode.md +0 -0
  156. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +0 -0
  157. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/deepResearch.chatmode.md +0 -0
  158. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
  159. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
  160. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/privacy.md +0 -0
  161. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +0 -0
  162. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
  163. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/crush/crush.json +0 -0
  164. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/crush/crush.py +0 -0
  165. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/crush/privacy.md +0 -0
  166. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/cursor/cursors.py +0 -0
  167. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/gemini/gemini.py +0 -0
  168. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/gemini/settings.json +0 -0
  169. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/generic.py +0 -0
  170. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
  171. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.json +0 -0
  172. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.py +0 -0
  173. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ai/vscode_tasks.py +0 -0
  174. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/cloud.py +0 -0
  175. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/croshell.py +0 -0
  176. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/devops.py +0 -0
  177. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/devops_navigator.py +0 -0
  178. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/env_manager/__init__.py +0 -0
  179. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/env_manager/path_manager_backend.py +0 -0
  180. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/fire_jobs.py +0 -0
  181. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/ftpx.py +0 -0
  182. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/__init__.py +0 -0
  183. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/__init__.py +0 -0
  184. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +0 -0
  185. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +0 -0
  186. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +0 -0
  187. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +0 -0
  188. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +0 -0
  189. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +0 -0
  190. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/fire_agents_help_search.py +0 -0
  191. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +0 -0
  192. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/fire_agents_load_balancer.py +0 -0
  193. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/templates/prompt.txt +0 -0
  194. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/templates/template.ps1 +0 -0
  195. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_agents/templates/template.sh +0 -0
  196. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/__init__.py +0 -0
  197. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/cloud_copy.py +0 -0
  198. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/cloud_helpers.py +0 -0
  199. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/cloud_mount.py +0 -0
  200. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/cloud_sync.py +0 -0
  201. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/helpers2.py +0 -0
  202. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_cloud/helpers5.py +0 -0
  203. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/__init__.py +0 -0
  204. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/crosh.py +0 -0
  205. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/pomodoro.py +0 -0
  206. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/scheduler.py +0 -0
  207. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/start_slidev.py +0 -0
  208. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/viewer.py +0 -0
  209. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_croshell/viewer_template.py +0 -0
  210. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/__init__.py +0 -0
  211. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +0 -0
  212. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_data.py +0 -0
  213. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_nw.py +0 -0
  214. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_repos.py +0 -0
  215. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_share_server.py +0 -0
  216. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_terminal.py +0 -0
  217. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/cli_utils.py +0 -0
  218. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/devops_backup_retrieve.py +0 -0
  219. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/devops_status.py +0 -0
  220. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/devops_update_repos.py +0 -0
  221. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/themes/__init__.py +0 -0
  222. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +0 -0
  223. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +0 -0
  224. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.ps1 +0 -0
  225. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_devops/themes/choose_wezterm_theme.py +0 -0
  226. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
  227. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/cloud_manager.py +0 -0
  228. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/file_wrangler.py +0 -0
  229. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +0 -0
  230. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +0 -0
  231. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
  232. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/__init__.py +0 -0
  233. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/command_builder.py +0 -0
  234. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/command_detail.py +0 -0
  235. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/command_tree.py +0 -0
  236. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/data_models.py +0 -0
  237. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/main_app.py +0 -0
  238. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_navigator/search_bar.py +0 -0
  239. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/action.py +0 -0
  240. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/action_helper.py +0 -0
  241. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/clone.py +0 -0
  242. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/count_lines.py +0 -0
  243. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +0 -0
  244. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/entrypoint.py +0 -0
  245. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/grource.py +0 -0
  246. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/record.py +0 -0
  247. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/secure_repo.py +0 -0
  248. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/sync.py +0 -0
  249. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_repos/update.py +0 -0
  250. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_sessions/__init__.py +0 -0
  251. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +0 -0
  252. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/interactive.py +0 -0
  253. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/__init__.py +0 -0
  254. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/add_ssh_key.py +0 -0
  255. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/devops_add_identity.py +0 -0
  256. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/devops_add_ssh_key.py +0 -0
  257. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_drive +0 -0
  258. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_nfs +0 -0
  259. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_nfs.py +0 -0
  260. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_nw_drive +0 -0
  261. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_nw_drive.py +0 -0
  262. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_smb +0 -0
  263. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/mount_ssh.py +0 -0
  264. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/onetimeshare.py +0 -0
  265. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/ssh_debug_linux.py +0 -0
  266. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/ssh_debug_windows.py +0 -0
  267. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/wifi_conn.py +0 -0
  268. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/nw/wsl_windows_transfer.py +0 -0
  269. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/sessions.py +0 -0
  270. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/terminal.py +0 -0
  271. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/python/utils.py +0 -0
  272. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
  273. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
  274. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
  275. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/mount_nfs.ps1 +0 -0
  276. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/mount_nw.ps1 +0 -0
  277. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/mount_smb.ps1 +0 -0
  278. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/share_cloud.cmd +0 -0
  279. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/share_smb.ps1 +0 -0
  280. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1 +0 -0
  281. /machineconfig-7.32/src/machineconfig/scripts/windows/mcfgs.ps1 → /machineconfig-7.34/src/machineconfig/scripts/windows/wrap_mcfg.ps1 +0 -0
  282. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/__init__.py +0 -0
  283. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/broot/br.sh +0 -0
  284. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
  285. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/broot/conf.toml +0 -0
  286. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/glow/glow.yml +0 -0
  287. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
  288. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/helix/config.toml +0 -0
  289. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/helix/languages.toml +0 -0
  290. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/keras/keras.json +0 -0
  291. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
  292. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
  293. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
  294. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
  295. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
  296. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
  297. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
  298. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
  299. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
  300. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
  301. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/colors +0 -0
  302. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
  303. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
  304. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
  305. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
  306. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
  307. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
  308. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/icons +0 -0
  309. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/linux/lfrc +0 -0
  310. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
  311. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
  312. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
  313. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
  314. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
  315. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
  316. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
  317. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
  318. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
  319. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
  320. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/colors +0 -0
  321. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
  322. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/icons +0 -0
  323. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
  324. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
  325. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/lfrc +0 -0
  326. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
  327. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
  328. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
  329. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
  330. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/linters/.flake8 +0 -0
  331. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/linters/.mypy.ini +0 -0
  332. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/linters/.pylintrc +0 -0
  333. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/linters/.ruff.toml +0 -0
  334. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
  335. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -0
  336. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
  337. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
  338. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/marimo/marimo.toml +0 -0
  339. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/marimo/snippets/globalize.py +0 -0
  340. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
  341. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/mprocs/windows/other +0 -0
  342. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/pistol/pistol.conf +0 -0
  343. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/presenterm/config.yaml +0 -0
  344. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/procs/.procs.toml +0 -0
  345. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
  346. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/rofi/config.rasi +0 -0
  347. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
  348. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
  349. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
  350. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
  351. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/ipy/profiles/default/__init__.py +0 -0
  352. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py +0 -0
  353. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
  354. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
  355. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
  356. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
  357. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
  358. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
  359. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
  360. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
  361. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/wt/settings.json +0 -0
  362. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/shells/zsh/init.sh +0 -0
  363. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/streamlit/config.toml +0 -0
  364. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/svim/linux/init.toml +0 -0
  365. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/svim/windows/init.toml +0 -0
  366. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
  367. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/tere/terecd.sh +0 -0
  368. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
  369. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
  370. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/wsl/.wslconfig +0 -0
  371. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/yazi/keymap.toml +0 -0
  372. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/yazi/theme.toml +0 -0
  373. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/yazi/yazi.toml +0 -0
  374. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zed/settings.json +0 -0
  375. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/commands/monitor +0 -0
  376. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
  377. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/config.kdl +0 -0
  378. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
  379. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/layouts/hist +0 -0
  380. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
  381. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
  382. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
  383. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
  384. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/__init__.py +0 -0
  385. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/apps.sh +0 -0
  386. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/apps_desktop.sh +0 -0
  387. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/apps_gui.sh +0 -0
  388. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/others/android.sh +0 -0
  389. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/others/cli_installation.sh +0 -0
  390. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
  391. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/ssh/openssh_all.sh +0 -0
  392. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/ssh/openssh_wsl.sh +0 -0
  393. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_linux/uv.sh +0 -0
  394. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_mac/__init__.py +0 -0
  395. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_mac/apps.sh +0 -0
  396. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_mac/apps_gui.sh +0 -0
  397. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_mac/ssh/openssh_setup.sh +0 -0
  398. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_mac/uv.sh +0 -0
  399. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/__init__.py +0 -0
  400. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/apps.ps1 +0 -0
  401. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
  402. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
  403. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/others/power_options.ps1 +0 -0
  404. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/ssh/add-sshkey.ps1 +0 -0
  405. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/ssh/add_identity.ps1 +0 -0
  406. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/ssh/openssh-server.ps1 +0 -0
  407. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/uv.ps1 +0 -0
  408. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/wt_and_pwsh/__init__.py +0 -0
  409. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +0 -0
  410. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/__init__.py +0 -0
  411. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/accessories.py +0 -0
  412. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/ai/__init__.py +0 -0
  413. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/cloud/onedrive/README.md +0 -0
  414. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +0 -0
  415. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/cloud/onedrive/transaction.py +0 -0
  416. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/code.py +0 -0
  417. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/art/fat_croco.txt +0 -0
  418. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/art/halfwit_croco.txt +0 -0
  419. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/art/happy_croco.txt +0 -0
  420. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/art/water_croco.txt +0 -0
  421. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/ascii_art.py +0 -0
  422. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/dbms.py +0 -0
  423. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/headers.py +0 -0
  424. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/ouch/__init__.py +0 -0
  425. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/ouch/decompress.py +0 -0
  426. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/files/read.py +0 -0
  427. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer.py +0 -0
  428. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer_utils/__init__.py +0 -0
  429. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer_utils/github_release_bulk.py +0 -0
  430. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer_utils/installer.py +0 -0
  431. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer_utils/installer_abc.py +0 -0
  432. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/installer_utils/installer_class.py +0 -0
  433. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/links.py +0 -0
  434. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/meta.py +0 -0
  435. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/notifications.py +0 -0
  436. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/options.py +0 -0
  437. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/path_helper.py +0 -0
  438. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/procs.py +0 -0
  439. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/scheduler.py +0 -0
  440. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/scheduling.py +0 -0
  441. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/schemas/fire_agents/fire_agents_input.py +0 -0
  442. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/schemas/installer/installer_types.py +0 -0
  443. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/schemas/layouts/layout_types.py +0 -0
  444. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/schemas/repos/repos_types.py +0 -0
  445. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/source_of_truth.py +0 -0
  446. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/ssh_utils/utils.py +0 -0
  447. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/terminal.py +0 -0
  448. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/tst.py +0 -0
  449. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/upgrade_packages.py +0 -0
  450. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig/utils/ve.py +0 -0
  451. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig.egg-info/dependency_links.txt +0 -0
  452. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig.egg-info/requires.txt +0 -0
  453. {machineconfig-7.32 → machineconfig-7.34}/src/machineconfig.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: machineconfig
3
- Version: 7.32
3
+ Version: 7.34
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
6
6
 
7
7
  [project]
8
8
  name = "machineconfig"
9
- version = "7.32"
9
+ version = "7.34"
10
10
  description = "Dotfiles management package"
11
11
  readme = "README.md"
12
12
  license = {text = "Apache 2.0"}
@@ -69,8 +69,8 @@ sessions = "machineconfig.scripts.python.sessions:main"
69
69
  croshell = "machineconfig.scripts.python.croshell:main"
70
70
  ftpx = "machineconfig.scripts.python.ftpx:main"
71
71
  utils = "machineconfig.scripts.python.utils:main"
72
- mcfg = "machineconfig.scripts.python.mcfg:main"
73
- machineconfig = "machineconfig.scripts.python.mcfg:main"
72
+ mcfg = "machineconfig.scripts.python.machineconfig:main"
73
+ machineconfig = "machineconfig.scripts.python.machineconfig:main"
74
74
  terminal = "machineconfig.scripts.python.terminal:main"
75
75
  define = "machineconfig.scripts.python.define:main"
76
76
 
@@ -16,10 +16,10 @@ def define_scripts():
16
16
  print(script)
17
17
 
18
18
 
19
- def main():
19
+ def get_app():
20
20
  app = typer.Typer(add_completion=False, no_args_is_help=True)
21
21
  app.command(name="scripts", help="define all scripts", no_args_is_help=False)(define_scripts)
22
- app()
22
+ return app
23
23
 
24
24
 
25
25
  # if __name__ == "__main__":
@@ -2,7 +2,7 @@
2
2
  # /// script
3
3
  # requires-python = ">=3.13"
4
4
  # dependencies = [
5
- # "machineconfig>=7.32",
5
+ # "machineconfig>=7.34",
6
6
  # "textual",
7
7
  # "pyperclip",
8
8
  # ]
@@ -39,7 +39,7 @@ def path():
39
39
  uv_with = ["textual"]
40
40
  uv_project_dir = None
41
41
  if not Path.home().joinpath("code/machineconfig").exists():
42
- uv_with.append("machineconfig>=7.32")
42
+ uv_with.append("machineconfig>=7.34")
43
43
  else:
44
44
  uv_project_dir = str(Path.home().joinpath("code/machineconfig"))
45
45
  run_shell_script(get_uv_command_executing_python_script(python_script=path.read_text(encoding="utf-8"), uv_with=uv_with, uv_project_dir=uv_project_dir)[0])
@@ -48,9 +48,9 @@ def install(no_copy_assets: Annotated[bool, typer.Option("--no-assets-copy", "-n
48
48
  else:
49
49
  import platform
50
50
  if platform.system() == "Windows":
51
- run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.32" """)
51
+ run_shell_script(r"""& "$HOME\.local\bin\uv.exe" tool install --upgrade "machineconfig>=7.34" """)
52
52
  else:
53
- run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.32" """)
53
+ run_shell_script("""$HOME/.local/bin/uv tool install --upgrade "machineconfig>=7.34" """)
54
54
  from machineconfig.profile.create_shell_profile import create_default_shell_profile
55
55
  if not no_copy_assets:
56
56
  create_default_shell_profile() # involves copying assets too
@@ -75,7 +75,7 @@ def navigate():
75
75
  path = Path(navigator.__file__).resolve().parent.joinpath("devops_navigator.py")
76
76
  from machineconfig.utils.code import run_shell_script
77
77
  if Path.home().joinpath("code/machineconfig").exists(): executable = f"""--project "{str(Path.home().joinpath("code/machineconfig"))}" --with textual"""
78
- else: executable = """--with "machineconfig>=7.32,textual" """
78
+ else: executable = """--with "machineconfig>=7.34,textual" """
79
79
  run_shell_script(f"""uv run {executable} {path}""")
80
80
 
81
81
 
@@ -80,7 +80,7 @@ git pull originEnc master
80
80
  uv_project_dir = f"""{str(Path.home().joinpath("code/machineconfig"))}"""
81
81
  uv_with = None
82
82
  else:
83
- uv_with = ["machineconfig>=7.32"]
83
+ uv_with = ["machineconfig>=7.34"]
84
84
  uv_project_dir = None
85
85
 
86
86
  import tempfile
@@ -8,6 +8,7 @@ from machineconfig.scripts.python.utils import get_app as get_utils_app
8
8
  from machineconfig.scripts.python.ftpx import ftpx as ftpx_func
9
9
  from machineconfig.scripts.python.croshell import croshell as croshell_func
10
10
  from machineconfig.scripts.python.fire_jobs import fire as get_fire_jobs_app
11
+ from machineconfig.scripts.python.define import get_app as get_define_app
11
12
 
12
13
  def get_app():
13
14
  import typer
@@ -40,6 +41,9 @@ def get_app():
40
41
  app.add_typer(utils_app, name="utils", help="[u] Utility commands", no_args_is_help=True)
41
42
  app.add_typer(utils_app, name="u", hidden=True) # short alias
42
43
 
44
+ define_app = get_define_app()
45
+ app.add_typer(define_app, name="define", help="[df] Define and manage configurations", no_args_is_help=True)
46
+ app.add_typer(define_app, name="df", hidden=True) # short alias
43
47
  return app
44
48
 
45
49
 
@@ -7,7 +7,7 @@ $user = ''
7
7
  $sharePath = ''
8
8
  $driveLetter = ''
9
9
 
10
- uv run --python 3.14 --with "machineconfig>=7.32" python -m machineconfig.scripts.python.mount_ssh
10
+ uv run --python 3.14 --with "machineconfig>=7.34" python -m machineconfig.scripts.python.mount_ssh
11
11
 
12
12
  net use T: \\sshfs.kr\$user@$host.local
13
13
  # this worked: net use T: \\sshfs\alex@alex-p51s-5.local
@@ -37,7 +37,7 @@ add_to_path_if_not_already \
37
37
  . $CONFIG_ROOT/settings/broot/br.sh
38
38
  . $CONFIG_ROOT/settings/lf/linux/exe/lfcd.sh
39
39
  . $CONFIG_ROOT/settings/tere/terecd.sh
40
- . $CONFIG_ROOT/scripts/linux/mcfgs
40
+ . $CONFIG_ROOT/scripts/linux/wrap_mcfg
41
41
 
42
42
  # check if file in ~/dotfiles/machineconfig/init_linux.sh exists and source it
43
43
  if [ -f "$HOME/dotfiles/machineconfig/init_linux.sh" ]; then
@@ -24,11 +24,11 @@ Add-ToPathIfNotAlready -Directories @(
24
24
  )
25
25
 
26
26
  # sources ================================================================
27
- if (Test-Path "$CONFIG_ROOT\scripts\windows\mcfgs.ps1") {
27
+ if (Test-Path "$CONFIG_ROOT\scripts\windows\wrap_mcfg.ps1") {
28
28
  . $CONFIG_ROOT\settings\broot\brootcd.ps1
29
29
  . $CONFIG_ROOT\settings\lf\windows\lfcd.ps1
30
30
  . $CONFIG_ROOT\settings\tere\terecd.ps1
31
- . $CONFIG_ROOT\scripts\windows\mcfgs.ps1
31
+ . $CONFIG_ROOT\scripts\windows\wrap_mcfg.ps1
32
32
 
33
33
  function lsdla { lsd -la }
34
34
  Set-Alias -Name l -Value lsdla -Option AllScope
@@ -1,16 +1,16 @@
1
1
  #!/bin/bash
2
2
  . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
3
- . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/mcfgs")
3
+ . <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/wrap_mcfg")
4
4
 
5
- alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" devops'
6
- alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" cloud'
7
- alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" agents'
8
- alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" sessions'
9
- alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" ftpx'
10
- alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" fire'
11
- alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" croshell'
12
- alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" utils'
13
- alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.32" terminal'
5
+ alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" devops'
6
+ alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" cloud'
7
+ alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" agents'
8
+ alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" sessions'
9
+ alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" ftpx'
10
+ alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" fire'
11
+ alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" croshell'
12
+ alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" utils'
13
+ alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.34" terminal'
14
14
 
15
15
  alias d='wrap_in_shell_script devops'
16
16
  alias c='wrap_in_shell_script cloud'
@@ -1,17 +1,17 @@
1
1
 
2
2
 
3
3
  iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/uv.ps1").Content
4
- iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/windows/mcfgs.ps1").Content
4
+ iex (iwr "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/windows/wrap_mcfg.ps1").Content
5
5
 
6
- function devops { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" devops $args }
7
- function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" cloud $args }
8
- function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" agents $args }
9
- function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" sessions $args }
10
- function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" ftpx $args }
11
- function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" fire $args }
12
- function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" croshell $args }
13
- function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" utils $args }
14
- function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.32" terminal $args }
6
+ function devops { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" devops $args }
7
+ function cloud { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" cloud $args }
8
+ function agents { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" agents $args }
9
+ function sessions { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" sessions $args }
10
+ function ftpx { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" ftpx $args }
11
+ function fire { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" fire $args }
12
+ function croshell { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" croshell $args }
13
+ function utils { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" utils $args }
14
+ function terminal { & "$HOME\.local\bin\uvx.exe" --python 3.14 --from "machineconfig>=7.34" terminal $args }
15
15
 
16
16
  function d { wrap_in_shell_script devops @args }
17
17
  function c { wrap_in_shell_script cloud @args }
@@ -0,0 +1,148 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Any, Union, Optional, Mapping
4
+ from pathlib import Path
5
+ import json
6
+ import pickle
7
+ import configparser
8
+
9
+
10
+ PathLike = Union[str, Path]
11
+
12
+
13
+ def _ensure_parent(path: PathLike) -> Path:
14
+ path_obj = Path(path)
15
+ path_obj.parent.mkdir(parents=True, exist_ok=True)
16
+ return path_obj
17
+
18
+
19
+ def save_pickle(obj: Any, path: PathLike, verbose: bool = False) -> Path:
20
+ path_obj = _ensure_parent(path)
21
+ with open(path_obj, "wb") as fh:
22
+ pickle.dump(obj, fh, protocol=pickle.HIGHEST_PROTOCOL)
23
+ if verbose:
24
+ print(f"Saved pickle -> {path_obj}")
25
+ return Path(path_obj)
26
+
27
+
28
+ def save_json(obj: Any, path: PathLike, indent: Optional[int] = None, verbose: bool = False) -> Path:
29
+ path_obj = _ensure_parent(path)
30
+ with open(path_obj, "w", encoding="utf-8") as fh:
31
+ json.dump(obj, fh, indent=indent, ensure_ascii=False)
32
+ fh.write("\n")
33
+ if verbose:
34
+ print(f"Saved json -> {path_obj}")
35
+ return Path(path_obj)
36
+
37
+
38
+ def save_ini(path: PathLike, obj: Mapping[str, Mapping[str, Any]], verbose: bool = False) -> Path:
39
+ cp = configparser.ConfigParser()
40
+ for section, values in obj.items():
41
+ cp[section] = {str(k): str(v) for k, v in values.items()}
42
+ path_obj = _ensure_parent(path)
43
+ with open(path_obj, "w", encoding="utf-8") as fh:
44
+ cp.write(fh)
45
+ if verbose:
46
+ print(f"Saved ini -> {path_obj}")
47
+ return Path(path_obj)
48
+
49
+
50
+ def read_ini(path: "Path", encoding: Optional[str] = None):
51
+ if not Path(path).exists() or Path(path).is_dir():
52
+ raise FileNotFoundError(f"File not found or is a directory: {path}")
53
+ import configparser
54
+ res = configparser.ConfigParser()
55
+ res.read(filenames=[str(path)], encoding=encoding)
56
+ return res
57
+
58
+
59
+ def read_json(path: "Path", r: bool = False, **kwargs: Any) -> Any: # return could be list or dict etc
60
+ import json
61
+ try:
62
+ mydict = json.loads(Path(path).read_text(encoding="utf-8"), **kwargs)
63
+ except Exception:
64
+ import re
65
+ def remove_comments(text: str) -> str:
66
+ # remove all // single-line comments
67
+ text = re.sub(r'//.*', '', text)
68
+ # remove all /* … */ block comments (non-greedy)
69
+ text = re.sub(r'/\*.*?\*/', '', text, flags=re.DOTALL)
70
+ return text
71
+ mydict = json.loads(remove_comments(Path(path).read_text(encoding="utf-8")), **kwargs)
72
+ _ = r
73
+ return mydict
74
+
75
+
76
+ def from_pickle(path: Path) -> Any:
77
+ import pickle
78
+
79
+ return pickle.loads(path.read_bytes())
80
+
81
+
82
+ def pwd2key(password: str, salt: Optional[bytes] = None, iterations: int = 10) -> bytes: # Derive a secret key from a given password and salt"""
83
+ import base64
84
+ if salt is None:
85
+ import hashlib
86
+ m = hashlib.sha256()
87
+ m.update(password.encode(encoding="utf-8"))
88
+ return base64.urlsafe_b64encode(s=m.digest()) # make url-safe bytes required by Ferent.
89
+ from cryptography.hazmat.primitives import hashes
90
+ from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
91
+ return base64.urlsafe_b64encode(PBKDF2HMAC(algorithm=hashes.SHA256(), length=32, salt=salt, iterations=iterations, backend=None).derive(password.encode()))
92
+
93
+
94
+ def encrypt(msg: bytes, key: Optional[bytes] = None, pwd: Optional[str] = None, salted: bool = True, iteration: Optional[int] = None, gen_key: bool = False) -> bytes:
95
+ import base64
96
+ from cryptography.fernet import Fernet
97
+
98
+ salt, iteration = None, None
99
+ if pwd is not None: # generate it from password
100
+ assert (key is None) and (type(pwd) is str), "❌ You can either pass key or pwd, or none of them, but not both."
101
+ import secrets
102
+ iteration = iteration or secrets.randbelow(exclusive_upper_bound=1_000_000)
103
+ salt = secrets.token_bytes(nbytes=16) if salted else None
104
+ key_resolved = pwd2key(password=pwd, salt=salt, iterations=iteration)
105
+ elif key is None:
106
+ if gen_key:
107
+ key_resolved = Fernet.generate_key()
108
+ Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").write_bytes(key_resolved)
109
+ else:
110
+ try:
111
+ key_resolved = Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").read_bytes()
112
+ print(f"⚠️ Using key from: {Path.home().joinpath('dotfiles/creds/data/encrypted_files_key.bytes')}")
113
+ except FileNotFoundError as err:
114
+ print("\n" * 3, "~" * 50, """Consider Loading up your dotfiles or pass `gen_key=True` to make and save one.""", "~" * 50, "\n" * 3)
115
+ raise FileNotFoundError(err) from err
116
+ elif isinstance(key, (str, Path)):
117
+ key_resolved = Path(key).read_bytes() # a path to a key file was passed, read it:
118
+ elif type(key) is bytes:
119
+ key_resolved = key # key passed explicitly
120
+ else:
121
+ raise TypeError("❌ Key must be either a path, bytes object or None.")
122
+ code = Fernet(key=key_resolved).encrypt(msg)
123
+ if pwd is not None and salt is not None and iteration is not None:
124
+ return base64.urlsafe_b64encode(b"%b%b%b" % (salt, iteration.to_bytes(4, "big"), base64.urlsafe_b64decode(code)))
125
+ return code
126
+
127
+
128
+ def decrypt(token: bytes, key: Optional[bytes] = None, pwd: Optional[str] = None, salted: bool = True) -> bytes:
129
+ import base64
130
+ if pwd is not None:
131
+ assert key is None, "❌ You can either pass key or pwd, or none of them, but not both."
132
+ if salted:
133
+ decoded = base64.urlsafe_b64decode(token)
134
+ salt, iterations, token = decoded[:16], decoded[16:20], base64.urlsafe_b64encode(decoded[20:])
135
+ key_resolved = pwd2key(password=pwd, salt=salt, iterations=int.from_bytes(bytes=iterations, byteorder="big"))
136
+ else:
137
+ key_resolved = pwd2key(password=pwd) # trailing `;` prevents IPython from caching the result.
138
+ elif type(key) is bytes:
139
+ assert pwd is None, "❌ You can either pass key or pwd, or none of them, but not both."
140
+ key_resolved = key # passsed explicitly
141
+ elif key is None:
142
+ key_resolved = Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").read_bytes() # read from file
143
+ elif isinstance(key, (str, Path)):
144
+ key_resolved = Path(key).read_bytes() # passed a path to a file containing kwy
145
+ else:
146
+ raise TypeError(f"❌ Key must be either str, P, Path, bytes or None. Recieved: {type(key)}")
147
+ from cryptography.fernet import Fernet
148
+ return Fernet(key=key_resolved).decrypt(token)
@@ -1,4 +1,5 @@
1
1
  from machineconfig.utils.accessories import randstr
2
+ from machineconfig.utils.io import decrypt, encrypt
2
3
 
3
4
  from datetime import datetime
4
5
  import time
@@ -10,6 +11,7 @@ from platform import system
10
11
  from typing import Any, Optional, Union, Callable, TypeAlias, Literal
11
12
 
12
13
 
14
+
13
15
  OPLike: TypeAlias = Union[str, "PathExtended", Path, None]
14
16
  PLike: TypeAlias = Union[str, "PathExtended", Path]
15
17
  FILE_MODE: TypeAlias = Literal["r", "w", "x", "a"]
@@ -54,81 +56,6 @@ def _run_shell_command(
54
56
  )
55
57
 
56
58
 
57
- def pwd2key(password: str, salt: Optional[bytes] = None, iterations: int = 10) -> bytes: # Derive a secret key from a given password and salt"""
58
- import base64
59
-
60
- if salt is None:
61
- import hashlib
62
-
63
- m = hashlib.sha256()
64
- m.update(password.encode(encoding="utf-8"))
65
- return base64.urlsafe_b64encode(s=m.digest()) # make url-safe bytes required by Ferent.
66
- from cryptography.hazmat.primitives import hashes
67
- from cryptography.hazmat.primitives.kdf.pbkdf2 import PBKDF2HMAC
68
-
69
- return base64.urlsafe_b64encode(PBKDF2HMAC(algorithm=hashes.SHA256(), length=32, salt=salt, iterations=iterations, backend=None).derive(password.encode()))
70
-
71
-
72
- def encrypt(msg: bytes, key: Optional[bytes] = None, pwd: Optional[str] = None, salted: bool = True, iteration: Optional[int] = None, gen_key: bool = False) -> bytes:
73
- import base64
74
- from cryptography.fernet import Fernet
75
-
76
- salt, iteration = None, None
77
- if pwd is not None: # generate it from password
78
- assert (key is None) and (type(pwd) is str), "❌ You can either pass key or pwd, or none of them, but not both."
79
- import secrets
80
-
81
- iteration = iteration or secrets.randbelow(exclusive_upper_bound=1_000_000)
82
- salt = secrets.token_bytes(nbytes=16) if salted else None
83
- key_resolved = pwd2key(password=pwd, salt=salt, iterations=iteration)
84
- elif key is None:
85
- if gen_key:
86
- key_resolved = Fernet.generate_key()
87
- Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").write_bytes(key_resolved)
88
- else:
89
- try:
90
- key_resolved = Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").read_bytes()
91
- print(f"⚠️ Using key from: {Path.home().joinpath('dotfiles/creds/data/encrypted_files_key.bytes')}")
92
- except FileNotFoundError as err:
93
- print("\n" * 3, "~" * 50, """Consider Loading up your dotfiles or pass `gen_key=True` to make and save one.""", "~" * 50, "\n" * 3)
94
- raise FileNotFoundError(err) from err
95
- elif isinstance(key, (str, PathExtended, Path)):
96
- key_resolved = Path(key).read_bytes() # a path to a key file was passed, read it:
97
- elif type(key) is bytes:
98
- key_resolved = key # key passed explicitly
99
- else:
100
- raise TypeError("❌ Key must be either a path, bytes object or None.")
101
- code = Fernet(key=key_resolved).encrypt(msg)
102
- if pwd is not None and salt is not None and iteration is not None:
103
- return base64.urlsafe_b64encode(b"%b%b%b" % (salt, iteration.to_bytes(4, "big"), base64.urlsafe_b64decode(code)))
104
- return code
105
-
106
-
107
- def decrypt(token: bytes, key: Optional[bytes] = None, pwd: Optional[str] = None, salted: bool = True) -> bytes:
108
- import base64
109
-
110
- if pwd is not None:
111
- assert key is None, "❌ You can either pass key or pwd, or none of them, but not both."
112
- if salted:
113
- decoded = base64.urlsafe_b64decode(token)
114
- salt, iterations, token = decoded[:16], decoded[16:20], base64.urlsafe_b64encode(decoded[20:])
115
- key_resolved = pwd2key(password=pwd, salt=salt, iterations=int.from_bytes(bytes=iterations, byteorder="big"))
116
- else:
117
- key_resolved = pwd2key(password=pwd) # trailing `;` prevents IPython from caching the result.
118
- elif type(key) is bytes:
119
- assert pwd is None, "❌ You can either pass key or pwd, or none of them, but not both."
120
- key_resolved = key # passsed explicitly
121
- elif key is None:
122
- key_resolved = Path.home().joinpath("dotfiles/creds/data/encrypted_files_key.bytes").read_bytes() # read from file
123
- elif isinstance(key, (str, Path)):
124
- key_resolved = Path(key).read_bytes() # passed a path to a file containing kwy
125
- else:
126
- raise TypeError(f"❌ Key must be either str, P, Path, bytes or None. Recieved: {type(key)}")
127
- from cryptography.fernet import Fernet
128
-
129
- return Fernet(key=key_resolved).decrypt(token)
130
-
131
-
132
59
  def validate_name(astring: str, replace: str = "_") -> str:
133
60
  import re
134
61
 
@@ -8,7 +8,7 @@ from machineconfig.utils.terminal import Response
8
8
  from machineconfig.utils.accessories import pprint, randstr
9
9
  from machineconfig.utils.meta import lambda_to_python_script
10
10
  UV_RUN_CMD = "$HOME/.local/bin/uv run" if platform.system() != "Windows" else """& "$env:USERPROFILE/.local/bin/uv" run"""
11
- MACHINECONFIG_VERSION = "machineconfig>=7.32"
11
+ MACHINECONFIG_VERSION = "machineconfig>=7.34"
12
12
  DEFAULT_PICKLE_SUBDIR = "tmp_results/tmp_scripts/ssh"
13
13
 
14
14
  class SSH:
@@ -245,6 +245,8 @@ class SSH:
245
245
  from pathlib import Path
246
246
  import shutil
247
247
  directory_path = Path(target_rel2home).expanduser()
248
+ if not directory_path.is_absolute():
249
+ directory_path = Path.home().joinpath(directory_path)
248
250
  if overwrite and directory_path.exists():
249
251
  if directory_path.is_dir():
250
252
  shutil.rmtree(directory_path)
@@ -318,9 +320,11 @@ class SSH:
318
320
  tmp_py_file = Path.home().joinpath(f"{DEFAULT_PICKLE_SUBDIR}/create_target_dir_{randstr()}.py")
319
321
  tmp_py_file.parent.mkdir(parents=True, exist_ok=True)
320
322
  tmp_py_file.write_text(command, encoding="utf-8")
321
- transferred_py_file = self.copy_from_here(source_path=str(tmp_py_file), target_rel2home=None, compress_with_zip=True, recursive=False, overwrite_existing=True)
322
- self.run_shell(command=f"""{UV_RUN_CMD} python {transferred_py_file}""", verbose_output=False, description=f"UNZIPPING {target_rel2home}", strict_stderr=True, strict_return_code=True)
323
+ remote_tmp_py = tmp_py_file.relative_to(Path.home()).as_posix()
324
+ self.copy_from_here(source_path=str(tmp_py_file), target_rel2home=None, compress_with_zip=False, recursive=False, overwrite_existing=True)
325
+ self.run_shell(command=f"""{UV_RUN_CMD} python {remote_tmp_py}""", verbose_output=False, description=f"UNZIPPING {target_rel2home}", strict_stderr=True, strict_return_code=True)
323
326
  source_obj.unlink()
327
+ tmp_py_file.unlink(missing_ok=True)
324
328
  return None
325
329
 
326
330
  def _check_remote_is_dir(self, source_path: Union[str, Path]) -> bool:
@@ -388,7 +392,7 @@ class SSH:
388
392
  assert isinstance(result, str), f"Could not resolve source path {source_path}"
389
393
  return result
390
394
 
391
- def copy_to_here(self, source: Union[str, Path], target: Optional[Union[str, Path]], compress_with_zip: bool = False, recursive: bool = False, internal_call: bool = False) -> Path:
395
+ def copy_to_here(self, source: Union[str, Path], target: Optional[Union[str, Path]], compress_with_zip: bool = False, recursive: bool = False, internal_call: bool = False) -> None:
392
396
  if self.sftp is None:
393
397
  raise RuntimeError(f"SFTP connection not available for {self.hostname}. Cannot transfer files.")
394
398
 
@@ -484,7 +488,7 @@ class SSH:
484
488
  local_file_target = target_dir.joinpath(Path(file_path).relative_to(expanded_source))
485
489
  self.copy_to_here(source=file_path, target=local_file_target, compress_with_zip=False, recursive=False, internal_call=True)
486
490
 
487
- return target_dir
491
+ return None
488
492
 
489
493
  if compress_with_zip:
490
494
  print("🗜️ ZIPPING ...")
@@ -607,7 +611,7 @@ class SSH:
607
611
  self.run_py(python_code=command, uv_with=[MACHINECONFIG_VERSION], uv_project_dir=None, description="Cleaning temp zip files @ remote.", verbose_output=False, strict_stderr=True, strict_return_code=True)
608
612
 
609
613
  print("\n")
610
- return target_obj
614
+ return None
611
615
 
612
616
  if __name__ == "__main__":
613
617
  ssh = SSH(host="p51s", username=None, hostname=None, ssh_key_path=None, password=None, port=22, enable_compression=False)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: machineconfig
3
- Version: 7.32
3
+ Version: 7.34
4
4
  Summary: Dotfiles management package
5
5
  Author-email: Alex Al-Saffar <programmer@usa.com>
6
6
  License: Apache 2.0
@@ -119,8 +119,8 @@ src/machineconfig/scripts/linux/fzfag
119
119
  src/machineconfig/scripts/linux/fzffg
120
120
  src/machineconfig/scripts/linux/fzfg
121
121
  src/machineconfig/scripts/linux/fzfrga
122
- src/machineconfig/scripts/linux/mcfgs
123
122
  src/machineconfig/scripts/linux/skrg
123
+ src/machineconfig/scripts/linux/wrap_mcfg
124
124
  src/machineconfig/scripts/linux/other/share_cloud.sh
125
125
  src/machineconfig/scripts/linux/other/share_nfs
126
126
  src/machineconfig/scripts/linux/other/start_docker
@@ -135,7 +135,7 @@ src/machineconfig/scripts/python/devops_navigator.py
135
135
  src/machineconfig/scripts/python/fire_jobs.py
136
136
  src/machineconfig/scripts/python/ftpx.py
137
137
  src/machineconfig/scripts/python/interactive.py
138
- src/machineconfig/scripts/python/mcfg.py
138
+ src/machineconfig/scripts/python/machineconfig.py
139
139
  src/machineconfig/scripts/python/sessions.py
140
140
  src/machineconfig/scripts/python/terminal.py
141
141
  src/machineconfig/scripts/python/utils.py
@@ -264,7 +264,7 @@ src/machineconfig/scripts/python/nw/wsl_windows_transfer.py
264
264
  src/machineconfig/scripts/windows/fzfb.ps1
265
265
  src/machineconfig/scripts/windows/fzfg.ps1
266
266
  src/machineconfig/scripts/windows/fzfrga.bat
267
- src/machineconfig/scripts/windows/mcfgs.ps1
267
+ src/machineconfig/scripts/windows/wrap_mcfg.ps1
268
268
  src/machineconfig/scripts/windows/mounts/mount_nfs.ps1
269
269
  src/machineconfig/scripts/windows/mounts/mount_nw.ps1
270
270
  src/machineconfig/scripts/windows/mounts/mount_smb.ps1
@@ -6,8 +6,8 @@ define = machineconfig.scripts.python.define:main
6
6
  devops = machineconfig.scripts.python.devops:main
7
7
  fire = machineconfig.scripts.python.fire_jobs:main
8
8
  ftpx = machineconfig.scripts.python.ftpx:main
9
- machineconfig = machineconfig.scripts.python.mcfg:main
10
- mcfg = machineconfig.scripts.python.mcfg:main
9
+ machineconfig = machineconfig.scripts.python.machineconfig:main
10
+ mcfg = machineconfig.scripts.python.machineconfig:main
11
11
  sessions = machineconfig.scripts.python.sessions:main
12
12
  terminal = machineconfig.scripts.python.terminal:main
13
13
  utils = machineconfig.scripts.python.utils:main
@@ -1,79 +0,0 @@
1
- from __future__ import annotations
2
-
3
- from typing import Any, Union, Optional, Mapping
4
- from pathlib import Path
5
- import json
6
- import pickle
7
- import configparser
8
-
9
-
10
- PathLike = Union[str, Path]
11
-
12
-
13
- def _ensure_parent(path: PathLike) -> Path:
14
- path_obj = Path(path)
15
- path_obj.parent.mkdir(parents=True, exist_ok=True)
16
- return path_obj
17
-
18
-
19
- def save_pickle(obj: Any, path: PathLike, verbose: bool = False) -> Path:
20
- path_obj = _ensure_parent(path)
21
- with open(path_obj, "wb") as fh:
22
- pickle.dump(obj, fh, protocol=pickle.HIGHEST_PROTOCOL)
23
- if verbose:
24
- print(f"Saved pickle -> {path_obj}")
25
- return Path(path_obj)
26
-
27
-
28
- def save_json(obj: Any, path: PathLike, indent: Optional[int] = None, verbose: bool = False) -> Path:
29
- path_obj = _ensure_parent(path)
30
- with open(path_obj, "w", encoding="utf-8") as fh:
31
- json.dump(obj, fh, indent=indent, ensure_ascii=False)
32
- fh.write("\n")
33
- if verbose:
34
- print(f"Saved json -> {path_obj}")
35
- return Path(path_obj)
36
-
37
-
38
- def save_ini(path: PathLike, obj: Mapping[str, Mapping[str, Any]], verbose: bool = False) -> Path:
39
- cp = configparser.ConfigParser()
40
- for section, values in obj.items():
41
- cp[section] = {str(k): str(v) for k, v in values.items()}
42
- path_obj = _ensure_parent(path)
43
- with open(path_obj, "w", encoding="utf-8") as fh:
44
- cp.write(fh)
45
- if verbose:
46
- print(f"Saved ini -> {path_obj}")
47
- return Path(path_obj)
48
-
49
-
50
- def read_ini(path: "Path", encoding: Optional[str] = None):
51
- if not Path(path).exists() or Path(path).is_dir():
52
- raise FileNotFoundError(f"File not found or is a directory: {path}")
53
- import configparser
54
- res = configparser.ConfigParser()
55
- res.read(filenames=[str(path)], encoding=encoding)
56
- return res
57
-
58
-
59
- def read_json(path: "Path", r: bool = False, **kwargs: Any) -> Any: # return could be list or dict etc
60
- import json
61
- try:
62
- mydict = json.loads(Path(path).read_text(encoding="utf-8"), **kwargs)
63
- except Exception:
64
- import re
65
- def remove_comments(text: str) -> str:
66
- # remove all // single-line comments
67
- text = re.sub(r'//.*', '', text)
68
- # remove all /* … */ block comments (non-greedy)
69
- text = re.sub(r'/\*.*?\*/', '', text, flags=re.DOTALL)
70
- return text
71
- mydict = json.loads(remove_comments(Path(path).read_text(encoding="utf-8")), **kwargs)
72
- _ = r
73
- return mydict
74
-
75
-
76
- def from_pickle(path: Path) -> Any:
77
- import pickle
78
-
79
- return pickle.loads(path.read_bytes())
File without changes
File without changes