machineconfig 6.37__tar.gz → 6.39__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.
- {machineconfig-6.37/src/machineconfig.egg-info → machineconfig-6.39}/PKG-INFO +1 -1
- {machineconfig-6.37 → machineconfig-6.39}/pyproject.toml +4 -3
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/installer_data.json +1 -1
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud.py +5 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/cloud_sync.py +4 -4
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell.py +51 -7
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops.py +4 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_repos.py +5 -5
- machineconfig-6.39/src/machineconfig/scripts/python/devops_helpers/cli_utils.py +79 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/action.py +6 -6
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/entrypoint.py +1 -2
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/bash/init.sh +1 -1
- machineconfig-6.39/src/machineconfig/utils/files/art/fat_croco.txt +10 -0
- machineconfig-6.39/src/machineconfig/utils/files/art/halfwit_croco.txt +9 -0
- machineconfig-6.39/src/machineconfig/utils/files/art/happy_croco.txt +22 -0
- machineconfig-6.39/src/machineconfig/utils/files/art/water_croco.txt +11 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/headers.py +4 -10
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer.py +0 -6
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/installer_abc.py +3 -2
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/installer_class.py +1 -1
- {machineconfig-6.37 → machineconfig-6.39/src/machineconfig.egg-info}/PKG-INFO +1 -1
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig.egg-info/SOURCES.txt +5 -0
- {machineconfig-6.37 → machineconfig-6.39}/MANIFEST.in +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/README.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/setup.cfg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/cloud_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/data_transfer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/distribute.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/file_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/job_params.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/loader_runner.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/remote_machine.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/run_cloud.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/run_cluster.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/run_remote.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/script_execution.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/script_notify_upon_completion.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/helpers/enhanced_command_runner.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/utils/load_balancer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/utils/maker.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_local.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_remote.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_local.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/templates/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/templates/cli_trogon.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/check_installations.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom/gh.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom/hx.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/alacritty.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/brave.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/bypass_paywall.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/code.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/cursor.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/espanso.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/goes.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/lvim.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/nerdfont.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/redis.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/wezterm.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/custom_dev/winget.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/brave.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/docker.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/docker_start.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/edge.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/nerdfont.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/ngrok.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/q.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/redis.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/vscode.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/warp-cli.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/linux_scripts/wezterm.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/package_groups.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/linux/msc/cli_agents.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/linux/msc/lid.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/linux/msc/network.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/python/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/python/python_ve_symlink.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/python/vscode/api.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/windows/archive/openssh-server_add_key.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/windows/archive/openssh-server_copy-ssh-id.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/windows/msc/cli_agents.bat +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/jobs/windows/msc/cli_agents.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/logger.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/backup.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/bash_shell_profiles.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/create_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/create_links.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/create_links_export.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/create_shell_profile.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/mapper.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/records/generic/shares.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/Restore-ThunderbirdProfile.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/fzf2g +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/fzfag +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/fzffg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/fzfg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/fzfrga +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/other/share_cloud.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/other/share_nfs +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/other/share_smb +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/other/start_docker +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/other/switch_ip +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/skrg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/warp-cli.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/linux/z_ls +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/agents.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/command_runner/command_runner.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/command_runner/prompt.txt +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/generate_files.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/initai.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/_shared.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/claude/claude.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/cline/cline.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/deepResearch.chatmode.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/privacy.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/crush/crush.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/crush/crush.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/crush/privacy.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/cursor/cursors.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/gemini/gemini.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/gemini/settings.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/generic.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ai/vscode_tasks.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/cloud_copy.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/cloud_helpers.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/cloud_mount.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/helpers2.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/cloud_helpers/helpers5.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/pomodoro.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/scheduler.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/start_slidev.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/viewer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/croshell_helpers/viewer_template.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_config.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_config_dotfile.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_data.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_nw.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_self.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_share_server.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/cli_terminal.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/devops_backup_retrieve.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/devops_status.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/devops_update_repos.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/themes/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/themes/choose_pwsh_theme.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_helpers/themes/choose_wezterm_theme.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/devops_navigator.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/entry.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/env_manager/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/env_manager/path_manager_backend.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/env_manager/path_manager_tui.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/fire_jobs.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/ftpx.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/command_builder.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/command_detail.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/command_tree.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/data_models.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/main_app.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helper_navigator/search_bar.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_crush.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_crush.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_cursor_agents.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_gemini.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_qwen.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/fire_agents_help_launch.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/fire_agents_help_search.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/fire_agents_helper_types.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/fire_agents_load_balancer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/helpers4.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/prompt.txt +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/template.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire/template.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire_command/cloud_manager.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_repos/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_repos/grource.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/helpers_repos/secure_repo.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/interactive.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/add_ssh_key.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/devops_add_identity.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/devops_add_ssh_key.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_drive +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_nfs +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_nfs.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_nw_drive +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_nw_drive.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_smb +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/mount_ssh.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/onetimeshare.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/ssh_debug_linux.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/ssh_debug_windows.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/wifi_conn.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/nw/wsl_windows_transfer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/clone.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/count_lines.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/count_lines_frontend.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/record.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/sync.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/update.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/sessions.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/sessions_helpers/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/sessions_helpers/sessions_multiprocess.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/mount_nfs.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/mount_nw.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/mount_smb.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/mount_ssh.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/share_cloud.cmd +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/share_smb.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/windows/mounts/unlock_bitlocker.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/broot/br.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/broot/conf.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/glow/glow.yml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/helix/config.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/helix/languages.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/keras/keras.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/colors +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/icons +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/linux/lfrc +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/colors +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/icons +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/lfrc +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/linters/.flake8 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/linters/.mypy.ini +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/linters/.pylintrc +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/linters/.ruff.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/mprocs/windows/other +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/pistol/pistol.conf +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/presenterm/config.yaml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/procs/.procs.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/rofi/config.rasi +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/ipy/profiles/default/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/pwsh/init.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/shells/wt/settings.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/streamlit/config.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/svim/linux/init.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/svim/windows/init.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/tere/terecd.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/wsl/.wslconfig +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/yazi/keymap.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/yazi/theme.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/yazi/yazi.toml +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zed/settings.json +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/commands/monitor +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/config.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/layouts/hist +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/apps.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/apps_desktop.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/apps_gui.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/nix/cli_installation.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/ssh/openssh_all.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/ssh/openssh_wsl.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/uv.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/web_shortcuts/android.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/apps.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/others/power_options.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/ssh/add-sshkey.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/ssh/add_identity.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/ssh/openssh-server.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/uv.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/wt_and_pwsh/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/accessories.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/ai/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/cloud/onedrive/README.md +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/cloud/onedrive/transaction.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/code.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/ascii_art.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/dbms.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/ouch/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/ouch/decompress.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/files/read.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/__init__.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/github_release_bulk.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/installer.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/io.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/links.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/meta.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/notifications.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/options.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/path_extended.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/path_helper.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/procs.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/scheduler.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/scheduling.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/schemas/fire_agents/fire_agents_input.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/schemas/installer/installer_types.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/schemas/layouts/layout_types.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/schemas/repos/repos_types.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/source_of_truth.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/ssh.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/ssh_utils/utils.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/terminal.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/tst.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/upgrade_packages.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/ve.py +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig.egg-info/dependency_links.txt +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig.egg-info/entry_points.txt +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig.egg-info/requires.txt +0 -0
- {machineconfig-6.37 → machineconfig-6.39}/src/machineconfig.egg-info/top_level.txt +0 -0
|
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "machineconfig"
|
|
9
|
-
version = "6.
|
|
9
|
+
version = "6.39"
|
|
10
10
|
description = "Dotfiles management package"
|
|
11
11
|
readme = "README.md"
|
|
12
12
|
license = {text = "Apache 2.0"}
|
|
@@ -79,7 +79,7 @@ license-files = []
|
|
|
79
79
|
where = ["src"]
|
|
80
80
|
|
|
81
81
|
[tool.setuptools.package-data]
|
|
82
|
-
machineconfig = ["**/*.toml", "**/*.md", "**/*.sh", "**/*.ps1"]
|
|
82
|
+
machineconfig = ["**/*.toml", "**/*.md", "**/*.sh", "**/*.ps1", "**/*.txt"]
|
|
83
83
|
|
|
84
84
|
[dependency-groups]
|
|
85
85
|
dev = [
|
|
@@ -88,7 +88,6 @@ dev = [
|
|
|
88
88
|
"cleanpy>=0.5.1",
|
|
89
89
|
"cowsay>=6.1",
|
|
90
90
|
# "duckdb-engine>=0.17.0",
|
|
91
|
-
"euporie>=2.8.14",
|
|
92
91
|
"ipdb>=0.13.13",
|
|
93
92
|
"ipykernel>=6.30.1",
|
|
94
93
|
"ipython>=9.5.0",
|
|
@@ -123,6 +122,8 @@ other = [
|
|
|
123
122
|
"pycrucible>=0.3.0",
|
|
124
123
|
"vt-py>=0.21.0",
|
|
125
124
|
]
|
|
125
|
+
# "euporie>=2.8.14",
|
|
126
|
+
|
|
126
127
|
|
|
127
128
|
[tool.pycrucible]
|
|
128
129
|
entry = "src/machineconfig/scripts/python/devops.py"
|
|
@@ -73,8 +73,8 @@ def main(
|
|
|
73
73
|
cmd_line = f"{rclone_cmd[:65]}..."
|
|
74
74
|
console.print(Panel(f"{title}\n{cmd_line}", title="[bold blue]Command[/bold blue]", expand=False))
|
|
75
75
|
|
|
76
|
-
#
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
76
|
+
# import subprocess
|
|
77
|
+
# subprocess.run(txt, shell=True, check=True)
|
|
78
|
+
from machineconfig.utils.code import run_shell_script
|
|
79
|
+
run_shell_script(txt)
|
|
80
80
|
|
|
@@ -8,11 +8,14 @@ from typing import Annotated, Optional
|
|
|
8
8
|
import typer
|
|
9
9
|
from machineconfig.utils.path_extended import PathExtended
|
|
10
10
|
from machineconfig.utils.accessories import randstr
|
|
11
|
+
import json
|
|
12
|
+
import shutil
|
|
11
13
|
|
|
12
14
|
from machineconfig.utils.options import choose_from_options
|
|
13
|
-
# from machineconfig.utils.ve import get_ve_activate_line
|
|
14
15
|
from rich.console import Console
|
|
15
16
|
from rich.panel import Panel
|
|
17
|
+
# from machineconfig.utils.ve import get_ve_path_and_ipython_profile
|
|
18
|
+
# from pathlib import Path
|
|
16
19
|
# from rich.text import Text
|
|
17
20
|
|
|
18
21
|
console = Console()
|
|
@@ -61,14 +64,15 @@ except Exception as e:
|
|
|
61
64
|
"""
|
|
62
65
|
|
|
63
66
|
|
|
64
|
-
|
|
65
67
|
def croshell(
|
|
66
|
-
path: Annotated[Optional[str], typer.Argument(help="
|
|
68
|
+
path: Annotated[Optional[str], typer.Argument(help="path of file to read.")] = "",
|
|
67
69
|
python: Annotated[bool, typer.Option("--python", "-p", help="flag to use python over IPython.")] = False,
|
|
68
70
|
profile: Annotated[Optional[str], typer.Option("--profile", "-P", help="ipython profile to use, defaults to default profile.")] = None,
|
|
69
71
|
jupyter: Annotated[bool, typer.Option("--jupyter", "-j", help="run in jupyter interactive console")] = False,
|
|
72
|
+
vscode: Annotated[bool, typer.Option("--vscode", "-c", help="open the script in vscode")] = False,
|
|
70
73
|
streamlit_viewer: Annotated[bool, typer.Option("--stViewer", "-s", help="view in streamlit app")] = False,
|
|
71
74
|
visidata: Annotated[bool, typer.Option("--visidata", "-V", help="open data file in visidata")] = False,
|
|
75
|
+
marimo: Annotated[bool, typer.Option("--marimo", "-m", help="open the notebook using marimo if available")] = False,
|
|
72
76
|
local: Annotated[bool, typer.Option("--local", "-l", help="run in local mode, not in virtual env.")]= False,
|
|
73
77
|
) -> None:
|
|
74
78
|
# ==================================================================================
|
|
@@ -104,7 +108,6 @@ def croshell(
|
|
|
104
108
|
program = get_read_data_pycode(str(file_obj))
|
|
105
109
|
text = f"📄 Reading data from: {file_obj.name}"
|
|
106
110
|
console.print(Panel(text, title="[bold blue]Info[/bold blue]"))
|
|
107
|
-
|
|
108
111
|
else: # if nothing is specified, then run in interactive mode.
|
|
109
112
|
text = "⌨️ Entering interactive mode"
|
|
110
113
|
console.print(Panel(text, title="[bold blue]Info[/bold blue]"))
|
|
@@ -124,7 +127,7 @@ from pathlib import Path
|
|
|
124
127
|
|
|
125
128
|
"""
|
|
126
129
|
|
|
127
|
-
pyfile = PathExtended.tmp().joinpath(f"tmp_scripts/python/croshell/{randstr()}.py")
|
|
130
|
+
pyfile = PathExtended.tmp().joinpath(f"tmp_scripts/python/croshell/{randstr()}/script.py")
|
|
128
131
|
pyfile.parent.mkdir(parents=True, exist_ok=True)
|
|
129
132
|
|
|
130
133
|
title = "Reading Data"
|
|
@@ -134,10 +137,49 @@ from pathlib import Path
|
|
|
134
137
|
ipython_profile = ipython_profile if ipython_profile is not None else "default"
|
|
135
138
|
# ve_activateion_line = get_ve_activate_line(ve_name=args.ve or ve_profile_suggested, a_path=str(PathExtended.cwd()))
|
|
136
139
|
|
|
140
|
+
# prepare notebook target path (avoid relying on locals())
|
|
141
|
+
nb_target = pyfile.with_suffix(".ipynb")
|
|
142
|
+
if jupyter:
|
|
143
|
+
try:
|
|
144
|
+
nb_path = pyfile.with_suffix(".ipynb")
|
|
145
|
+
nb_content = {
|
|
146
|
+
"cells": [
|
|
147
|
+
{
|
|
148
|
+
"cell_type": "code",
|
|
149
|
+
"metadata": {"language": "python"},
|
|
150
|
+
"source": [python_program],
|
|
151
|
+
"outputs": [],
|
|
152
|
+
"execution_count": None,
|
|
153
|
+
}
|
|
154
|
+
],
|
|
155
|
+
"metadata": {},
|
|
156
|
+
"nbformat": 4,
|
|
157
|
+
"nbformat_minor": 5,
|
|
158
|
+
}
|
|
159
|
+
nb_path.write_text(json.dumps(nb_content), encoding="utf-8")
|
|
160
|
+
nb_target = nb_path
|
|
161
|
+
except Exception:
|
|
162
|
+
# if writing fails, fall back to the default nb_target already set
|
|
163
|
+
pass
|
|
137
164
|
if visidata:
|
|
138
165
|
fire_line = f"uv run --with visidata,pyarrow vd {str(file_obj)}"
|
|
166
|
+
elif marimo:
|
|
167
|
+
fire_line = f"""
|
|
168
|
+
cd {str(pyfile.parent)}
|
|
169
|
+
uv run --with marimo marimo convert {pyfile.name} -o marimo_nb.py
|
|
170
|
+
uv run --with "marimo,machineconfig[plot]>=6.36" marimo edit marimo_nb.py
|
|
171
|
+
"""
|
|
139
172
|
elif jupyter:
|
|
140
|
-
fire_line = f"
|
|
173
|
+
fire_line = f"uv run --with 'machineconfig[plot]>=6.36' jupyter-lab {str(nb_target)}"
|
|
174
|
+
elif vscode:
|
|
175
|
+
fire_line = f"""
|
|
176
|
+
cd {str(pyfile.parent)}
|
|
177
|
+
uv init --python 3.14
|
|
178
|
+
uv venv
|
|
179
|
+
uv add "machineconfig[plot]>=6.36"
|
|
180
|
+
# code serve-web
|
|
181
|
+
code --new-window {str(pyfile)}
|
|
182
|
+
"""
|
|
141
183
|
else:
|
|
142
184
|
if interpreter == "ipython": profile = f" --profile {ipython_profile} --no-banner"
|
|
143
185
|
else: profile = ""
|
|
@@ -150,7 +192,9 @@ from pathlib import Path
|
|
|
150
192
|
console.print(Panel("❌ Could not determine the local machineconfig repo root. Please ensure the `REPO_ROOT` in `source_of_truth.py` is correctly set to the local path of the machineconfig repo, or do not use the `--local` flag.", title="Error", border_style="red"))
|
|
151
193
|
return
|
|
152
194
|
else: ve_line = """--with "machineconfig[plot]>=6.36" """
|
|
153
|
-
|
|
195
|
+
# ve_path_maybe, ipython_profile_maybe = get_ve_path_and_ipython_profile(Path.cwd())
|
|
196
|
+
# --python 3.14
|
|
197
|
+
fire_line = f"uv run {ve_line} {interpreter} {interactivity} {profile} {str(pyfile)}"
|
|
154
198
|
|
|
155
199
|
from machineconfig.utils.code import run_shell_script
|
|
156
200
|
run_shell_script(fire_line, clean_env=False)
|
|
@@ -8,6 +8,7 @@ import machineconfig.scripts.python.devops_helpers.cli_config as cli_config
|
|
|
8
8
|
import machineconfig.scripts.python.devops_helpers.cli_self as cli_self
|
|
9
9
|
import machineconfig.scripts.python.devops_helpers.cli_data as cli_data
|
|
10
10
|
import machineconfig.scripts.python.devops_helpers.cli_nw as cli_network
|
|
11
|
+
from machineconfig.scripts.python.devops_helpers.cli_utils import get_app as get_app_utils
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
def install(which: Annotated[Optional[str], typer.Argument(..., help="Comma-separated list of program names to install, or group name if --group flag is set.")] = None,
|
|
@@ -39,6 +40,9 @@ def get_app():
|
|
|
39
40
|
app_nw = cli_network.get_app()
|
|
40
41
|
app.add_typer(app_nw, name="network")
|
|
41
42
|
app.add_typer(app_nw, name="n", hidden=True)
|
|
43
|
+
app_utils = get_app_utils()
|
|
44
|
+
app.add_typer(app_utils, name="utils")
|
|
45
|
+
app.add_typer(app_utils, name="u", hidden=True)
|
|
42
46
|
return app
|
|
43
47
|
|
|
44
48
|
def main():
|
|
@@ -20,27 +20,27 @@ CloudOption = Annotated[Optional[str], typer.Option("--cloud", "-c", help="☁
|
|
|
20
20
|
def push(directory: DirectoryArgument = None, recursive: RecursiveOption = False, no_sync: NoSyncOption = False) -> None:
|
|
21
21
|
"""🚀 Push changes across repositories."""
|
|
22
22
|
from machineconfig.scripts.python.repos_helpers.entrypoint import git_operations
|
|
23
|
-
git_operations(directory, pull=False, commit=False, push=True, recursive=recursive,
|
|
23
|
+
git_operations(directory, pull=False, commit=False, push=True, recursive=recursive, auto_uv_sync=not no_sync)
|
|
24
24
|
|
|
25
25
|
|
|
26
26
|
def pull(directory: DirectoryArgument = None, recursive: RecursiveOption = False, no_sync: NoSyncOption = False) -> None:
|
|
27
27
|
"""⬇️ Pull changes across repositories."""
|
|
28
28
|
from machineconfig.scripts.python.repos_helpers.entrypoint import git_operations
|
|
29
29
|
|
|
30
|
-
git_operations(directory, pull=True, commit=False, push=False, recursive=recursive,
|
|
30
|
+
git_operations(directory, pull=True, commit=False, push=False, recursive=recursive, auto_uv_sync=not no_sync)
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
def commit(directory: DirectoryArgument = None, recursive: RecursiveOption = False, no_sync: NoSyncOption = False) -> None:
|
|
34
34
|
"""💾 Commit changes across repositories."""
|
|
35
35
|
from machineconfig.scripts.python.repos_helpers.entrypoint import git_operations
|
|
36
|
-
|
|
37
|
-
git_operations(directory, pull=False, commit=True, push=False, recursive=recursive, no_sync=no_sync)
|
|
36
|
+
git_operations(directory, pull=False, commit=True, push=False, recursive=recursive, auto_uv_sync=not no_sync)
|
|
38
37
|
|
|
39
38
|
|
|
40
39
|
def sync(directory: DirectoryArgument = None, recursive: RecursiveOption = False, no_sync: NoSyncOption = False) -> None:
|
|
41
40
|
"""🔄 Pull, commit, and push changes across repositories."""
|
|
42
41
|
from machineconfig.scripts.python.repos_helpers.entrypoint import git_operations
|
|
43
|
-
|
|
42
|
+
print(f"no_sync is {no_sync}")
|
|
43
|
+
git_operations(directory, pull=True, commit=True, push=True, recursive=recursive, auto_uv_sync=not no_sync)
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
def capture(directory: DirectoryArgument = None, cloud: CloudOption = None) -> None:
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
import typer
|
|
4
|
+
from typing import Annotated, Optional
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
import subprocess
|
|
7
|
+
import requests
|
|
8
|
+
|
|
9
|
+
def download(url: Annotated[Optional[str], typer.Argument(..., help="The URL to download the file from." )] = None,
|
|
10
|
+
decompress: Annotated[bool, typer.Option("--decompress", "-d", help="Decompress the file if it's an archive.")] = False,
|
|
11
|
+
output: Annotated[Optional[str], typer.Option("--output", "-o", help="The output file path.")] = None) -> None:
|
|
12
|
+
if url is None:
|
|
13
|
+
typer.echo("❌ Error: URL is required.", err=True)
|
|
14
|
+
raise typer.Exit(code=1)
|
|
15
|
+
|
|
16
|
+
typer.echo(f"📥 Downloading from: {url}")
|
|
17
|
+
|
|
18
|
+
download_path = Path(output) if output else Path(url.split("/")[-1])
|
|
19
|
+
|
|
20
|
+
try:
|
|
21
|
+
response = requests.get(url, allow_redirects=True, stream=True, timeout=60)
|
|
22
|
+
response.raise_for_status()
|
|
23
|
+
|
|
24
|
+
total_size = int(response.headers.get('content-length', 0))
|
|
25
|
+
|
|
26
|
+
with open(download_path, 'wb') as f:
|
|
27
|
+
if total_size == 0:
|
|
28
|
+
f.write(response.content)
|
|
29
|
+
else:
|
|
30
|
+
downloaded = 0
|
|
31
|
+
chunk_size = 8192
|
|
32
|
+
for chunk in response.iter_content(chunk_size=chunk_size):
|
|
33
|
+
if chunk:
|
|
34
|
+
f.write(chunk)
|
|
35
|
+
downloaded += len(chunk)
|
|
36
|
+
progress = (downloaded / total_size) * 100
|
|
37
|
+
typer.echo(f"\r⏬ Progress: {progress:.1f}% ({downloaded}/{total_size} bytes)", nl=False)
|
|
38
|
+
typer.echo()
|
|
39
|
+
|
|
40
|
+
typer.echo(f"✅ Downloaded to: {download_path}")
|
|
41
|
+
except requests.exceptions.RequestException as e:
|
|
42
|
+
typer.echo(f"❌ Download failed: {e}", err=True)
|
|
43
|
+
raise typer.Exit(code=1)
|
|
44
|
+
except OSError as e:
|
|
45
|
+
typer.echo(f"❌ File write error: {e}", err=True)
|
|
46
|
+
raise typer.Exit(code=1)
|
|
47
|
+
|
|
48
|
+
if decompress:
|
|
49
|
+
typer.echo(f"📦 Decompressing: {download_path}")
|
|
50
|
+
|
|
51
|
+
output_dir = download_path.parent if output else Path.cwd()
|
|
52
|
+
|
|
53
|
+
try:
|
|
54
|
+
_result = subprocess.run(
|
|
55
|
+
["ouch", "decompress", str(download_path), "--dir", str(output_dir)],
|
|
56
|
+
check=True,
|
|
57
|
+
capture_output=True,
|
|
58
|
+
text=True
|
|
59
|
+
)
|
|
60
|
+
typer.echo(f"✅ Decompressed to: {output_dir}")
|
|
61
|
+
|
|
62
|
+
if download_path.exists():
|
|
63
|
+
download_path.unlink()
|
|
64
|
+
typer.echo(f"🗑️ Removed archive: {download_path}")
|
|
65
|
+
|
|
66
|
+
except subprocess.CalledProcessError as e:
|
|
67
|
+
typer.echo(f"❌ Decompression failed: {e.stderr}", err=True)
|
|
68
|
+
raise typer.Exit(code=1)
|
|
69
|
+
except FileNotFoundError:
|
|
70
|
+
typer.echo("❌ Error: ouch command not found. Please install ouch.", err=True)
|
|
71
|
+
typer.echo("💡 Install with: cargo install ouch", err=True)
|
|
72
|
+
raise typer.Exit(code=1)
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
def get_app() -> typer.Typer:
|
|
76
|
+
app = typer.Typer(help="🛠️ [u] utilities operations", no_args_is_help=True, add_completion=True)
|
|
77
|
+
app.command(name="download", no_args_is_help=True, help="[d] Download a file from a URL and optionally decompress it.")(download)
|
|
78
|
+
app.command(name="d", no_args_is_help=True, hidden=True)(download)
|
|
79
|
+
return app
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/scripts/python/repos_helpers/action.py
RENAMED
|
@@ -57,7 +57,7 @@ class GitOperationSummary:
|
|
|
57
57
|
self.repos_without_remotes: list[PathExtended] = []
|
|
58
58
|
|
|
59
59
|
|
|
60
|
-
def git_action(path: PathExtended, action: GitAction, mess: Optional[str]
|
|
60
|
+
def git_action(path: PathExtended, action: GitAction, mess: Optional[str], r: bool, auto_uv_sync: bool) -> GitOperationResult:
|
|
61
61
|
"""Perform git actions using Python instead of shell scripts. Returns detailed operation result."""
|
|
62
62
|
from git.exc import InvalidGitRepositoryError
|
|
63
63
|
from git.repo import Repo
|
|
@@ -67,7 +67,7 @@ def git_action(path: PathExtended, action: GitAction, mess: Optional[str] = None
|
|
|
67
67
|
except InvalidGitRepositoryError:
|
|
68
68
|
pprint(f"⚠️ Skipping {path} because it is not a git repository.")
|
|
69
69
|
if r:
|
|
70
|
-
results = [git_action(path=sub_path, action=action, mess=mess, r=r,
|
|
70
|
+
results = [git_action(path=sub_path, action=action, mess=mess, r=r, auto_uv_sync=auto_uv_sync) for sub_path in path.search()]
|
|
71
71
|
# For recursive calls, we need to aggregate results somehow
|
|
72
72
|
# For now, return success if all recursive operations succeeded
|
|
73
73
|
all_successful = all(result.success for result in results)
|
|
@@ -154,7 +154,7 @@ def git_action(path: PathExtended, action: GitAction, mess: Optional[str] = None
|
|
|
154
154
|
elif action == GitAction.pull:
|
|
155
155
|
# Use the enhanced update function with uv sync support
|
|
156
156
|
try:
|
|
157
|
-
update_repository(repo, auto_uv_sync=
|
|
157
|
+
update_repository(repo, auto_uv_sync=auto_uv_sync, allow_password_prompt=False)
|
|
158
158
|
print("✅ Pull completed")
|
|
159
159
|
return GitOperationResult(
|
|
160
160
|
repo_path=path,
|
|
@@ -341,7 +341,7 @@ def perform_git_operations(repos_root: PathExtended, pull: bool, commit: bool, p
|
|
|
341
341
|
|
|
342
342
|
# Now perform the actual operations
|
|
343
343
|
if pull:
|
|
344
|
-
result = git_action(path=a_path, action=GitAction.pull, r=recursive,
|
|
344
|
+
result = git_action(path=a_path, action=GitAction.pull, mess=None, r=recursive, auto_uv_sync=auto_uv_sync)
|
|
345
345
|
summary.pulls_attempted += 1
|
|
346
346
|
if result.success:
|
|
347
347
|
summary.pulls_successful += 1
|
|
@@ -350,7 +350,7 @@ def perform_git_operations(repos_root: PathExtended, pull: bool, commit: bool, p
|
|
|
350
350
|
summary.failed_operations.append(result)
|
|
351
351
|
|
|
352
352
|
if commit:
|
|
353
|
-
result = git_action(a_path, action=GitAction.commit, r=recursive,
|
|
353
|
+
result = git_action(a_path, action=GitAction.commit, mess=None, r=recursive, auto_uv_sync=auto_uv_sync)
|
|
354
354
|
summary.commits_attempted += 1
|
|
355
355
|
if result.success:
|
|
356
356
|
if result.had_changes:
|
|
@@ -362,7 +362,7 @@ def perform_git_operations(repos_root: PathExtended, pull: bool, commit: bool, p
|
|
|
362
362
|
summary.failed_operations.append(result)
|
|
363
363
|
|
|
364
364
|
if push:
|
|
365
|
-
result = git_action(a_path, action=GitAction.push, r=recursive,
|
|
365
|
+
result = git_action(a_path, action=GitAction.push, mess=None, r=recursive, auto_uv_sync=auto_uv_sync)
|
|
366
366
|
summary.pushes_attempted += 1
|
|
367
367
|
if result.success:
|
|
368
368
|
summary.pushes_successful += 1
|
|
@@ -20,11 +20,10 @@ def git_operations(
|
|
|
20
20
|
commit: bool,
|
|
21
21
|
push: bool,
|
|
22
22
|
recursive: bool,
|
|
23
|
-
|
|
23
|
+
auto_uv_sync: bool,
|
|
24
24
|
) -> None:
|
|
25
25
|
|
|
26
26
|
repos_root = resolve_directory(directory)
|
|
27
|
-
auto_uv_sync = not no_sync
|
|
28
27
|
from machineconfig.scripts.python.repos_helpers.action import perform_git_operations
|
|
29
28
|
from machineconfig.utils.path_extended import PathExtended
|
|
30
29
|
perform_git_operations(
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
_ ___ /^^\ /^\ /^^\_
|
|
2
|
+
_ _@)@) \ ,,/ '` ~ `'~~ ', `\.
|
|
3
|
+
_/o\_ _ _ _/~`.`...'~\ ./~~..,'`','',.,' ' ~:
|
|
4
|
+
/ `,'.~,~.~ . , . , ~|, ,/ .,' , ,. .. ,,. `, ~\_
|
|
5
|
+
( ' _' _ '_` _ ' . , `\_/ .' ..' ' ` ` `.. `, \_
|
|
6
|
+
~V~ V~ V~ V~ ~\ ` ' . ' , ' .,.,''`.,.''`.,.``. ', \_
|
|
7
|
+
_/\ /\ /\ /\_/, . ' , `_/~\_ .' .,. ,, , _/~\_ `. `. '., \_
|
|
8
|
+
< ~ ~ '~`'~'`, ., . `_: ::: \_ ' `_/ ::: \_ `.,' . ', \_
|
|
9
|
+
\ ' `_ '`_ _ ',/ _::_::_ \ _ _/ _::_::_ \ `.,'.,`., \-,-,-,_,_,
|
|
10
|
+
`'~~ `'~~ `'~~ `'~~ \(_)(_)(_)/ `~~' \(_)(_)(_)/ ~'`\_.._,._,'_;_;_;_;_;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
.--. .--.
|
|
2
|
+
/ \/ \
|
|
3
|
+
| .-. .-. \
|
|
4
|
+
|/_ |/_ | \
|
|
5
|
+
|| `\|| `\| `----.
|
|
6
|
+
|\0_/ \0_/ --, \_
|
|
7
|
+
.--"""""-. / (` \ `-.
|
|
8
|
+
/ \-----'-. \ \
|
|
9
|
+
\ () () /`\ \
|
|
10
|
+
| .___.-' | \
|
|
11
|
+
\ /` \| / ;
|
|
12
|
+
`-.___ ___.' .-.`.---.| \
|
|
13
|
+
\| ``-..___,.-'`\| / / / | `\
|
|
14
|
+
` \| ,`/ / / , /
|
|
15
|
+
` |\ / / |\/
|
|
16
|
+
, .'`-; ' \/
|
|
17
|
+
, |\-' .' , .-'`
|
|
18
|
+
.-|\--;`` .-' |\.'
|
|
19
|
+
( `"'-.|\ (___,.--'`'
|
|
20
|
+
`-. `"` _.--'
|
|
21
|
+
`. _.-'`-.
|
|
22
|
+
`''---''`` `."
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
_.---._ .---.
|
|
2
|
+
__...---' .---. `---'-. `.
|
|
3
|
+
~ -~ -.-''__.--' _.'( | )`. `. `._ :
|
|
4
|
+
-.~~ .'__-'_ .--'' ._`---'_.-. `. `-`.
|
|
5
|
+
~ ~_~-~-~_ ~ -._ -._``---. -. `-._ `.
|
|
6
|
+
~- ~ ~ -_ -~ ~ -.._ _ _ _ ..-_ `. `-._``--.._
|
|
7
|
+
~~-~ ~-_ _~ ~-~ ~ -~ _~~_-~ -._ `-. -. `-._``--.._.--''. ~ -~_
|
|
8
|
+
~~ -~_-~ _~- _~~ _~-_~ ~-_~~ ~-.___ -._ `-.__ `. `. ~ -_~
|
|
9
|
+
~~ _~- ~~- -_~ ~- ~ - _~~- _~~ ~---...__ _ ._ .` `. ~-_~
|
|
10
|
+
~ ~- _~~- _-_~ ~-_ ~-~ ~_-~ _~- ~_~-_~ ~--.....--~ -~_ ~
|
|
11
|
+
~ ~ - ~ ~ ~~ - ~~- ~~- ~- ~ -~ ~ ~ -~~- ~- ~-~
|
|
@@ -6,7 +6,6 @@ import random
|
|
|
6
6
|
from pathlib import Path
|
|
7
7
|
from rich import pretty
|
|
8
8
|
from rich.console import Console
|
|
9
|
-
from typing import Optional
|
|
10
9
|
|
|
11
10
|
|
|
12
11
|
def print_header():
|
|
@@ -38,18 +37,13 @@ def print_logo(logo: str):
|
|
|
38
37
|
if random.choice([True, True, False]): font_box_color(logo)
|
|
39
38
|
else: character_color(logo)
|
|
40
39
|
else:
|
|
41
|
-
print("\n" + "🚫 " + "-" * 70 + " 🚫")
|
|
42
|
-
print("🔍 Missing ASCII art dependencies. Install with: iwr bit.ly/cfgasciiartwindows | iex")
|
|
43
|
-
print("🚫 " + "-" * 70 + " 🚫\n")
|
|
40
|
+
# print("\n" + "🚫 " + "-" * 70 + " 🚫")
|
|
41
|
+
# print("🔍 Missing ASCII art dependencies. Install with: iwr bit.ly/cfgasciiartwindows | iex")
|
|
42
|
+
# print("🚫 " + "-" * 70 + " 🚫\n")
|
|
44
43
|
_default_art = Path(random.choice(glob.glob(str(Path(__file__).parent.joinpath("art", "*")))))
|
|
45
44
|
print(_default_art.read_text())
|
|
46
45
|
elif platform.system() in ["Linux", "Darwin"]: # Explicitly handle both Linux and macOS
|
|
47
|
-
|
|
48
|
-
path_dirs = os.environ['PATH'].split(os.pathsep)
|
|
49
|
-
for path_dir in path_dirs:
|
|
50
|
-
path_to_executable = os.path.join(path_dir, executable_name)
|
|
51
|
-
if os.path.isfile(path_to_executable) and os.access(path_to_executable, os.X_OK): return path_to_executable
|
|
52
|
-
return None
|
|
46
|
+
from machineconfig.utils.installer_utils.installer_abc import is_executable_in_path
|
|
53
47
|
avail_cowsay = is_executable_in_path("cowsay")
|
|
54
48
|
avail_lolcat = is_executable_in_path("lolcat")
|
|
55
49
|
avail_boxes = is_executable_in_path("boxes")
|
|
@@ -92,7 +92,6 @@ def get_installed_cli_apps():
|
|
|
92
92
|
|
|
93
93
|
|
|
94
94
|
def get_installers(os: OPERATING_SYSTEMS, arch: CPU_ARCHITECTURES, which_cats: Optional[list[PACKAGE_GROUPS]]) -> list[InstallerData]:
|
|
95
|
-
print("🔍 LOADING INSTALLER CONFIGURATIONS 🔍")
|
|
96
95
|
res_all = get_all_installer_data_files()
|
|
97
96
|
acceptable_apps_names: list[str] | None = None
|
|
98
97
|
if which_cats is not None:
|
|
@@ -109,19 +108,14 @@ def get_installers(os: OPERATING_SYSTEMS, arch: CPU_ARCHITECTURES, which_cats: O
|
|
|
109
108
|
if installer_data["fileNamePattern"][arch][os] is None:
|
|
110
109
|
continue
|
|
111
110
|
all_installers.append(installer_data)
|
|
112
|
-
print(f"✅ Loaded {len(all_installers)} installer configurations")
|
|
113
111
|
return all_installers
|
|
114
112
|
|
|
115
113
|
|
|
116
114
|
def get_all_installer_data_files() -> list[InstallerData]:
|
|
117
|
-
print("📂 LOADING CONFIGURATION FILES 📂")
|
|
118
115
|
import machineconfig.jobs.installer as module
|
|
119
116
|
from pathlib import Path
|
|
120
|
-
|
|
121
|
-
print("📂 Loading configuration files...")
|
|
122
117
|
res_raw: InstallerDataFiles = read_json(Path(module.__file__).parent.joinpath("installer_data.json"))
|
|
123
118
|
res_final: list[InstallerData] = res_raw["installers"]
|
|
124
|
-
print(f"Loaded: {len(res_final)} installer categories")
|
|
125
119
|
return res_final
|
|
126
120
|
|
|
127
121
|
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/installer_abc.py
RENAMED
|
@@ -141,11 +141,12 @@ def check_tool_exists(tool_name: str) -> bool:
|
|
|
141
141
|
return npm_check
|
|
142
142
|
else:
|
|
143
143
|
raise NotImplementedError(f"platform {platform.system()} not implemented")
|
|
144
|
-
|
|
144
|
+
|
|
145
|
+
def is_executable_in_path(name: str) -> bool:
|
|
145
146
|
import os
|
|
146
147
|
path_dirs = os.environ['PATH'].split(os.pathsep)
|
|
147
148
|
for path_dir in path_dirs:
|
|
148
|
-
path_to_executable = os.path.join(path_dir,
|
|
149
|
+
path_to_executable = os.path.join(path_dir, name)
|
|
149
150
|
if os.path.isfile(path_to_executable) and os.access(path_to_executable, os.X_OK): return True
|
|
150
151
|
return False
|
|
151
152
|
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/utils/installer_utils/installer_class.py
RENAMED
|
@@ -65,7 +65,7 @@ class Installer:
|
|
|
65
65
|
if repo_url == "CMD":
|
|
66
66
|
if any(pm in installer_arch_os for pm in ["npm ", "pip ", "winget ", "brew ", "curl "]):
|
|
67
67
|
package_manager = installer_arch_os.split(" ", maxsplit=1)[0]
|
|
68
|
-
print(f"📦 Using package manager: {
|
|
68
|
+
print(f"📦 Using package manager: {installer_arch_os}")
|
|
69
69
|
desc = package_manager + " installation"
|
|
70
70
|
version_to_be_installed = package_manager + "Latest"
|
|
71
71
|
result = subprocess.run(installer_arch_os, shell=True, capture_output=True, text=False)
|
|
@@ -191,6 +191,7 @@ src/machineconfig/scripts/python/devops_helpers/cli_repos.py
|
|
|
191
191
|
src/machineconfig/scripts/python/devops_helpers/cli_self.py
|
|
192
192
|
src/machineconfig/scripts/python/devops_helpers/cli_share_server.py
|
|
193
193
|
src/machineconfig/scripts/python/devops_helpers/cli_terminal.py
|
|
194
|
+
src/machineconfig/scripts/python/devops_helpers/cli_utils.py
|
|
194
195
|
src/machineconfig/scripts/python/devops_helpers/devops_backup_retrieve.py
|
|
195
196
|
src/machineconfig/scripts/python/devops_helpers/devops_status.py
|
|
196
197
|
src/machineconfig/scripts/python/devops_helpers/devops_update_repos.py
|
|
@@ -419,6 +420,10 @@ src/machineconfig/utils/files/ascii_art.py
|
|
|
419
420
|
src/machineconfig/utils/files/dbms.py
|
|
420
421
|
src/machineconfig/utils/files/headers.py
|
|
421
422
|
src/machineconfig/utils/files/read.py
|
|
423
|
+
src/machineconfig/utils/files/art/fat_croco.txt
|
|
424
|
+
src/machineconfig/utils/files/art/halfwit_croco.txt
|
|
425
|
+
src/machineconfig/utils/files/art/happy_croco.txt
|
|
426
|
+
src/machineconfig/utils/files/art/water_croco.txt
|
|
422
427
|
src/machineconfig/utils/files/ouch/__init__.py
|
|
423
428
|
src/machineconfig/utils/files/ouch/decompress.py
|
|
424
429
|
src/machineconfig/utils/installer_utils/__init__.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/remote_machine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/remote/script_execution.py
RENAMED
|
File without changes
|
|
File without changes
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/utils/maker.py
RENAMED
|
File without changes
|
{machineconfig-6.37 → machineconfig-6.39}/src/machineconfig/cluster/sessions_managers/wt_local.py
RENAMED
|
File without changes
|
|
File without changes
|