machineconfig 5.11__tar.gz → 5.13__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-5.11/src/machineconfig.egg-info → machineconfig-5.13}/PKG-INFO +1 -1
- {machineconfig-5.11 → machineconfig-5.13}/pyproject.toml +2 -1
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/check_installations.py +0 -13
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/create.py +127 -13
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/count_lines.py +9 -4
- machineconfig-5.13/src/machineconfig/scripts/python/count_lines_frontend.py +16 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/devops.py +0 -1
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/interactive.py +2 -2
- machineconfig-5.13/src/machineconfig/scripts/python/repos.py +132 -0
- machineconfig-5.13/src/machineconfig/scripts/python/repos_helper.py +85 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/repos_helper_action.py +93 -50
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/links.py +133 -16
- {machineconfig-5.11 → machineconfig-5.13/src/machineconfig.egg-info}/PKG-INFO +1 -1
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig.egg-info/SOURCES.txt +1 -3
- machineconfig-5.11/src/machineconfig/jobs/python/create_bootable_media.py +0 -16
- machineconfig-5.11/src/machineconfig/jobs/python/python_cargo_build_share.py +0 -58
- machineconfig-5.11/src/machineconfig/jobs/python/tasks.py +0 -3
- machineconfig-5.11/src/machineconfig/scripts/python/count_lines_frontend.py +0 -12
- machineconfig-5.11/src/machineconfig/scripts/python/repos.py +0 -219
- {machineconfig-5.11 → machineconfig-5.13}/MANIFEST.in +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/README.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/setup.cfg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/cloud_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/data_transfer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/distribute.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/file_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/job_params.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/loader_runner.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/remote_machine.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/run_cloud.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/run_cluster.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/run_remote.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/script_execution.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/remote/script_notify_upon_completion.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/ffile.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/utils/enhanced_command_runner.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/utils/load_balancer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/utils/load_balancer_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_local.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_remote.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_local.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/templates/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/cluster/templates/cli_trogon.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom/gh.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom/hx.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/alacritty.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/brave.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/bypass_paywall.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/code.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/cursor.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/espanso.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/goes.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/lvim.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/nerdfont.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/redis.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/wezterm.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/custom_dev/winget.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/installer_data.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/brave.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/docker.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/docker_start.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/edge.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/nerdfont.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/ngrok.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/q.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/redis.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/vscode.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/warp-cli.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/linux_scripts/wezterm.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/package_groups.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/linux/msc/cli_agents.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/linux/msc/lid.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/linux/msc/network.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/python_ve_symlink.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/vscode/api.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/vscode/sync_code.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/archive/openssh-server_add_key.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/archive/openssh-server_copy-ssh-id.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/msc/cli_agents.bat +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/msc/cli_agents.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/start_terminal.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/windows/startup_file.cmd +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/logger.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/records/generic/shares.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/profile/shell.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/cloud/init.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/agents +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/choose_wezterm_theme +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/cloud_copy +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/cloud_mount +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/cloud_repo_sync +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/cloud_sync +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/croshell +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/devops +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fire +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/ftpx +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fzf2g +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fzfag +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fzffg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fzfg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/fzfrga +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/gh_models +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/initai +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/kill_process +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/mount_drive +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/mount_nfs +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/mount_nw_drive +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/mount_smb +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/scheduler +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/sessions +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/share_cloud.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/share_nfs +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/share_smb +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/skrg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/start_docker +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/start_slidev +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/start_terminals +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/switch_ip +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/warp-cli.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/wifi_conn +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/linux/z_ls +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/agents.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/generate_files.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/initai.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/_shared.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/claude/claude.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/cline/cline.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/deepResearch.chatmode.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/privacy.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/crush/crush.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/crush/crush.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/crush/privacy.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/cursor/cursors.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/gemini/gemini.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/gemini/settings.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/generic.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/choose_wezterm_theme.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/cloud_copy.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/cloud_manager.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/cloud_mount.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/cloud_repo_sync.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/cloud_sync.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/croshell.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/devops_add_identity.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/devops_add_ssh_key.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/devops_backup_retrieve.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/devops_update_repos.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/dotfile.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_agents_help_launch.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_agents_help_search.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_agents_helper_types.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_agents_load_balancer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_jobs.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_jobs_args_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_jobs_route_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/fire_jobs_streamlit_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/ftpx.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/get_zellij_cmd.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/gh_models.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/cloud_helpers.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/helpers2.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/helpers4.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/helpers5.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/mount_nfs.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/mount_nw_drive.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/mount_ssh.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/onetimeshare.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/pomodoro.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/repos_helper_clone.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/repos_helper_record.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/repos_helper_update.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/scheduler.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/sessions.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/share_terminal.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/snapshot.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/start_slidev.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/start_terminals.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/t4.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/viewer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/viewer_template.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/wifi_conn.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/python/wsl_windows_transfer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/agents.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/cloud_copy.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/cloud_mount.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/cloud_sync.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/croshell.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/devops.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/dotfile.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/fire.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/ftpx.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/gpt.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/grep.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/initai.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/kill_process.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/mount_nfs.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/mount_nw.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/mount_smb.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/mount_ssh.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/nano.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/pomodoro.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/reload_path.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/scheduler.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/sessions.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/share_cloud.cmd +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/share_nfs.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/share_smb.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/snapshot.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/start_slidev.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/start_terminals.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/unlock_bitlocker.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/wifi_conn.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/broot/br.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/broot/conf.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/glow/glow.yml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/helix/config.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/helix/languages.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/keras/keras.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/colors +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/icons +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/linux/lfrc +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/colors +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/icons +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/lfrc +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/linters/.flake8 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/linters/.mypy.ini +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/linters/.pylintrc +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/linters/.ruff.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/mprocs/windows/other +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/pistol/pistol.conf +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/presenterm/config.yaml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/procs/.procs.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/rofi/config.rasi +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/bash/init.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/ipy/profiles/default/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/pwsh/init.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/shells/wt/settings.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/streamlit/config.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/svim/linux/init.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/svim/windows/init.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/tere/terecd.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/wsl/.wslconfig +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/yazi/keymap.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/yazi/theme.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/yazi/yazi.toml +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zed/settings.json +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/commands/monitor +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/config.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/layouts/hist +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/nix/cli_installation.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/web_shortcuts/android.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/wt_and_pwsh/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/accessories.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/ai/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/ai/generate_file_checklist.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/cloud/onedrive/transaction.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/code.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer_utils/__init__.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer_utils/github_release_bulk.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer_utils/installer.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer_utils/installer_abc.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/installer_utils/installer_class.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/io.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/notifications.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/options.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/path_extended.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/path_helper.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/procs.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/scheduler.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/scheduling.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/schemas/fire_agents/fire_agents_input.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/schemas/installer/installer_types.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/schemas/layouts/layout_types.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/schemas/repos/repos_types.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/source_of_truth.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/ssh.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/terminal.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/upgrade_packages.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/utils/ve.py +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig.egg-info/dependency_links.txt +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig.egg-info/entry_points.txt +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/src/machineconfig.egg-info/requires.txt +0 -0
- {machineconfig-5.11 → machineconfig-5.13}/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 = "5.
|
|
9
|
+
version = "5.13"
|
|
10
10
|
description = "Dotfiles management package"
|
|
11
11
|
readme = "README.md"
|
|
12
12
|
license = {text = "Apache 2.0"}
|
|
@@ -106,6 +106,7 @@ dev = [
|
|
|
106
106
|
"types-sqlalchemy>=1.4.53.38",
|
|
107
107
|
"types-toml>=0.10.8.20240310",
|
|
108
108
|
"types-urllib3>=1.26.25.14",
|
|
109
|
+
"vt-py>=0.21.0",
|
|
109
110
|
]
|
|
110
111
|
docs = [
|
|
111
112
|
"pdoc>=15.0.2",
|
{machineconfig-5.11 → machineconfig-5.13}/src/machineconfig/jobs/python/check_installations.py
RENAMED
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
# """CI
|
|
2
|
-
# """
|
|
3
1
|
|
|
4
|
-
|
|
5
|
-
# import time
|
|
6
2
|
import platform
|
|
7
|
-
|
|
8
|
-
# from typing import Any
|
|
9
|
-
# from rich.console import Console
|
|
10
|
-
# from machineconfig.utils.utils2 import pprint
|
|
11
|
-
# # from rich.progress import track
|
|
12
3
|
from machineconfig.utils.source_of_truth import LIBRARY_ROOT
|
|
13
|
-
# from machineconfig.utils.installer import get_installed_cli_apps
|
|
14
|
-
# from typing import Optional
|
|
15
|
-
# from datetime import datetime
|
|
16
|
-
# import csv
|
|
17
4
|
|
|
18
5
|
|
|
19
6
|
APP_SUMMARY_PATH = LIBRARY_ROOT.joinpath(f"profile/records/{platform.system().lower()}/apps_summary_report.csv")
|
|
@@ -8,6 +8,7 @@ from rich.console import Console
|
|
|
8
8
|
from rich.panel import Panel
|
|
9
9
|
from rich.pretty import Pretty
|
|
10
10
|
from rich.text import Text
|
|
11
|
+
from rich.table import Table
|
|
11
12
|
|
|
12
13
|
from machineconfig.utils.path_extended import PathExtended
|
|
13
14
|
from machineconfig.utils.links import symlink_func, symlink_copy
|
|
@@ -20,7 +21,7 @@ import os
|
|
|
20
21
|
import ctypes
|
|
21
22
|
import subprocess
|
|
22
23
|
import tomllib
|
|
23
|
-
from typing import Optional, Any, TypedDict
|
|
24
|
+
from typing import Optional, Any, TypedDict, Literal
|
|
24
25
|
|
|
25
26
|
system = platform.system() # Linux or Windows
|
|
26
27
|
ERROR_LIST: list[Any] = [] # append to this after every exception captured.
|
|
@@ -43,10 +44,35 @@ class SymlinkMapper(TypedDict):
|
|
|
43
44
|
contents: Optional[bool]
|
|
44
45
|
|
|
45
46
|
|
|
46
|
-
|
|
47
|
+
class OperationRecord(TypedDict):
|
|
48
|
+
program: str
|
|
49
|
+
file_key: str
|
|
50
|
+
source: str
|
|
51
|
+
target: str
|
|
52
|
+
operation: str
|
|
53
|
+
action: Literal[
|
|
54
|
+
"already_linked",
|
|
55
|
+
"relinking",
|
|
56
|
+
"fixing_broken_link",
|
|
57
|
+
"identical_files",
|
|
58
|
+
"backing_up_source",
|
|
59
|
+
"backing_up_target",
|
|
60
|
+
"relinking_to_new_target",
|
|
61
|
+
"moving_to_target",
|
|
62
|
+
"new_link",
|
|
63
|
+
"new_link_and_target",
|
|
64
|
+
"linking",
|
|
65
|
+
"copying",
|
|
66
|
+
"error"
|
|
67
|
+
]
|
|
68
|
+
details: str
|
|
69
|
+
status: str
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
def apply_mapper(choice: Optional[str], prioritize_to_this: bool):
|
|
47
73
|
symlink_mapper: dict[str, dict[str, SymlinkMapper]] = tomllib.loads(LIBRARY_ROOT.joinpath("profile/mapper.toml").read_text(encoding="utf-8"))
|
|
48
|
-
prioritize_to_this = True
|
|
49
74
|
exclude: list[str] = [] # "wsl_linux", "wsl_windows"
|
|
75
|
+
operation_records: list[OperationRecord] = []
|
|
50
76
|
|
|
51
77
|
program_keys_raw: list[str] = list(symlink_mapper.keys())
|
|
52
78
|
program_keys: list[str] = []
|
|
@@ -64,10 +90,6 @@ def apply_mapper(choice: Optional[str] = None):
|
|
|
64
90
|
return # terminate function.
|
|
65
91
|
elif len(choice_selected) == 1 and choice_selected[0] == "all":
|
|
66
92
|
choice_selected = "all" # i.e. program_keys = program_keys
|
|
67
|
-
# overwrite = choose_from_options(msg="Overwrite existing source file?", options=["yes", "no"], default="yes") == "yes"
|
|
68
|
-
from rich.prompt import Confirm
|
|
69
|
-
|
|
70
|
-
prioritize_to_this = Confirm.ask("Overwrite existing source file?", default=True)
|
|
71
93
|
else:
|
|
72
94
|
choice_selected = choice
|
|
73
95
|
|
|
@@ -114,22 +136,85 @@ def apply_mapper(choice: Optional[str] = None):
|
|
|
114
136
|
for file_key, file_map in symlink_mapper[program_key].items():
|
|
115
137
|
this = PathExtended(file_map["this"])
|
|
116
138
|
to_this = PathExtended(file_map["to_this"].replace("REPO_ROOT", REPO_ROOT.as_posix()).replace("LIBRARY_ROOT", LIBRARY_ROOT.as_posix()))
|
|
139
|
+
|
|
117
140
|
if "contents" in file_map:
|
|
118
141
|
try:
|
|
119
|
-
|
|
120
|
-
|
|
142
|
+
targets = list(to_this.expanduser().search("*"))
|
|
143
|
+
for a_target in targets:
|
|
144
|
+
result = symlink_func(this=this.joinpath(a_target.name), to_this=a_target, prioritize_to_this=prioritize_to_this)
|
|
145
|
+
operation_records.append({
|
|
146
|
+
"program": program_key,
|
|
147
|
+
"file_key": file_key,
|
|
148
|
+
"source": str(this.joinpath(a_target.name)),
|
|
149
|
+
"target": str(a_target),
|
|
150
|
+
"operation": "contents_symlink",
|
|
151
|
+
"action": result["action"],
|
|
152
|
+
"details": result["details"],
|
|
153
|
+
"status": "success"
|
|
154
|
+
})
|
|
121
155
|
except Exception as ex:
|
|
122
156
|
console.print(f"❌ [red]Config error[/red]: {program_key} | {file_key} | missing keys 'this ==> to_this'. {ex}")
|
|
123
|
-
|
|
157
|
+
operation_records.append({
|
|
158
|
+
"program": program_key,
|
|
159
|
+
"file_key": file_key,
|
|
160
|
+
"source": str(this),
|
|
161
|
+
"target": str(to_this),
|
|
162
|
+
"operation": "contents_symlink",
|
|
163
|
+
"action": "error",
|
|
164
|
+
"details": f"Failed to process contents: {str(ex)}",
|
|
165
|
+
"status": f"error: {str(ex)}"
|
|
166
|
+
})
|
|
167
|
+
|
|
168
|
+
elif "copy" in file_map:
|
|
124
169
|
try:
|
|
125
|
-
symlink_copy(this=this, to_this=to_this, prioritize_to_this=prioritize_to_this)
|
|
170
|
+
result = symlink_copy(this=this, to_this=to_this, prioritize_to_this=prioritize_to_this)
|
|
171
|
+
operation_records.append({
|
|
172
|
+
"program": program_key,
|
|
173
|
+
"file_key": file_key,
|
|
174
|
+
"source": str(this),
|
|
175
|
+
"target": str(to_this),
|
|
176
|
+
"operation": "copy",
|
|
177
|
+
"action": result["action"],
|
|
178
|
+
"details": result["details"],
|
|
179
|
+
"status": "success"
|
|
180
|
+
})
|
|
126
181
|
except Exception as ex:
|
|
127
182
|
console.print(f"❌ [red]Config error[/red]: {program_key} | {file_key} | {ex}")
|
|
183
|
+
operation_records.append({
|
|
184
|
+
"program": program_key,
|
|
185
|
+
"file_key": file_key,
|
|
186
|
+
"source": str(this),
|
|
187
|
+
"target": str(to_this),
|
|
188
|
+
"operation": "copy",
|
|
189
|
+
"action": "error",
|
|
190
|
+
"details": f"Failed to copy: {str(ex)}",
|
|
191
|
+
"status": f"error: {str(ex)}"
|
|
192
|
+
})
|
|
128
193
|
else:
|
|
129
194
|
try:
|
|
130
|
-
symlink_func(this=this, to_this=to_this, prioritize_to_this=prioritize_to_this)
|
|
195
|
+
result = symlink_func(this=this, to_this=to_this, prioritize_to_this=prioritize_to_this)
|
|
196
|
+
operation_records.append({
|
|
197
|
+
"program": program_key,
|
|
198
|
+
"file_key": file_key,
|
|
199
|
+
"source": str(this),
|
|
200
|
+
"target": str(to_this),
|
|
201
|
+
"operation": "symlink",
|
|
202
|
+
"action": result["action"],
|
|
203
|
+
"details": result["details"],
|
|
204
|
+
"status": "success"
|
|
205
|
+
})
|
|
131
206
|
except Exception as ex:
|
|
132
207
|
console.print(f"❌ [red]Config error[/red]: {program_key} | {file_key} | missing keys 'this ==> to_this'. {ex}")
|
|
208
|
+
operation_records.append({
|
|
209
|
+
"program": program_key,
|
|
210
|
+
"file_key": file_key,
|
|
211
|
+
"source": str(this),
|
|
212
|
+
"target": str(to_this),
|
|
213
|
+
"operation": "symlink",
|
|
214
|
+
"action": "error",
|
|
215
|
+
"details": f"Failed to create symlink: {str(ex)}",
|
|
216
|
+
"status": f"error: {str(ex)}"
|
|
217
|
+
})
|
|
133
218
|
|
|
134
219
|
if program_key == "ssh" and system == "Linux": # permissions of ~/dotfiles/.ssh should be adjusted
|
|
135
220
|
try:
|
|
@@ -147,6 +232,35 @@ def apply_mapper(choice: Optional[str] = None):
|
|
|
147
232
|
subprocess.run(f"chmod +x {LIBRARY_ROOT.joinpath(f'scripts/{system.lower()}')} -R", shell=True, capture_output=True, text=True)
|
|
148
233
|
console.print("[green]✅ Script permissions updated[/green]")
|
|
149
234
|
|
|
235
|
+
# Display operation summary table
|
|
236
|
+
if operation_records:
|
|
237
|
+
table = Table(title="🔗 Symlink Operations Summary", show_header=True, header_style="bold magenta")
|
|
238
|
+
table.add_column("Program", style="cyan", no_wrap=True)
|
|
239
|
+
table.add_column("File Key", style="blue", no_wrap=True)
|
|
240
|
+
table.add_column("Source", style="green")
|
|
241
|
+
table.add_column("Target", style="yellow")
|
|
242
|
+
table.add_column("Operation", style="magenta", no_wrap=True)
|
|
243
|
+
table.add_column("Action", style="red", no_wrap=True)
|
|
244
|
+
table.add_column("Details", style="white")
|
|
245
|
+
table.add_column("Status", style="red", no_wrap=True)
|
|
246
|
+
|
|
247
|
+
for record in operation_records:
|
|
248
|
+
status_style = "green" if record["status"] == "success" else "red"
|
|
249
|
+
action_style = "green" if record["action"] != "error" else "red"
|
|
250
|
+
table.add_row(
|
|
251
|
+
record["program"],
|
|
252
|
+
record["file_key"],
|
|
253
|
+
record["source"],
|
|
254
|
+
record["target"],
|
|
255
|
+
record["operation"],
|
|
256
|
+
f"[{action_style}]{record['action']}[/{action_style}]",
|
|
257
|
+
record["details"],
|
|
258
|
+
f"[{status_style}]{record['status']}[/{status_style}]"
|
|
259
|
+
)
|
|
260
|
+
|
|
261
|
+
console.print("\n")
|
|
262
|
+
console.print(table)
|
|
263
|
+
|
|
150
264
|
if len(ERROR_LIST) > 0:
|
|
151
265
|
console.print(
|
|
152
266
|
Panel(
|
|
@@ -169,7 +283,7 @@ def apply_mapper(choice: Optional[str] = None):
|
|
|
169
283
|
def main_symlinks():
|
|
170
284
|
console.print("")
|
|
171
285
|
console.rule("[bold blue]🔗 CREATING SYMLINKS 🔗")
|
|
172
|
-
apply_mapper(choice="all")
|
|
286
|
+
apply_mapper(choice="all", prioritize_to_this=True)
|
|
173
287
|
|
|
174
288
|
|
|
175
289
|
def main_profile():
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
1
|
|
|
3
2
|
from typing import TYPE_CHECKING
|
|
4
3
|
from git import Repo
|
|
@@ -7,14 +6,12 @@ from datetime import datetime
|
|
|
7
6
|
|
|
8
7
|
from pathlib import Path
|
|
9
8
|
from rich.progress import track
|
|
10
|
-
import polars as pl
|
|
11
|
-
import plotly.graph_objects as go
|
|
12
|
-
import plotly.express as px
|
|
13
9
|
import typer
|
|
14
10
|
|
|
15
11
|
|
|
16
12
|
if TYPE_CHECKING:
|
|
17
13
|
from typing import Any, Dict, List, Optional, Union
|
|
14
|
+
import polars as pl
|
|
18
15
|
|
|
19
16
|
|
|
20
17
|
app = typer.Typer()
|
|
@@ -109,6 +106,10 @@ def analyze_over_time(repo_path: str = typer.Argument(..., help="Path to the git
|
|
|
109
106
|
except Exception as e:
|
|
110
107
|
print(f"❌ Error analyzing commits: {str(e)}")
|
|
111
108
|
return
|
|
109
|
+
|
|
110
|
+
import polars as pl
|
|
111
|
+
import plotly.graph_objects as go
|
|
112
|
+
|
|
112
113
|
df = pl.DataFrame(commit_data)
|
|
113
114
|
df = df.sort("dtmExit")
|
|
114
115
|
# Create interactive plotly figure with dark theme and all bells and whistles
|
|
@@ -183,6 +184,10 @@ def analyze_over_time(repo_path: str = typer.Argument(..., help="Path to the git
|
|
|
183
184
|
|
|
184
185
|
|
|
185
186
|
def _print_python_files_by_size_impl(repo_path: str) -> "Union[pl.DataFrame, Exception]":
|
|
187
|
+
import polars as pl
|
|
188
|
+
import plotly.graph_objects as go
|
|
189
|
+
import plotly.express as px
|
|
190
|
+
|
|
186
191
|
try:
|
|
187
192
|
import os
|
|
188
193
|
if not os.path.exists(repo_path):
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
|
|
2
|
+
import typer
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def analyze_repo_development(repo_path: str = typer.Argument(..., help="Path to the git repository")):
|
|
6
|
+
from machineconfig.scripts.python import count_lines
|
|
7
|
+
from pathlib import Path
|
|
8
|
+
count_lines_path = Path(count_lines.__file__).resolve().parent.joinpath("count_lines.py")
|
|
9
|
+
# --project $HOME/code/machineconfig
|
|
10
|
+
cmd = f"""uv run --python 3.13 --with machineconfig --group plot {count_lines_path} analyze-over-time {repo_path}"""
|
|
11
|
+
from machineconfig.utils.code import run_script
|
|
12
|
+
run_script(cmd)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
if __name__ == "__main__":
|
|
16
|
+
pass
|
|
@@ -9,7 +9,6 @@ import typer
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
app = typer.Typer(help=f"🛠️ DevOps operations @ machineconfig {__version__}", no_args_is_help=True)
|
|
12
|
-
|
|
13
12
|
app.command(name="install", help="📦 Install essential packages")(installer_entry_point.main)
|
|
14
13
|
app.command(name="share-terminal", help="📡 Share terminal via web browser")(share_terminal.main)
|
|
15
14
|
app.add_typer(repos.app, name="repos", help="📁 Manage git repositories")
|
|
@@ -186,8 +186,8 @@ Set-Service -Name sshd -StartupType 'Automatic'"""
|
|
|
186
186
|
|
|
187
187
|
if "retrieve_repositories" in selected_options:
|
|
188
188
|
console.print(Panel("📚 [bold bright_magenta]REPOSITORIES[/bold bright_magenta]\n[italic]Project code retrieval[/italic]", border_style="bright_magenta"))
|
|
189
|
-
from machineconfig.scripts.python import repos
|
|
190
|
-
|
|
189
|
+
from machineconfig.scripts.python import repos
|
|
190
|
+
repos.clone(directory=str(Path.home() / "code"), cloud="odg1")
|
|
191
191
|
|
|
192
192
|
if "retrieve_data" in selected_options:
|
|
193
193
|
console.print(Panel("💾 [bold bright_cyan]DATA RETRIEVAL[/bold bright_cyan]\n[italic]Backup restoration[/italic]", border_style="bright_cyan"))
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"""Repos CLI powered by Typer.
|
|
2
|
+
|
|
3
|
+
# TODO use gh api user --jq '.login' to get the username and use it to clone the repos.
|
|
4
|
+
in the event that username@github.com is not mentioned in the remote url.
|
|
5
|
+
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
from typing import Annotated, Optional
|
|
10
|
+
import typer
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
app = typer.Typer(help="� Manage development repositories", no_args_is_help=True)
|
|
15
|
+
sync_app = typer.Typer(help="� Manage repository specifications and syncing", no_args_is_help=True)
|
|
16
|
+
app.add_typer(sync_app, name="sync", help="� Sync repositories using saved specs")
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
DirectoryArgument = Annotated[
|
|
20
|
+
Optional[str],
|
|
21
|
+
typer.Argument(help="📁 Folder containing repos or the specs JSON file to use."),
|
|
22
|
+
]
|
|
23
|
+
RecursiveOption = Annotated[
|
|
24
|
+
bool,
|
|
25
|
+
typer.Option("--recursive", "-r", help="🔍 Recurse into nested repositories."),
|
|
26
|
+
]
|
|
27
|
+
NoSyncOption = Annotated[
|
|
28
|
+
bool,
|
|
29
|
+
typer.Option("--no-sync", help="🚫 Disable automatic uv sync after pulls."),
|
|
30
|
+
]
|
|
31
|
+
CloudOption = Annotated[
|
|
32
|
+
Optional[str],
|
|
33
|
+
typer.Option("--cloud", "-c", help="☁️ Upload to or download from this cloud remote."),
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
@app.command()
|
|
39
|
+
def push(directory: DirectoryArgument = None,
|
|
40
|
+
recursive: RecursiveOption = False,
|
|
41
|
+
no_sync: NoSyncOption = False,
|
|
42
|
+
) -> None:
|
|
43
|
+
"""🚀 Push changes across repositories."""
|
|
44
|
+
from machineconfig.scripts.python.repos_helper import git_operations
|
|
45
|
+
git_operations(directory, pull=False, commit=False, push=True, recursive=recursive, no_sync=no_sync)
|
|
46
|
+
@app.command()
|
|
47
|
+
def pull(
|
|
48
|
+
directory: DirectoryArgument = None,
|
|
49
|
+
recursive: RecursiveOption = False,
|
|
50
|
+
no_sync: NoSyncOption = False,
|
|
51
|
+
) -> None:
|
|
52
|
+
"""⬇️ Pull changes across repositories."""
|
|
53
|
+
from machineconfig.scripts.python.repos_helper import git_operations
|
|
54
|
+
git_operations(directory, pull=True, commit=False, push=False, recursive=recursive, no_sync=no_sync)
|
|
55
|
+
@app.command()
|
|
56
|
+
def commit(
|
|
57
|
+
directory: DirectoryArgument = None,
|
|
58
|
+
recursive: RecursiveOption = False,
|
|
59
|
+
no_sync: NoSyncOption = False,
|
|
60
|
+
) -> None:
|
|
61
|
+
"""💾 Commit changes across repositories."""
|
|
62
|
+
from machineconfig.scripts.python.repos_helper import git_operations
|
|
63
|
+
git_operations(directory, pull=False, commit=True, push=False, recursive=recursive, no_sync=no_sync)
|
|
64
|
+
@app.command()
|
|
65
|
+
def all(
|
|
66
|
+
directory: DirectoryArgument = None,
|
|
67
|
+
recursive: RecursiveOption = False,
|
|
68
|
+
no_sync: NoSyncOption = False,
|
|
69
|
+
) -> None:
|
|
70
|
+
"""🔄 Pull, commit, and push changes across repositories."""
|
|
71
|
+
from machineconfig.scripts.python.repos_helper import git_operations
|
|
72
|
+
git_operations(directory, pull=True, commit=True, push=True, recursive=recursive, no_sync=no_sync)
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
@sync_app.command()
|
|
76
|
+
def capture(
|
|
77
|
+
directory: DirectoryArgument = None,
|
|
78
|
+
cloud: CloudOption = None,
|
|
79
|
+
) -> None:
|
|
80
|
+
"""📝 Record repositories into a repos.json specification."""
|
|
81
|
+
from machineconfig.scripts.python.repos_helper import print_banner, resolve_directory
|
|
82
|
+
print_banner()
|
|
83
|
+
repos_root = resolve_directory(directory)
|
|
84
|
+
from machineconfig.scripts.python.repos_helper_record import main as record_repos
|
|
85
|
+
save_path = record_repos(repos_root=repos_root)
|
|
86
|
+
from machineconfig.utils.path_extended import PathExtended
|
|
87
|
+
if cloud is not None:
|
|
88
|
+
PathExtended(save_path).to_cloud(rel2home=True, cloud=cloud)
|
|
89
|
+
@sync_app.command()
|
|
90
|
+
def clone(
|
|
91
|
+
directory: DirectoryArgument = None,
|
|
92
|
+
cloud: CloudOption = None,
|
|
93
|
+
) -> None:
|
|
94
|
+
"""📥 Clone repositories described by a repos.json specification."""
|
|
95
|
+
from machineconfig.scripts.python.repos_helper import print_banner, clone_from_specs
|
|
96
|
+
print_banner()
|
|
97
|
+
clone_from_specs(directory, cloud, checkout_branch_flag=False, checkout_commit_flag=False)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
@sync_app.command(name="checkout-to-commit")
|
|
101
|
+
def checkout_command(
|
|
102
|
+
directory: DirectoryArgument = None,
|
|
103
|
+
cloud: CloudOption = None,
|
|
104
|
+
) -> None:
|
|
105
|
+
"""🔀 Check out specific commits listed in the specification."""
|
|
106
|
+
from machineconfig.scripts.python.repos_helper import print_banner, clone_from_specs
|
|
107
|
+
print_banner()
|
|
108
|
+
clone_from_specs(directory, cloud, checkout_branch_flag=False, checkout_commit_flag=True)
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
@sync_app.command(name="checkout-to-branch")
|
|
112
|
+
def checkout_to_branch_command(
|
|
113
|
+
directory: DirectoryArgument = None,
|
|
114
|
+
cloud: CloudOption = None,
|
|
115
|
+
) -> None:
|
|
116
|
+
"""🔀 Check out to the main branch defined in the specification."""
|
|
117
|
+
from machineconfig.scripts.python.repos_helper import print_banner, clone_from_specs
|
|
118
|
+
print_banner()
|
|
119
|
+
clone_from_specs(directory, cloud, checkout_branch_flag=True, checkout_commit_flag=False)
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
@app.command()
|
|
123
|
+
def analyze(
|
|
124
|
+
directory: DirectoryArgument = None,
|
|
125
|
+
) -> None:
|
|
126
|
+
"""📊 Analyze repository development over time."""
|
|
127
|
+
from machineconfig.scripts.python.repos_helper import print_banner
|
|
128
|
+
print_banner()
|
|
129
|
+
repo_path = directory if directory is not None else "."
|
|
130
|
+
from machineconfig.scripts.python.count_lines_frontend import analyze_repo_development
|
|
131
|
+
analyze_repo_development(repo_path=repo_path)
|
|
132
|
+
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
from typing import Optional
|
|
5
|
+
from pathlib import Path
|
|
6
|
+
from machineconfig.utils.source_of_truth import CONFIG_PATH, DEFAULTS_PATH
|
|
7
|
+
|
|
8
|
+
import typer
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def print_banner() -> None:
|
|
13
|
+
typer.echo("\n" + "=" * 50)
|
|
14
|
+
typer.echo("📂 Welcome to the Repository Manager")
|
|
15
|
+
typer.echo("=" * 50 + "\n")
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def resolve_directory(directory: Optional[str]) -> Path:
|
|
20
|
+
if directory is None:
|
|
21
|
+
directory = Path.cwd().as_posix()
|
|
22
|
+
typer.echo(f"📁 Using directory: {directory}")
|
|
23
|
+
return Path(directory).expanduser().absolute()
|
|
24
|
+
def git_operations(
|
|
25
|
+
directory: Optional[str],
|
|
26
|
+
*,
|
|
27
|
+
pull: bool,
|
|
28
|
+
commit: bool,
|
|
29
|
+
push: bool,
|
|
30
|
+
recursive: bool,
|
|
31
|
+
no_sync: bool,
|
|
32
|
+
) -> None:
|
|
33
|
+
print_banner()
|
|
34
|
+
repos_root = resolve_directory(directory)
|
|
35
|
+
auto_sync = not no_sync
|
|
36
|
+
from machineconfig.scripts.python.repos_helper_action import perform_git_operations
|
|
37
|
+
from machineconfig.utils.path_extended import PathExtended
|
|
38
|
+
perform_git_operations(
|
|
39
|
+
repos_root=PathExtended(repos_root),
|
|
40
|
+
pull=pull,
|
|
41
|
+
commit=commit,
|
|
42
|
+
push=push,
|
|
43
|
+
recursive=recursive,
|
|
44
|
+
auto_sync=auto_sync,
|
|
45
|
+
)
|
|
46
|
+
def resolve_spec_path(directory: Optional[str], cloud: Optional[str]) -> Path:
|
|
47
|
+
repos_root = resolve_directory(directory)
|
|
48
|
+
from machineconfig.utils.path_extended import PathExtended
|
|
49
|
+
if not repos_root.exists() or repos_root.name != "repos.json":
|
|
50
|
+
candidate = Path(CONFIG_PATH).joinpath("repos").joinpath(PathExtended(repos_root).rel2home()).joinpath("repos.json")
|
|
51
|
+
repos_root = candidate
|
|
52
|
+
if not repos_root.exists():
|
|
53
|
+
cloud_name: Optional[str]
|
|
54
|
+
if cloud is None:
|
|
55
|
+
from machineconfig.utils.io import read_ini
|
|
56
|
+
cloud_name = read_ini(DEFAULTS_PATH)["general"]["rclone_config_name"]
|
|
57
|
+
typer.echo(f"⚠️ Using default cloud: {cloud_name}")
|
|
58
|
+
else:
|
|
59
|
+
cloud_name = cloud
|
|
60
|
+
assert cloud_name is not None, (
|
|
61
|
+
f"Path {repos_root} does not exist and cloud was not passed. You can't clone without one of them."
|
|
62
|
+
)
|
|
63
|
+
from machineconfig.utils.path_extended import PathExtended
|
|
64
|
+
PathExtended(repos_root).from_cloud(cloud=cloud_name, rel2home=True)
|
|
65
|
+
assert repos_root.exists() and repos_root.name == "repos.json", (
|
|
66
|
+
f"Path {repos_root} does not exist and cloud was not passed. You can't clone without one of them."
|
|
67
|
+
)
|
|
68
|
+
return repos_root
|
|
69
|
+
def clone_from_specs(
|
|
70
|
+
directory: Optional[str],
|
|
71
|
+
cloud: Optional[str],
|
|
72
|
+
*,
|
|
73
|
+
checkout_branch_flag: bool,
|
|
74
|
+
checkout_commit_flag: bool,
|
|
75
|
+
) -> None:
|
|
76
|
+
print_banner()
|
|
77
|
+
typer.echo("\n📥 Cloning or checking out repositories...")
|
|
78
|
+
spec_path = resolve_spec_path(directory, cloud)
|
|
79
|
+
from machineconfig.scripts.python.repos_helper_clone import clone_repos
|
|
80
|
+
clone_repos(
|
|
81
|
+
spec_path=spec_path,
|
|
82
|
+
preferred_remote=None,
|
|
83
|
+
checkout_branch_flag=checkout_branch_flag,
|
|
84
|
+
checkout_commit_flag=checkout_commit_flag,
|
|
85
|
+
)
|