machineconfig 3.94__tar.gz → 3.96__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-3.94/src/machineconfig.egg-info → machineconfig-3.96}/PKG-INFO +2 -1
- {machineconfig-3.94 → machineconfig-3.96}/pyproject.toml +3 -1
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/create.py +5 -1
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/devops +1 -1
- machineconfig-3.96/src/machineconfig/scripts/python/devops.py +177 -0
- machineconfig-3.96/src/machineconfig/scripts/python/interactive.py +257 -0
- machineconfig-3.96/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +58 -0
- {machineconfig-3.94 → machineconfig-3.96/src/machineconfig.egg-info}/PKG-INFO +2 -1
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig.egg-info/SOURCES.txt +1 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig.egg-info/entry_points.txt +1 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig.egg-info/requires.txt +1 -0
- machineconfig-3.94/src/machineconfig/scripts/python/devops.py +0 -116
- machineconfig-3.94/src/machineconfig/setup_linux/web_shortcuts/interactive.sh +0 -204
- {machineconfig-3.94 → machineconfig-3.96}/MANIFEST.in +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/README.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/setup.cfg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/cloud_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/data_transfer.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/distribute.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/file_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/job_params.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/loader_runner.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/remote_machine.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/script_execution.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/remote/script_notify_upon_completion.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/enhanced_command_runner.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_local.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_local_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_remote.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_remote_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_utils/process_monitor.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_utils/remote_executor.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_utils/session_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_local.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_local_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_remote.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_remote_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/monitoring_types.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/remote_executor.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/session_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/cli_trogon.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/run_cloud.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/run_cluster.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/run_remote.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/cluster/templates/utils.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom/gh.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom/hx.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/alacritty.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/brave.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/bypass_paywall.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/code.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/cursor.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/espanso.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/goes.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/lvim.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/nerdfont.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/redis.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/wezterm.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/custom_dev/winget.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/brave.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/docker.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/docker_start.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/edge.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/nerdfont.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/redis.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/vscode.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/warp-cli.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/linux_scripts/wezterm.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/packages_custom_dev.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/packages_custom_essential.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/packages_github_dev.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/packages_github_essential.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/linux/msc/cli_agents.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/linux/msc/lid.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/linux/msc/network.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/check_installations.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/create_bootable_media.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/python_cargo_build_share.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/python_ve_symlink.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/tasks.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/vscode/api.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/python/vscode/sync_code.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/archive/openssh-server_add_key.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/archive/openssh-server_copy-ssh-id.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/msc/cli_agents.bat +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/msc/cli_agents.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/start_terminal.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/jobs/windows/startup_file.cmd +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/logger.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/records/generic/shares.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/records/linux/apps_summary_report.csv +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/records/linux/apps_summary_report.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/records/windows/apps_summary_report.csv +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/records/windows/apps_summary_report.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/profile/shell.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/cloud/init.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/choose_wezterm_theme +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/cloud_copy +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/cloud_mount +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/cloud_repo_sync +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/cloud_sync +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/croshell +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fire +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fire_agents +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/ftpx +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fzf2g +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fzfag +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fzffg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fzfg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/fzfrga +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/gh_models +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/initai +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/kill_process +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/mount_drive +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/mount_nfs +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/mount_nw_drive +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/mount_smb +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/programs +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/repos +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/scheduler +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/share_cloud.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/share_nfs +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/share_smb +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/skrg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/start_docker +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/start_slidev +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/start_terminals +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/switch_ip +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/warp-cli.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/wifi_conn +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/linux/z_ls +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/generate_files.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/initai.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/_shared.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/claude/claude.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/cline/cline.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/chatmodes/deepResearch.chatmode.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/privacy.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/copilot/prompts/research-report-skeleton.prompt.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/crush/crush.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/crush/crush.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/crush/privacy.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/cursor/cursors.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/gemini/gemini.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/gemini/settings.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/generic.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/kilocode/privacy.md +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ai/solutions/opencode/opencode.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/choose_wezterm_theme.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/cloud_copy.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/cloud_manager.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/cloud_mount.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/cloud_repo_sync.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/cloud_sync.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/croshell.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/devops_add_identity.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/devops_add_ssh_key.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/devops_backup_retrieve.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/devops_devapps_install.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/devops_update_repos.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/dotfile.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_agents.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_agents_help_launch.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_agents_help_search.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_agents_load_balancer.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_jobs.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_jobs_args_helper.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/fire_jobs_streamlit_helper.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/ftpx.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/get_zellij_cmd.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/gh_models.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/cloud_helpers.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/helpers2.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/helpers4.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/helpers5.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/mount_nfs.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/mount_nw_drive.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/mount_ssh.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/onetimeshare.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/pomodoro.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/repos.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/repos_helper_action.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/repos_helper_clone.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/repos_helper_record.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/repos_helper_update.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/scheduler.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/share_terminal.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/snapshot.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/start_slidev.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/start_terminals.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/t4.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/viewer.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/viewer_template.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/wifi_conn.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/python/wsl_windows_transfer.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/cloud_copy.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/cloud_mount.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/cloud_sync.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/croshell.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/devops.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/dotfile.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/fire.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/ftpx.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/fzfb.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/fzfg.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/fzfrga.bat +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/gpt.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/grep.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/initai.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/kill_process.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/mount_nfs.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/mount_nw.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/mount_smb.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/mount_ssh.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/nano.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/pomodoro.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/reload_path.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/repos.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/scheduler.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/share_cloud.cmd +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/share_nfs.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/share_smb.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/snapshot.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/start_slidev.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/start_terminals.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/unlock_bitlocker.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/wifi_conn.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/broot/br.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/broot/brootcd.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/broot/conf.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/glow/glow.yml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/gromit-mpx/gromit-mpx.cfg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/helix/config.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/helix/languages.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/keras/keras.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/keyboard/espanso/config/default.yml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/keyboard/espanso/match/base.yml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/keyboard/kanata/kanata.kbd +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/delete.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/on-cd.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/on-quit.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/open.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/paste.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/pre-cd.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/autocall/rename.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/colors +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/cleaner.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/leftpane_previewer.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/lfcd.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/previewer.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/exe/previewer_archive.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/icons +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/linux/lfrc +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/delete.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/on-cd.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/on-quit.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/open.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/paste.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/pre-cd.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/autocall/rename.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/cd_tere.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/cd_zoxide.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/colors +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/fzf_edit.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/icons +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/leftpane_previewer.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/lfcd.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/lfrc +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/mkdir.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/mkfile.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/previewer.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lf/windows/tst.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/linters/.flake8 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/linters/.mypy.ini +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/linters/.pylintrc +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/linters/.ruff.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lvim/linux/config.lua +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lvim/windows/config.lua +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/lvim/windows/lua/user/custom_config.lua +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/mprocs/windows/mprocs.yaml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/mprocs/windows/other +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/pistol/pistol.conf +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/presenterm/config.yaml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/procs/.procs.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/pudb/pudb.cfg +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/rofi/config.rasi +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/rofi/config_default.rasi +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/alacritty/alacritty.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/alacritty/alacritty.yml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/bash/init.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/hyper/.hyper.js +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/ipy/profiles/default/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/ipy/profiles/default/startup/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/kitty/kitty.conf +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/nushell/config.nu +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/nushell/env.nu +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/pwsh/init.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/pwsh/profile.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/starship/starship.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/vtm/settings.xml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/wezterm/wezterm.lua +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/shells/wt/settings.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/streamlit/config.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/svim/linux/init.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/svim/windows/init.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/tere/terecd.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/tere/terecd.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/tmux/.tmate.conf +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/tmux/.tmux.conf +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/wsl/.wslconfig +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/yazi/keymap.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/yazi/theme.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/yazi/yazi.toml +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zed/settings.json +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/commands/monitor +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/commands/standard_panes +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/config.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/config.orig.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/layouts/hist +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/layouts/panes.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/layouts/st.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/layouts/st2.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/settings/zellij/layouts/stacked_panes.kdl +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/nix/cli_installation.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/web_shortcuts/android.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/others/docker.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/others/obs.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/web_shortcuts/interactive.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/wt_and_pwsh/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/accessories.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/ai/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/ai/generate_file_checklist.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/cloud/onedrive/setup_oauth.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/cloud/onedrive/transaction.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/code.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/installer.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/installer_utils/__init__.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/installer_utils/github_release_bulk.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/installer_utils/installer_abc.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/installer_utils/installer_class.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/io.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/links.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/notifications.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/options.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/path_extended.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/path_helper.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/procs.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/scheduler.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/scheduling.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/schemas/fire_agents/fire_agents_input.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/schemas/installer/installer_types.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/schemas/layouts/layout_types.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/schemas/repos/repos_types.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/source_of_truth.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/ssh.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/terminal.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/upgrade_packages.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig/utils/ve.py +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig.egg-info/dependency_links.txt +0 -0
- {machineconfig-3.94 → machineconfig-3.96}/src/machineconfig.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: machineconfig
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.96
|
|
4
4
|
Summary: Dotfiles management package
|
|
5
5
|
Author-email: Alex Al-Saffar <programmer@usa.com>
|
|
6
6
|
License: Apache 2.0
|
|
@@ -25,6 +25,7 @@ Requires-Dist: pyfzf>=0.3.1
|
|
|
25
25
|
Requires-Dist: rclone-python>=0.1.23
|
|
26
26
|
Requires-Dist: pyjson5>=1.6.9
|
|
27
27
|
Requires-Dist: typer-slim>=0.19.2
|
|
28
|
+
Requires-Dist: questionary>=2.1.1
|
|
28
29
|
Provides-Extra: windows
|
|
29
30
|
Requires-Dist: pywin32; extra == "windows"
|
|
30
31
|
Provides-Extra: docs
|
|
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "machineconfig"
|
|
9
|
-
version = "3.
|
|
9
|
+
version = "3.96"
|
|
10
10
|
description = "Dotfiles management package"
|
|
11
11
|
readme = "README.md"
|
|
12
12
|
license = {text = "Apache 2.0"}
|
|
@@ -34,6 +34,7 @@ dependencies = [
|
|
|
34
34
|
"rclone-python>=0.1.23",
|
|
35
35
|
"pyjson5>=1.6.9",
|
|
36
36
|
"typer-slim>=0.19.2",
|
|
37
|
+
"questionary>=2.1.1",
|
|
37
38
|
]
|
|
38
39
|
|
|
39
40
|
[project.optional-dependencies]
|
|
@@ -51,6 +52,7 @@ docs = [
|
|
|
51
52
|
|
|
52
53
|
[project.scripts]
|
|
53
54
|
devops = "machineconfig.scripts.python.devops:args_parser"
|
|
55
|
+
ia = "machineconfig.scripts.python.interactive:main"
|
|
54
56
|
install = "machineconfig.scripts.python.devops_devapps_install:main_with_parser"
|
|
55
57
|
choose_wezterm_theme = "machineconfig.scripts.python.choose_wezterm_theme:main"
|
|
56
58
|
cloud_copy = "machineconfig.scripts.python.cloud_copy:arg_parser"
|
|
@@ -147,11 +147,15 @@ def apply_mapper(choice: Optional[str] = None):
|
|
|
147
147
|
""")
|
|
148
148
|
|
|
149
149
|
|
|
150
|
-
def
|
|
150
|
+
def main_symlinks():
|
|
151
151
|
console = Console()
|
|
152
152
|
print("\n")
|
|
153
153
|
console.rule("[bold blue]🔗 CREATING SYMLINKS 🔗")
|
|
154
154
|
apply_mapper(choice="all")
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
def main_profile():
|
|
158
|
+
console = Console()
|
|
155
159
|
print("\n")
|
|
156
160
|
console.rule("[bold green]🐚 CREATING SHELL PROFILE 🐚")
|
|
157
161
|
create_default_shell_profile()
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
|
-
uv run --python 3.13 --no-dev --project $HOME/code/machineconfig devops
|
|
2
|
+
uv run --python 3.13 --no-dev --project $HOME/code/machineconfig devops "$@"
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
"""devops with emojis"""
|
|
2
|
+
|
|
3
|
+
from machineconfig.utils.options import choose_from_options
|
|
4
|
+
|
|
5
|
+
from platform import system
|
|
6
|
+
from typing import Optional, Literal, TypeAlias
|
|
7
|
+
from rich.console import Console
|
|
8
|
+
from rich.panel import Panel
|
|
9
|
+
import typer
|
|
10
|
+
|
|
11
|
+
console = Console()
|
|
12
|
+
app = typer.Typer(help="🛠️ DevOps operations with emojis", invoke_without_command=True, no_args_is_help=True)
|
|
13
|
+
|
|
14
|
+
BOX_WIDTH = 150 # width for box drawing
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
COMMANDS: TypeAlias = Literal["🔄 UPDATE essential repos", "⚙️ DEVAPPS install", "🔗 SYMLINKS, SHELL PROFILE, FONT, TERMINAL SETTINGS.", "🆕 SYMLINKS new", "🔑 SSH add pub key to this machine", "🗝️ SSH add identity (private key) to this machine", "🔐 SSH use key pair to connect two machines", "📡 SSH setup", "🐧 SSH setup wsl", "💾 BACKUP", "📥 RETRIEVE", "⏰ SCHEDULER"]
|
|
18
|
+
|
|
19
|
+
options_list = list(COMMANDS.__args__)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
@app.command()
|
|
23
|
+
def update():
|
|
24
|
+
"""🔄 UPDATE essential repos"""
|
|
25
|
+
console.print(Panel("🔄 Updating essential repositories...", width=BOX_WIDTH, border_style="blue"))
|
|
26
|
+
import machineconfig.scripts.python.devops_update_repos as helper
|
|
27
|
+
helper.main()
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
@app.command()
|
|
31
|
+
def install():
|
|
32
|
+
"""⚙️ DEVAPPS install"""
|
|
33
|
+
console.print(Panel("⚙️ Installing development applications...", width=BOX_WIDTH, border_style="blue"))
|
|
34
|
+
import machineconfig.scripts.python.devops_devapps_install as helper
|
|
35
|
+
helper.main(which=None)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
@app.command()
|
|
39
|
+
def symlinks():
|
|
40
|
+
"""🔗 SYMLINKS of dotfiles."""
|
|
41
|
+
console.print(Panel("🔗 Setting up symlinks, PATH, and shell profile...", width=BOX_WIDTH, border_style="blue"))
|
|
42
|
+
import machineconfig.profile.create as helper
|
|
43
|
+
helper.main_symlinks()
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
@app.command()
|
|
47
|
+
def profile():
|
|
48
|
+
"""🔗 Update shell profile."""
|
|
49
|
+
console.print(Panel("🔗 Setting up symlinks, PATH, and shell profile...", width=BOX_WIDTH, border_style="blue"))
|
|
50
|
+
import machineconfig.profile.create as helper
|
|
51
|
+
helper.main_profile()
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
@app.command()
|
|
55
|
+
def symlinks_new():
|
|
56
|
+
"""🆕 SYMLINKS new"""
|
|
57
|
+
console.print(Panel("🔄 Creating new symlinks...", width=BOX_WIDTH, border_style="blue"))
|
|
58
|
+
import machineconfig.jobs.python.python_ve_symlink as helper
|
|
59
|
+
helper.main()
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
@app.command()
|
|
63
|
+
def ssh_add_key():
|
|
64
|
+
"""🔑 SSH add pub key to this machine"""
|
|
65
|
+
console.print(Panel("🔑 Adding public SSH key to this machine...", width=BOX_WIDTH, border_style="blue"))
|
|
66
|
+
import machineconfig.scripts.python.devops_add_ssh_key as helper
|
|
67
|
+
helper.main()
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
@app.command()
|
|
71
|
+
def ssh_add_identity():
|
|
72
|
+
"""🗝️ SSH add identity (private key) to this machine"""
|
|
73
|
+
console.print(Panel("🗝️ Adding SSH identity (private key) to this machine...", width=BOX_WIDTH, border_style="blue"))
|
|
74
|
+
import machineconfig.scripts.python.devops_add_identity as helper
|
|
75
|
+
helper.main()
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
@app.command()
|
|
79
|
+
def ssh_connect():
|
|
80
|
+
"""🔐 SSH use key pair to connect two machines"""
|
|
81
|
+
console.print(Panel("❌ ERROR: Not Implemented\nSSH key pair connection feature is not yet implemented", title_align="left", border_style="red", width=BOX_WIDTH))
|
|
82
|
+
raise NotImplementedError
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
@app.command()
|
|
86
|
+
def ssh_setup():
|
|
87
|
+
"""📡 SSH setup"""
|
|
88
|
+
console.print(Panel("📡 Setting up SSH...", width=BOX_WIDTH, border_style="blue"))
|
|
89
|
+
_program_windows = """Invoke-WebRequest https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_windows/openssh_all.ps1 | Invoke-Expression # https://github.com/thisismygitrepo.keys"""
|
|
90
|
+
_program_linux = """curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/openssh_all.sh | sudo bash # https://github.com/thisismygitrepo.keys"""
|
|
91
|
+
import subprocess
|
|
92
|
+
subprocess.run(_program_linux if system() == "Linux" else _program_windows, shell=True, check=True)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
@app.command()
|
|
96
|
+
def ssh_setup_wsl():
|
|
97
|
+
"""🐧 SSH setup wsl"""
|
|
98
|
+
console.print(Panel("🐧 Setting up SSH for WSL...", width=BOX_WIDTH, border_style="blue"))
|
|
99
|
+
import subprocess
|
|
100
|
+
subprocess.run("curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/openssh_wsl.sh | sudo bash", shell=True, check=True)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
@app.command()
|
|
104
|
+
def backup():
|
|
105
|
+
"""💾 BACKUP"""
|
|
106
|
+
console.print(Panel("💾 Creating backup...", width=BOX_WIDTH, border_style="blue"))
|
|
107
|
+
from machineconfig.scripts.python.devops_backup_retrieve import main_backup_retrieve
|
|
108
|
+
main_backup_retrieve(direction="BACKUP")
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
@app.command()
|
|
112
|
+
def retrieve():
|
|
113
|
+
"""📥 RETRIEVE"""
|
|
114
|
+
console.print(Panel("📥 Retrieving backup...", width=BOX_WIDTH, border_style="blue"))
|
|
115
|
+
from machineconfig.scripts.python.devops_backup_retrieve import main_backup_retrieve
|
|
116
|
+
main_backup_retrieve(direction="RETRIEVE")
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
@app.command()
|
|
120
|
+
def scheduler():
|
|
121
|
+
"""⏰ SCHEDULER"""
|
|
122
|
+
console.print(Panel("⏰ Setting up scheduler...", width=BOX_WIDTH, border_style="blue"))
|
|
123
|
+
# from machineconfig.scripts.python.scheduler import main as helper
|
|
124
|
+
# helper()
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
def args_parser():
|
|
128
|
+
app()
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
@app.command()
|
|
132
|
+
def interactive(which: Optional[COMMANDS] = None):
|
|
133
|
+
"""🛠️ Interactive menu mode (legacy)"""
|
|
134
|
+
console.print(Panel("🚀 Initializing DevOps operation...", width=BOX_WIDTH, border_style="blue"))
|
|
135
|
+
options = options_list
|
|
136
|
+
if which is None:
|
|
137
|
+
try:
|
|
138
|
+
choice_key = choose_from_options(msg="", options=options, header="🛠️ DEVOPS", default=options[0], multi=False, fzf=False)
|
|
139
|
+
except KeyboardInterrupt:
|
|
140
|
+
console.print(Panel("❌ Operation cancelled by user", title_align="left", border_style="red", width=BOX_WIDTH))
|
|
141
|
+
return
|
|
142
|
+
else:
|
|
143
|
+
choice_key = which
|
|
144
|
+
|
|
145
|
+
console.print(Panel(f"🔧 SELECTED OPERATION\n{choice_key}", title_align="left", border_style="green", width=BOX_WIDTH))
|
|
146
|
+
|
|
147
|
+
if choice_key == "🔄 UPDATE essential repos":
|
|
148
|
+
update()
|
|
149
|
+
elif choice_key == "⚙️ DEVAPPS install":
|
|
150
|
+
install()
|
|
151
|
+
elif choice_key == "🆕 SYMLINKS new":
|
|
152
|
+
symlinks_new()
|
|
153
|
+
elif choice_key == "🔗 SYMLINKS, SHELL PROFILE, FONT, TERMINAL SETTINGS.":
|
|
154
|
+
symlinks()
|
|
155
|
+
elif choice_key == "🔑 SSH add pub key to this machine":
|
|
156
|
+
ssh_add_key()
|
|
157
|
+
elif choice_key == "🔐 SSH use key pair to connect two machines":
|
|
158
|
+
ssh_connect()
|
|
159
|
+
elif choice_key == "🗝️ SSH add identity (private key) to this machine":
|
|
160
|
+
ssh_add_identity()
|
|
161
|
+
elif choice_key == "📡 SSH setup":
|
|
162
|
+
ssh_setup()
|
|
163
|
+
elif choice_key == "🐧 SSH setup wsl":
|
|
164
|
+
ssh_setup_wsl()
|
|
165
|
+
elif choice_key == "💾 BACKUP":
|
|
166
|
+
backup()
|
|
167
|
+
elif choice_key == "📥 RETRIEVE":
|
|
168
|
+
retrieve()
|
|
169
|
+
elif choice_key == "⏰ SCHEDULER":
|
|
170
|
+
scheduler()
|
|
171
|
+
else:
|
|
172
|
+
console.print(Panel("❌ ERROR: Invalid choice", title_align="left", border_style="red", width=BOX_WIDTH))
|
|
173
|
+
raise ValueError(f"Unimplemented choice: {choice_key}")
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
if __name__ == "__main__":
|
|
177
|
+
args_parser()
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""
|
|
3
|
+
Interactive Machine Configuration Setup Script
|
|
4
|
+
|
|
5
|
+
A Python version of the interactive installation script that uses questionary
|
|
6
|
+
for better user experience with checkbox selections.
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# echo # 📧 Thunderbird Setup Note:
|
|
10
|
+
# Run after installing Thunderbird and starting it once:
|
|
11
|
+
# cd ~/AppData/Roaming/ThunderBird/Profiles
|
|
12
|
+
# $res = ls
|
|
13
|
+
# $name = $res[0].Name
|
|
14
|
+
# mv $backup_folder $name
|
|
15
|
+
#
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
"""
|
|
19
|
+
|
|
20
|
+
import subprocess
|
|
21
|
+
import sys
|
|
22
|
+
|
|
23
|
+
import questionary
|
|
24
|
+
from questionary import Choice
|
|
25
|
+
from rich.console import Console
|
|
26
|
+
from rich.panel import Panel
|
|
27
|
+
from rich.text import Text
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
console = Console()
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def run_command(command: str, description: str) -> bool:
|
|
34
|
+
"""Execute a shell command and return success status."""
|
|
35
|
+
console.print(f"\n🔧 {description}", style="bold cyan")
|
|
36
|
+
try:
|
|
37
|
+
result = subprocess.run(command, shell=True, check=True, capture_output=False)
|
|
38
|
+
return result.returncode == 0
|
|
39
|
+
except subprocess.CalledProcessError as e:
|
|
40
|
+
console.print(f"❌ Error executing command: {e}", style="bold red")
|
|
41
|
+
return False
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def display_header() -> None:
|
|
45
|
+
"""Display the script header."""
|
|
46
|
+
header_text = Text("MACHINE CONFIGURATION", style="bold magenta")
|
|
47
|
+
subtitle_text = Text("Interactive Installation Script", style="italic cyan")
|
|
48
|
+
console.print(Panel(
|
|
49
|
+
f"📦 {header_text}\n{subtitle_text}",
|
|
50
|
+
border_style="blue",
|
|
51
|
+
padding=(1, 2)
|
|
52
|
+
))
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
def display_completion_message() -> None:
|
|
56
|
+
"""Display completion message."""
|
|
57
|
+
completion_text = Text("INSTALLATION COMPLETE", style="bold green")
|
|
58
|
+
subtitle_text = Text("System setup finished successfully", style="italic green")
|
|
59
|
+
console.print(Panel(
|
|
60
|
+
f"✨ {completion_text}\n{subtitle_text}\n\n🎉 Your system has been configured successfully!\n🔄 You may need to reboot to apply all changes.",
|
|
61
|
+
border_style="green",
|
|
62
|
+
padding=(1, 2)
|
|
63
|
+
))
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
def display_dotfiles_instructions() -> None:
|
|
67
|
+
"""Display instructions for dotfiles migration."""
|
|
68
|
+
header_text = Text("DOTFILES MIGRATION", style="bold yellow")
|
|
69
|
+
subtitle_text = Text("Configuration transfer options", style="italic yellow")
|
|
70
|
+
|
|
71
|
+
instructions = """🖱️ [bold blue]Method 1: USING MOUSE WITHOUT KB OR BROWSER SHARE[/bold blue]
|
|
72
|
+
On original machine, run:
|
|
73
|
+
[dim]cd ~/dotfiles/creds/msc
|
|
74
|
+
easy-sharing . --password rew --username al[/dim]
|
|
75
|
+
Then open brave on new machine to get MouseWithoutBorders password
|
|
76
|
+
|
|
77
|
+
🔐 [bold blue]Method 2: USING SSH[/bold blue]
|
|
78
|
+
FROM REMOTE, RUN:
|
|
79
|
+
[dim]fptx ~/dotfiles $USER@$(hostname):^ -z
|
|
80
|
+
# OR, using IP address if router has not yet found the hostname:
|
|
81
|
+
fptx ~/dotfiles $USER@$(hostname -I | awk '{print $1}'):^ -z[/dim]
|
|
82
|
+
|
|
83
|
+
☁️ [bold blue]Method 3: USING INTERNET SECURE SHARE[/bold blue]
|
|
84
|
+
[dim]cd ~
|
|
85
|
+
cloud_copy SHARE_URL . --config ss[/dim]
|
|
86
|
+
(requires symlinks to be created first)"""
|
|
87
|
+
|
|
88
|
+
console.print(Panel(
|
|
89
|
+
f"📂 {header_text}\n{subtitle_text}\n\n{instructions}",
|
|
90
|
+
border_style="yellow",
|
|
91
|
+
padding=(1, 2)
|
|
92
|
+
))
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def get_installation_choices() -> list[str]:
|
|
96
|
+
"""Get user choices for installation options."""
|
|
97
|
+
choices = [
|
|
98
|
+
Choice(value="install_apps", title="📥 Install Apps - Install base system applications", checked=False),
|
|
99
|
+
Choice(value="upgrade_system", title="🔄 Upgrade System Packages - Update all system packages", checked=False),
|
|
100
|
+
Choice(value="install_uv_repos", title="🐍 Install UV and Repos - Set up Python environment and repositories", checked=False),
|
|
101
|
+
Choice(value="install_ssh_server", title="🔒 Install SSH Server - Set up remote access", checked=False),
|
|
102
|
+
Choice(value="create_symlinks", title="🔗 Create Symlinks - Set up configuration symlinks (finish dotfiles transfer first)", checked=False),
|
|
103
|
+
Choice(value="install_cli_apps", title="⚡ Install CLI Apps - Command-line tools installation", checked=False),
|
|
104
|
+
Choice(value="install_dev_tools", title="🛠️ Install Development Tools - rust, libssl-dev, ffmpeg, wezterm, brave, code", checked=False),
|
|
105
|
+
Choice(value="retrieve_repositories", title="📚 Retrieve Repositories - Clone repositories to ~/code", checked=False),
|
|
106
|
+
Choice(value="retrieve_data", title="💾 Retrieve Data - Backup restoration", checked=False),
|
|
107
|
+
Choice(value="install_ascii_art", title="🎨 Install ASCII Art Libraries - Terminal visualization tools", checked=False),
|
|
108
|
+
]
|
|
109
|
+
|
|
110
|
+
selected = questionary.checkbox(
|
|
111
|
+
"Select the installation options you want to execute:",
|
|
112
|
+
choices=choices,
|
|
113
|
+
show_description=True,
|
|
114
|
+
).ask()
|
|
115
|
+
|
|
116
|
+
return selected or []
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
def execute_installations(selected_options: list[str]) -> None:
|
|
120
|
+
"""Execute the selected installation options."""
|
|
121
|
+
# Always start with VE setup
|
|
122
|
+
console.print(Panel(
|
|
123
|
+
"🐍 [bold green]PYTHON ENVIRONMENT[/bold green]\n[italic]Setting up base virtual environment[/italic]",
|
|
124
|
+
border_style="green"
|
|
125
|
+
))
|
|
126
|
+
run_command(
|
|
127
|
+
"curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/ve.sh | bash",
|
|
128
|
+
"Setting up base virtual environment"
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
if "install_apps" in selected_options:
|
|
132
|
+
console.print(Panel(
|
|
133
|
+
"📦 [bold blue]APPLICATIONS[/bold blue]\n[italic]Installing base system applications[/italic]",
|
|
134
|
+
border_style="blue"
|
|
135
|
+
))
|
|
136
|
+
run_command(
|
|
137
|
+
"curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/apps.sh | bash",
|
|
138
|
+
"Installing base system applications"
|
|
139
|
+
)
|
|
140
|
+
|
|
141
|
+
if "upgrade_system" in selected_options:
|
|
142
|
+
console.print(Panel(
|
|
143
|
+
"🔄 [bold magenta]SYSTEM UPDATE[/bold magenta]\n[italic]Package management[/italic]",
|
|
144
|
+
border_style="magenta"
|
|
145
|
+
))
|
|
146
|
+
run_command("sudo nala upgrade -y", "Upgrading system packages")
|
|
147
|
+
|
|
148
|
+
if "install_uv_repos" in selected_options:
|
|
149
|
+
console.print(Panel(
|
|
150
|
+
"🐍 [bold green]PYTHON ENVIRONMENT[/bold green]\n[italic]Virtual environment setup[/italic]",
|
|
151
|
+
border_style="green"
|
|
152
|
+
))
|
|
153
|
+
run_command(
|
|
154
|
+
"curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/repos.sh | bash",
|
|
155
|
+
"Setting up Python environment and repositories"
|
|
156
|
+
)
|
|
157
|
+
|
|
158
|
+
if "install_ssh_server" in selected_options:
|
|
159
|
+
console.print(Panel(
|
|
160
|
+
"🔒 [bold red]SSH SERVER[/bold red]\n[italic]Remote access setup[/italic]",
|
|
161
|
+
border_style="red"
|
|
162
|
+
))
|
|
163
|
+
run_command("sudo nala install openssh-server -y", "Installing SSH server")
|
|
164
|
+
|
|
165
|
+
# Always display dotfiles instructions if symlinks are selected
|
|
166
|
+
if "create_symlinks" in selected_options:
|
|
167
|
+
display_dotfiles_instructions()
|
|
168
|
+
|
|
169
|
+
dotfiles_ready = questionary.confirm(
|
|
170
|
+
"📂 Have you finished copying dotfiles?",
|
|
171
|
+
default=True
|
|
172
|
+
).ask()
|
|
173
|
+
|
|
174
|
+
if dotfiles_ready:
|
|
175
|
+
console.print(Panel(
|
|
176
|
+
"🔗 [bold cyan]SYMLINK CREATION[/bold cyan]\n[italic]Configuration setup[/italic]",
|
|
177
|
+
border_style="cyan"
|
|
178
|
+
))
|
|
179
|
+
run_command(
|
|
180
|
+
"uv run --python 3.13 --with machineconfig python -m fire machineconfig.profile.create main_symlinks --choice=all",
|
|
181
|
+
"Creating symlinks"
|
|
182
|
+
)
|
|
183
|
+
run_command("sudo chmod 600 $HOME/.ssh/*", "Setting SSH key permissions")
|
|
184
|
+
run_command("sudo chmod 700 $HOME/.ssh", "Setting SSH directory permissions")
|
|
185
|
+
else:
|
|
186
|
+
console.print("⏭️ Skipping symlink creation - finish dotfiles transfer first", style="yellow")
|
|
187
|
+
|
|
188
|
+
if "install_cli_apps" in selected_options:
|
|
189
|
+
console.print(Panel(
|
|
190
|
+
"⚡ [bold bright_yellow]CLI APPLICATIONS[/bold bright_yellow]\n[italic]Command-line tools installation[/italic]",
|
|
191
|
+
border_style="bright_yellow"
|
|
192
|
+
))
|
|
193
|
+
run_command(
|
|
194
|
+
"uv run --python 3.13 --with machineconfig python -m fire machineconfig.scripts.python.devops_devapps_install main --which=essentials",
|
|
195
|
+
"Installing CLI applications"
|
|
196
|
+
)
|
|
197
|
+
run_command(". $HOME/.bashrc", "Reloading bash configuration")
|
|
198
|
+
|
|
199
|
+
if "install_dev_tools" in selected_options:
|
|
200
|
+
console.print(Panel(
|
|
201
|
+
"🛠️ [bold bright_blue]DEVELOPMENT TOOLS[/bold bright_blue]\n[italic]Software development packages[/italic]",
|
|
202
|
+
border_style="bright_blue"
|
|
203
|
+
))
|
|
204
|
+
run_command(
|
|
205
|
+
"(curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh) || true",
|
|
206
|
+
"Installing Rust toolchain"
|
|
207
|
+
)
|
|
208
|
+
run_command("sudo nala install libssl-dev -y", "Installing libssl-dev")
|
|
209
|
+
run_command("sudo nala install ffmpeg -y", "Installing ffmpeg")
|
|
210
|
+
run_command(
|
|
211
|
+
"uv run --python 3.13 --with machineconfig python -m fire machineconfig.scripts.python.devops_devapps_install main --which=wezterm,brave,code",
|
|
212
|
+
"Installing development applications"
|
|
213
|
+
)
|
|
214
|
+
|
|
215
|
+
if "retrieve_repositories" in selected_options:
|
|
216
|
+
console.print(Panel(
|
|
217
|
+
"📚 [bold bright_magenta]REPOSITORIES[/bold bright_magenta]\n[italic]Project code retrieval[/italic]",
|
|
218
|
+
border_style="bright_magenta"
|
|
219
|
+
))
|
|
220
|
+
run_command("repos ~/code --clone --cloud odg1", "Cloning repositories")
|
|
221
|
+
|
|
222
|
+
if "retrieve_data" in selected_options:
|
|
223
|
+
console.print(Panel(
|
|
224
|
+
"💾 [bold bright_cyan]DATA RETRIEVAL[/bold bright_cyan]\n[italic]Backup restoration[/italic]",
|
|
225
|
+
border_style="bright_cyan"
|
|
226
|
+
))
|
|
227
|
+
run_command(
|
|
228
|
+
"uv run --python 3.13 --with machineconfig python -m fire machineconfig.scripts.python.devops_backup_retrieve main --direction=RETRIEVE",
|
|
229
|
+
"Retrieving backup data"
|
|
230
|
+
)
|
|
231
|
+
|
|
232
|
+
if "install_ascii_art" in selected_options:
|
|
233
|
+
console.print(Panel(
|
|
234
|
+
"🎨 [bold bright_green]ASCII ART[/bold bright_green]\n[italic]Terminal visualization tools[/italic]",
|
|
235
|
+
border_style="bright_green"
|
|
236
|
+
))
|
|
237
|
+
run_command("curl bit.ly/cfgasciiartlinux -L | sudo bash", "Installing ASCII art libraries")
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
def main() -> None:
|
|
241
|
+
"""Main function to run the interactive installation."""
|
|
242
|
+
display_header()
|
|
243
|
+
selected_options = get_installation_choices()
|
|
244
|
+
if not selected_options:
|
|
245
|
+
console.print("❌ No options selected. Exiting...", style="bold red")
|
|
246
|
+
sys.exit(0)
|
|
247
|
+
console.print(f"\n✅ Selected options: {', '.join(selected_options)}", style="bold green")
|
|
248
|
+
proceed = questionary.confirm("🚀 Proceed with installation?", default=True).ask()
|
|
249
|
+
if not proceed:
|
|
250
|
+
console.print("❌ Installation cancelled.", style="bold red")
|
|
251
|
+
sys.exit(0)
|
|
252
|
+
execute_installations(selected_options)
|
|
253
|
+
display_completion_message()
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
if __name__ == "__main__":
|
|
257
|
+
pass
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
|
|
3
|
+
echo """
|
|
4
|
+
=======================================================================
|
|
5
|
+
📦 MACHINE CONFIGURATION | Interactive Installation Script
|
|
6
|
+
======================================================================="""
|
|
7
|
+
|
|
8
|
+
curl https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/ve.sh | bash
|
|
9
|
+
$HOME/.local/bin/uv run --python 3.13 --with machineconfig ia
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
echo """#=======================================================================
|
|
15
|
+
📂 DOTFILES MIGRATION | Configuration transfer options
|
|
16
|
+
#=======================================================================
|
|
17
|
+
|
|
18
|
+
🖱️ Method 1: USING MOUSE WITHOUT KB OR BROWSER SHARE
|
|
19
|
+
On original machine, run:
|
|
20
|
+
cd ~/dotfiles/creds/msc
|
|
21
|
+
easy-sharing . --password rew --username al
|
|
22
|
+
Then open brave on new machine to get MouseWithoutBorders password
|
|
23
|
+
|
|
24
|
+
🔐 Method 2: USING SSH
|
|
25
|
+
FROM REMOTE, RUN:
|
|
26
|
+
fptx ~/dotfiles $USER@$(hostname):^ -z
|
|
27
|
+
# OR, using IP address if router has not yet found the hostname:
|
|
28
|
+
fptx ~/dotfiles $USER@$(hostname -I | awk '{print $1}'):^ -z
|
|
29
|
+
|
|
30
|
+
☁️ Method 3: USING INTERNET SECURE SHARE
|
|
31
|
+
cd ~
|
|
32
|
+
cloud_copy SHARE_URL . --config ss
|
|
33
|
+
(requires symlinks to be created first)
|
|
34
|
+
"""
|
|
35
|
+
|
|
36
|
+
echo """#=======================================================================
|
|
37
|
+
📂 DOTFILES STATUS | Configuration files check
|
|
38
|
+
#=======================================================================
|
|
39
|
+
"""
|
|
40
|
+
read -p "📂 Have you finished copying dotfiles? [y]/n? " choice
|
|
41
|
+
|
|
42
|
+
echo """#=======================================================================
|
|
43
|
+
🔗 SYMLINK CREATION | Configuration setup
|
|
44
|
+
#=======================================================================
|
|
45
|
+
"""
|
|
46
|
+
read -p "🔗 Create Symlinks (finish dotfiles transfer first) [y]/n? " choice
|
|
47
|
+
choice=${choice:-y}
|
|
48
|
+
if [[ "$choice" == "y" || "$choice" == "Y" ]]; then
|
|
49
|
+
echo """ 🔧 Creating symlinks and setting permissions...
|
|
50
|
+
"""
|
|
51
|
+
uv run --python 3.13 --with machineconfig python -m fire machineconfig.profile.create main_symlinks --choice=all
|
|
52
|
+
sudo chmod 600 $HOME/.ssh/*
|
|
53
|
+
sudo chmod 700 $HOME/.ssh
|
|
54
|
+
else
|
|
55
|
+
echo """ ⏭️ Skipping symlink creation
|
|
56
|
+
"""
|
|
57
|
+
fi
|
|
58
|
+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: machineconfig
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.96
|
|
4
4
|
Summary: Dotfiles management package
|
|
5
5
|
Author-email: Alex Al-Saffar <programmer@usa.com>
|
|
6
6
|
License: Apache 2.0
|
|
@@ -25,6 +25,7 @@ Requires-Dist: pyfzf>=0.3.1
|
|
|
25
25
|
Requires-Dist: rclone-python>=0.1.23
|
|
26
26
|
Requires-Dist: pyjson5>=1.6.9
|
|
27
27
|
Requires-Dist: typer-slim>=0.19.2
|
|
28
|
+
Requires-Dist: questionary>=2.1.1
|
|
28
29
|
Provides-Extra: windows
|
|
29
30
|
Requires-Dist: pywin32; extra == "windows"
|
|
30
31
|
Provides-Extra: docs
|
|
@@ -171,6 +171,7 @@ src/machineconfig/scripts/python/fire_jobs_streamlit_helper.py
|
|
|
171
171
|
src/machineconfig/scripts/python/ftpx.py
|
|
172
172
|
src/machineconfig/scripts/python/get_zellij_cmd.py
|
|
173
173
|
src/machineconfig/scripts/python/gh_models.py
|
|
174
|
+
src/machineconfig/scripts/python/interactive.py
|
|
174
175
|
src/machineconfig/scripts/python/mount_nfs.py
|
|
175
176
|
src/machineconfig/scripts/python/mount_nw_drive.py
|
|
176
177
|
src/machineconfig/scripts/python/mount_ssh.py
|
|
@@ -9,6 +9,7 @@ devops = machineconfig.scripts.python.devops:args_parser
|
|
|
9
9
|
fire = machineconfig.scripts.python.fire_jobs:main_from_parser
|
|
10
10
|
fire_agents = machineconfig.scripts.python.fire_agents:main
|
|
11
11
|
ftpx = machineconfig.scripts.python.ftpx:main_from_parser
|
|
12
|
+
ia = machineconfig.scripts.python.interactive:main
|
|
12
13
|
initai = machineconfig.scripts.python.ai.initai:main
|
|
13
14
|
install = machineconfig.scripts.python.devops_devapps_install:main_with_parser
|
|
14
15
|
kill_process = machineconfig.utils.procs:main
|