machineconfig 3.7__py3-none-any.whl → 7.69__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of machineconfig might be problematic. Click here for more details.
- machineconfig/__init__.py +0 -28
- machineconfig/cluster/remote/distribute.py +0 -1
- machineconfig/cluster/remote/file_manager.py +0 -2
- machineconfig/cluster/remote/script_execution.py +1 -2
- machineconfig/cluster/sessions_managers/{enhanced_command_runner.py → helpers/enhanced_command_runner.py} +4 -6
- machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py +145 -0
- machineconfig/cluster/sessions_managers/utils/load_balancer.py +53 -0
- machineconfig/cluster/sessions_managers/utils/maker.py +69 -0
- machineconfig/cluster/sessions_managers/wt_local.py +128 -330
- machineconfig/cluster/sessions_managers/wt_local_manager.py +53 -187
- machineconfig/cluster/sessions_managers/wt_remote.py +51 -43
- machineconfig/cluster/sessions_managers/wt_remote_manager.py +49 -197
- machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +6 -19
- machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +52 -0
- machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +50 -0
- machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +4 -2
- machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +76 -0
- machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
- machineconfig/cluster/sessions_managers/zellij_local.py +81 -375
- machineconfig/cluster/sessions_managers/zellij_local_manager.py +22 -172
- machineconfig/cluster/sessions_managers/zellij_remote.py +40 -41
- machineconfig/cluster/sessions_managers/zellij_remote_manager.py +13 -10
- machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +4 -8
- machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +5 -20
- machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +3 -9
- machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +3 -1
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +298 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +77 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +228 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +165 -0
- machineconfig/jobs/{python → installer}/check_installations.py +7 -21
- machineconfig/jobs/installer/custom/boxes.py +61 -0
- machineconfig/jobs/installer/custom/gh.py +128 -0
- machineconfig/jobs/{python_custom_installers → installer/custom}/hx.py +84 -18
- machineconfig/jobs/installer/custom_dev/alacritty.py +86 -0
- machineconfig/jobs/installer/custom_dev/brave.py +82 -0
- machineconfig/jobs/installer/custom_dev/bypass_paywall.py +59 -0
- machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
- machineconfig/jobs/installer/custom_dev/code.py +63 -0
- machineconfig/jobs/{python_custom_installers/dev → installer/custom_dev}/cursor.py +7 -7
- machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
- machineconfig/jobs/installer/custom_dev/espanso.py +117 -0
- machineconfig/jobs/installer/custom_dev/goes.py +68 -0
- machineconfig/jobs/installer/custom_dev/lvim.py +89 -0
- machineconfig/jobs/installer/custom_dev/nerdfont.py +111 -0
- machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +149 -0
- machineconfig/jobs/installer/custom_dev/redis.py +88 -0
- machineconfig/jobs/installer/custom_dev/sysabc.py +145 -0
- machineconfig/jobs/installer/custom_dev/wezterm.py +92 -0
- machineconfig/jobs/{python_custom_installers/dev → installer/custom_dev}/winget.py +2 -3
- machineconfig/jobs/installer/installer_data.json +3440 -0
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/brave.sh +4 -14
- machineconfig/jobs/{python_custom_installers/scripts/linux/warp-cli.sh → installer/linux_scripts/cloudflare_warp_cli.sh} +5 -17
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/docker.sh +6 -18
- machineconfig/jobs/installer/linux_scripts/docker_start.sh +37 -0
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/edge.sh +3 -11
- machineconfig/jobs/{linux/msc → installer/linux_scripts}/lid.sh +2 -8
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/nerdfont.sh +5 -17
- machineconfig/jobs/{linux/msc → installer/linux_scripts}/network.sh +2 -8
- machineconfig/jobs/installer/linux_scripts/ngrok.sh +6 -0
- machineconfig/jobs/installer/linux_scripts/q.sh +9 -0
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/redis.sh +6 -17
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/vscode.sh +5 -17
- machineconfig/jobs/{python_custom_installers/scripts/linux → installer/linux_scripts}/wezterm.sh +4 -12
- machineconfig/jobs/installer/package_groups.py +255 -0
- machineconfig/logger.py +0 -1
- machineconfig/profile/backup.toml +49 -0
- machineconfig/profile/bash_shell_profiles.md +11 -0
- machineconfig/profile/create_helper.py +74 -0
- machineconfig/profile/create_links.py +288 -0
- machineconfig/profile/create_links_export.py +100 -0
- machineconfig/profile/create_shell_profile.py +136 -0
- machineconfig/profile/mapper.toml +258 -0
- machineconfig/scripts/__init__.py +0 -4
- machineconfig/scripts/linux/{share_cloud.sh → other/share_cloud.sh} +14 -25
- machineconfig/scripts/linux/wrap_mcfg +47 -0
- machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
- machineconfig/scripts/python/agents.py +198 -0
- machineconfig/scripts/python/ai/command_runner/command_runner.sh +9 -0
- machineconfig/scripts/python/ai/command_runner/prompt.txt +9 -0
- machineconfig/scripts/python/ai/generate_files.py +307 -42
- machineconfig/scripts/python/ai/{mcinit.py → initai.py} +3 -38
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +114 -0
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +88 -22
- machineconfig/scripts/python/ai/solutions/_shared.py +9 -1
- machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +4 -1
- machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
- machineconfig/scripts/python/ai/solutions/gemini/settings.json +1 -1
- machineconfig/scripts/python/ai/solutions/generic.py +27 -4
- machineconfig/scripts/python/ai/vscode_tasks.py +37 -0
- machineconfig/scripts/python/cloud.py +29 -0
- machineconfig/scripts/python/croshell.py +129 -198
- machineconfig/scripts/python/define.py +31 -0
- machineconfig/scripts/python/devops.py +45 -131
- machineconfig/scripts/python/devops_navigator.py +6 -0
- machineconfig/scripts/python/env_manager/__init__.py +1 -0
- machineconfig/scripts/python/env_manager/path_manager_backend.py +47 -0
- machineconfig/scripts/python/env_manager/path_manager_tui.py +228 -0
- machineconfig/scripts/python/fire_jobs.py +166 -235
- machineconfig/scripts/python/ftpx.py +164 -100
- machineconfig/scripts/python/helpers/ast_search.py +74 -0
- machineconfig/scripts/python/helpers/repo_rag.py +325 -0
- machineconfig/scripts/python/helpers/symantic_search.py +25 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +37 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +42 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +110 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +34 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_load_balancer.py +22 -0
- machineconfig/scripts/python/helpers_agents/templates/prompt.txt +6 -0
- machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
- machineconfig/scripts/python/helpers_agents/templates/template.sh +24 -0
- machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +52 -39
- machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +13 -18
- machineconfig/scripts/python/helpers_cloud/cloud_sync.py +81 -0
- machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +3 -3
- machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
- machineconfig/scripts/python/{scheduler.py → helpers_croshell/scheduler.py} +0 -1
- machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +32 -20
- machineconfig/scripts/python/helpers_devops/cli_config.py +95 -0
- machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +89 -0
- machineconfig/scripts/python/helpers_devops/cli_data.py +25 -0
- machineconfig/scripts/python/helpers_devops/cli_nw.py +134 -0
- machineconfig/scripts/python/helpers_devops/cli_repos.py +182 -0
- machineconfig/scripts/python/helpers_devops/cli_self.py +134 -0
- machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
- machineconfig/scripts/python/helpers_devops/cli_share_server.py +141 -0
- machineconfig/scripts/python/helpers_devops/cli_terminal.py +156 -0
- machineconfig/scripts/python/helpers_devops/cli_utils.py +96 -0
- machineconfig/scripts/python/{devops_backup_retrieve.py → helpers_devops/devops_backup_retrieve.py} +7 -10
- machineconfig/scripts/python/helpers_devops/devops_status.py +511 -0
- machineconfig/scripts/python/helpers_devops/devops_update_repos.py +269 -0
- machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +81 -0
- machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +3 -0
- machineconfig/scripts/python/{choose_wezterm_theme.py → helpers_devops/themes/choose_wezterm_theme.py} +2 -2
- machineconfig/scripts/python/{cloud_manager.py → helpers_fire_command/cloud_manager.py} +0 -2
- machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +57 -89
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +145 -0
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +110 -0
- machineconfig/scripts/python/helpers_msearch/__init__.py +5 -0
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfag +1 -1
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +1 -1
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfrga +1 -1
- machineconfig/scripts/python/helpers_navigator/__init__.py +20 -0
- machineconfig/scripts/python/helpers_navigator/command_builder.py +111 -0
- machineconfig/scripts/python/helpers_navigator/command_detail.py +44 -0
- machineconfig/scripts/python/helpers_navigator/command_tree.py +620 -0
- machineconfig/scripts/python/helpers_navigator/data_models.py +28 -0
- machineconfig/scripts/python/helpers_navigator/main_app.py +272 -0
- machineconfig/scripts/python/helpers_navigator/search_bar.py +15 -0
- machineconfig/scripts/python/helpers_repos/action.py +209 -0
- machineconfig/scripts/python/helpers_repos/action_helper.py +150 -0
- machineconfig/scripts/python/{repos_helper_clone.py → helpers_repos/clone.py} +6 -7
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
- machineconfig/scripts/python/helpers_repos/count_lines.py +348 -0
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +17 -0
- machineconfig/scripts/python/helpers_repos/entrypoint.py +77 -0
- machineconfig/scripts/python/helpers_repos/grource.py +340 -0
- machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +7 -4
- machineconfig/scripts/python/helpers_repos/sync.py +66 -0
- machineconfig/scripts/python/{repos_helper_update.py → helpers_repos/update.py} +3 -3
- machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +58 -0
- machineconfig/scripts/python/helpers_utils/download.py +152 -0
- machineconfig/scripts/python/helpers_utils/path.py +108 -0
- machineconfig/scripts/python/interactive.py +187 -0
- machineconfig/scripts/python/mcfg_entry.py +63 -0
- machineconfig/scripts/python/msearch.py +40 -0
- machineconfig/scripts/python/{devops_add_identity.py → nw/devops_add_identity.py} +1 -3
- machineconfig/scripts/python/{devops_add_ssh_key.py → nw/devops_add_ssh_key.py} +74 -44
- machineconfig/scripts/{linux → python/nw}/mount_nfs +1 -1
- machineconfig/scripts/python/{mount_nfs.py → nw/mount_nfs.py} +19 -16
- machineconfig/scripts/{linux → python/nw}/mount_nw_drive +1 -2
- machineconfig/scripts/python/{mount_ssh.py → nw/mount_ssh.py} +7 -8
- machineconfig/scripts/python/{onetimeshare.py → nw/onetimeshare.py} +0 -1
- machineconfig/scripts/python/nw/ssh_debug_linux.py +391 -0
- machineconfig/scripts/python/nw/ssh_debug_windows.py +338 -0
- machineconfig/scripts/python/{wifi_conn.py → nw/wifi_conn.py} +1 -51
- machineconfig/scripts/python/nw/wsl_windows_transfer.py +67 -0
- machineconfig/scripts/python/sessions.py +167 -0
- machineconfig/scripts/python/terminal.py +127 -0
- machineconfig/scripts/python/utils.py +66 -0
- machineconfig/scripts/windows/mounts/Restore-ThunderbirdProfile.ps1 +92 -0
- machineconfig/scripts/windows/{mount_nfs.ps1 → mounts/mount_nfs.ps1} +1 -3
- machineconfig/scripts/windows/{mount_ssh.ps1 → mounts/mount_ssh.ps1} +1 -1
- machineconfig/scripts/windows/{share_smb.ps1 → mounts/share_smb.ps1} +0 -6
- machineconfig/scripts/windows/wrap_mcfg.ps1 +60 -0
- machineconfig/settings/broot/br.sh +0 -4
- machineconfig/settings/broot/conf.toml +1 -1
- machineconfig/settings/helix/config.toml +16 -0
- machineconfig/settings/helix/languages.toml +13 -4
- machineconfig/settings/helix/yazi-picker.sh +12 -0
- machineconfig/settings/lf/linux/exe/lfcd.sh +1 -0
- machineconfig/settings/lf/linux/exe/previewer.sh +9 -3
- machineconfig/settings/lf/linux/lfrc +10 -12
- machineconfig/settings/lf/windows/fzf_edit.ps1 +2 -2
- machineconfig/settings/lf/windows/lfcd.ps1 +1 -1
- machineconfig/settings/lf/windows/lfrc +18 -38
- machineconfig/settings/lf/windows/mkfile.ps1 +1 -1
- machineconfig/settings/linters/.ruff.toml +1 -1
- machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -6
- machineconfig/settings/marimo/marimo.toml +80 -0
- machineconfig/settings/marimo/snippets/globalize.py +34 -0
- machineconfig/settings/pistol/pistol.conf +1 -1
- machineconfig/settings/shells/bash/init.sh +55 -31
- machineconfig/settings/shells/nushell/config.nu +1 -34
- machineconfig/settings/shells/nushell/init.nu +127 -0
- machineconfig/settings/shells/pwsh/init.ps1 +61 -43
- machineconfig/settings/shells/starship/starship.toml +16 -0
- machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
- machineconfig/settings/shells/wt/settings.json +32 -17
- machineconfig/settings/shells/zsh/init.sh +89 -0
- machineconfig/settings/svim/linux/init.toml +0 -4
- machineconfig/settings/svim/windows/init.toml +0 -3
- machineconfig/settings/yazi/init.lua +57 -0
- machineconfig/settings/yazi/keymap_linux.toml +79 -0
- machineconfig/settings/yazi/keymap_windows.toml +78 -0
- machineconfig/settings/yazi/shell/yazi_cd.ps1 +33 -0
- machineconfig/settings/yazi/shell/yazi_cd.sh +8 -0
- machineconfig/settings/yazi/yazi.toml +14 -1
- machineconfig/setup_linux/__init__.py +10 -0
- machineconfig/setup_linux/apps_desktop.sh +89 -0
- machineconfig/setup_linux/apps_gui.sh +64 -0
- machineconfig/setup_linux/{nix → others}/cli_installation.sh +9 -29
- machineconfig/setup_linux/ssh/openssh_all.sh +25 -0
- machineconfig/setup_linux/ssh/openssh_wsl.sh +38 -0
- machineconfig/setup_linux/uv.sh +15 -0
- machineconfig/setup_linux/web_shortcuts/interactive.sh +28 -203
- machineconfig/setup_mac/__init__.py +16 -0
- machineconfig/setup_mac/apps_gui.sh +248 -0
- machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
- machineconfig/setup_mac/uv.sh +36 -0
- machineconfig/setup_windows/__init__.py +8 -0
- machineconfig/setup_windows/others/power_options.ps1 +7 -0
- machineconfig/setup_windows/ssh/add-sshkey.ps1 +29 -0
- machineconfig/setup_windows/ssh/add_identity.ps1 +11 -0
- machineconfig/setup_windows/ssh/openssh-server.ps1 +37 -0
- machineconfig/setup_windows/uv.ps1 +17 -0
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +28 -189
- machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +17 -0
- machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +37 -23
- machineconfig/utils/accessories.py +52 -12
- machineconfig/utils/cloud/onedrive/README.md +139 -0
- machineconfig/utils/code.py +140 -93
- machineconfig/utils/files/art/fat_croco.txt +10 -0
- machineconfig/utils/files/art/halfwit_croco.txt +9 -0
- machineconfig/utils/files/art/happy_croco.txt +22 -0
- machineconfig/utils/files/art/water_croco.txt +11 -0
- machineconfig/utils/files/ascii_art.py +118 -0
- machineconfig/utils/files/dbms.py +257 -0
- machineconfig/utils/files/headers.py +68 -0
- machineconfig/utils/files/ouch/decompress.py +45 -0
- machineconfig/utils/files/read.py +95 -0
- machineconfig/utils/installer_utils/github_release_bulk.py +188 -0
- machineconfig/utils/installer_utils/install_from_url.py +180 -0
- machineconfig/utils/installer_utils/installer_class.py +239 -316
- machineconfig/utils/installer_utils/installer_cli.py +186 -0
- machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +90 -5
- machineconfig/utils/installer_utils/installer_runner.py +191 -0
- machineconfig/utils/io.py +77 -24
- machineconfig/utils/links.py +309 -100
- machineconfig/utils/meta.py +255 -0
- machineconfig/utils/notifications.py +1 -1
- machineconfig/utils/options.py +19 -47
- machineconfig/utils/path_extended.py +111 -121
- machineconfig/utils/path_helper.py +75 -22
- machineconfig/utils/procs.py +50 -74
- machineconfig/utils/scheduler.py +94 -97
- machineconfig/utils/scheduling.py +0 -3
- machineconfig/utils/schemas/fire_agents/fire_agents_input.py +5 -17
- machineconfig/utils/schemas/installer/installer_types.py +28 -6
- machineconfig/utils/schemas/layouts/layout_types.py +34 -1
- machineconfig/utils/source_of_truth.py +3 -6
- machineconfig/utils/ssh.py +742 -254
- machineconfig/utils/ssh_utils/utils.py +0 -0
- machineconfig/utils/terminal.py +3 -140
- machineconfig/utils/tst.py +20 -0
- machineconfig/utils/upgrade_packages.py +109 -28
- machineconfig/utils/ve.py +13 -5
- machineconfig-7.69.dist-info/METADATA +124 -0
- machineconfig-7.69.dist-info/RECORD +454 -0
- machineconfig-7.69.dist-info/entry_points.txt +15 -0
- machineconfig/cluster/templates/cli_click.py +0 -102
- machineconfig/cluster/templates/cli_gooey.py +0 -115
- machineconfig/cluster/templates/utils.py +0 -51
- machineconfig/jobs/linux/msc/cli_agents.sh +0 -32
- machineconfig/jobs/python/create_bootable_media.py +0 -16
- machineconfig/jobs/python/python_cargo_build_share.py +0 -59
- machineconfig/jobs/python/python_ve_symlink.py +0 -29
- machineconfig/jobs/python/tasks.py +0 -3
- machineconfig/jobs/python/vscode/api.py +0 -48
- machineconfig/jobs/python/vscode/link_ve.py +0 -63
- machineconfig/jobs/python/vscode/select_interpreter.py +0 -87
- machineconfig/jobs/python/vscode/sync_code.py +0 -58
- machineconfig/jobs/python_custom_installers/archive/ngrok.py +0 -63
- machineconfig/jobs/python_custom_installers/dev/aider.py +0 -37
- machineconfig/jobs/python_custom_installers/dev/alacritty.py +0 -65
- machineconfig/jobs/python_custom_installers/dev/brave.py +0 -71
- machineconfig/jobs/python_custom_installers/dev/bypass_paywall.py +0 -50
- machineconfig/jobs/python_custom_installers/dev/code.py +0 -51
- machineconfig/jobs/python_custom_installers/dev/docker_desktop.py +0 -78
- machineconfig/jobs/python_custom_installers/dev/espanso.py +0 -90
- machineconfig/jobs/python_custom_installers/dev/goes.py +0 -55
- machineconfig/jobs/python_custom_installers/dev/lvim.py +0 -77
- machineconfig/jobs/python_custom_installers/dev/nerdfont.py +0 -68
- machineconfig/jobs/python_custom_installers/dev/redis.py +0 -65
- machineconfig/jobs/python_custom_installers/dev/reverse_proxy.md +0 -31
- machineconfig/jobs/python_custom_installers/dev/wezterm.py +0 -70
- machineconfig/jobs/python_custom_installers/docker.py +0 -74
- machineconfig/jobs/python_custom_installers/gh.py +0 -97
- machineconfig/jobs/python_custom_installers/scripts/linux/docker_start.sh +0 -45
- machineconfig/jobs/python_custom_installers/scripts/linux/pgsql.sh +0 -49
- machineconfig/jobs/python_custom_installers/scripts/linux/timescaledb.sh +0 -85
- machineconfig/jobs/python_custom_installers/warp-cli.py +0 -71
- machineconfig/jobs/python_generic_installers/config.json +0 -603
- machineconfig/jobs/python_generic_installers/config.json.bak +0 -414
- machineconfig/jobs/python_generic_installers/dev/config.archive.json +0 -18
- machineconfig/jobs/python_generic_installers/dev/config.json +0 -825
- machineconfig/jobs/python_generic_installers/dev/config.json.bak +0 -565
- machineconfig/jobs/python_linux_installers/archive/config.json +0 -18
- machineconfig/jobs/python_linux_installers/archive/config.json.bak +0 -10
- machineconfig/jobs/python_linux_installers/config.json +0 -145
- machineconfig/jobs/python_linux_installers/config.json.bak +0 -110
- machineconfig/jobs/python_linux_installers/dev/config.json +0 -276
- machineconfig/jobs/python_linux_installers/dev/config.json.bak +0 -206
- machineconfig/jobs/python_windows_installers/archive/file.json +0 -11
- machineconfig/jobs/python_windows_installers/config.json +0 -82
- machineconfig/jobs/python_windows_installers/config.json.bak +0 -56
- machineconfig/jobs/python_windows_installers/dev/config.json +0 -4
- machineconfig/jobs/python_windows_installers/dev/config.json.bak +0 -3
- machineconfig/jobs/windows/archive/archive_pygraphviz.ps1 +0 -14
- machineconfig/jobs/windows/start_terminal.ps1 +0 -6
- machineconfig/jobs/windows/startup_file.cmd +0 -2
- machineconfig/profile/create.py +0 -169
- machineconfig/profile/shell.py +0 -176
- machineconfig/scripts/cloud/init.sh +0 -119
- machineconfig/scripts/linux/choose_wezterm_theme +0 -3
- machineconfig/scripts/linux/cloud_copy +0 -2
- machineconfig/scripts/linux/cloud_mount +0 -2
- machineconfig/scripts/linux/cloud_repo_sync +0 -2
- machineconfig/scripts/linux/cloud_sync +0 -2
- machineconfig/scripts/linux/croshell +0 -3
- machineconfig/scripts/linux/devops +0 -2
- machineconfig/scripts/linux/fire +0 -2
- machineconfig/scripts/linux/fire_agents +0 -2
- machineconfig/scripts/linux/ftpx +0 -2
- machineconfig/scripts/linux/fzf2g +0 -21
- machineconfig/scripts/linux/fzffg +0 -25
- machineconfig/scripts/linux/gh_models +0 -2
- machineconfig/scripts/linux/kill_process +0 -2
- machineconfig/scripts/linux/mcinit +0 -2
- machineconfig/scripts/linux/programs +0 -21
- machineconfig/scripts/linux/repos +0 -2
- machineconfig/scripts/linux/scheduler +0 -2
- machineconfig/scripts/linux/share_smb +0 -1
- machineconfig/scripts/linux/start_slidev +0 -2
- machineconfig/scripts/linux/start_terminals +0 -3
- machineconfig/scripts/linux/warp-cli.sh +0 -122
- machineconfig/scripts/linux/wifi_conn +0 -2
- machineconfig/scripts/linux/z_ls +0 -104
- machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
- machineconfig/scripts/python/archive/im2text.py +0 -34
- machineconfig/scripts/python/archive/tmate_conn.py +0 -41
- machineconfig/scripts/python/archive/tmate_start.py +0 -44
- machineconfig/scripts/python/cloud_repo_sync.py +0 -192
- machineconfig/scripts/python/cloud_sync.py +0 -85
- machineconfig/scripts/python/devops_devapps_install.py +0 -202
- machineconfig/scripts/python/devops_update_repos.py +0 -180
- machineconfig/scripts/python/dotfile.py +0 -52
- machineconfig/scripts/python/fire_agents.py +0 -176
- machineconfig/scripts/python/fire_agents_help_launch.py +0 -143
- machineconfig/scripts/python/fire_agents_load_balancer.py +0 -50
- machineconfig/scripts/python/fire_jobs_args_helper.py +0 -84
- machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -66
- machineconfig/scripts/python/get_zellij_cmd.py +0 -15
- machineconfig/scripts/python/gh_models.py +0 -104
- machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -114
- machineconfig/scripts/python/repos.py +0 -160
- machineconfig/scripts/python/snapshot.py +0 -25
- machineconfig/scripts/python/start_terminals.py +0 -121
- machineconfig/scripts/python/wsl_windows_transfer.py +0 -72
- machineconfig/scripts/windows/choose_wezterm_theme.ps1 +0 -1
- machineconfig/scripts/windows/cloud_copy.ps1 +0 -1
- machineconfig/scripts/windows/cloud_mount.ps1 +0 -1
- machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -1
- machineconfig/scripts/windows/cloud_sync.ps1 +0 -1
- machineconfig/scripts/windows/croshell.ps1 +0 -1
- machineconfig/scripts/windows/devops.ps1 +0 -1
- machineconfig/scripts/windows/dotfile.ps1 +0 -1
- machineconfig/scripts/windows/fire.ps1 +0 -1
- machineconfig/scripts/windows/ftpx.ps1 +0 -1
- machineconfig/scripts/windows/gpt.ps1 +0 -1
- machineconfig/scripts/windows/grep.ps1 +0 -2
- machineconfig/scripts/windows/kill_process.ps1 +0 -1
- machineconfig/scripts/windows/mcinit.ps1 +0 -1
- machineconfig/scripts/windows/nano.ps1 +0 -3
- machineconfig/scripts/windows/pomodoro.ps1 +0 -1
- machineconfig/scripts/windows/reload_path.ps1 +0 -3
- machineconfig/scripts/windows/repos.ps1 +0 -1
- machineconfig/scripts/windows/scheduler.ps1 +0 -1
- machineconfig/scripts/windows/snapshot.ps1 +0 -1
- machineconfig/scripts/windows/start_slidev.ps1 +0 -1
- machineconfig/scripts/windows/start_terminals.ps1 +0 -1
- machineconfig/scripts/windows/wifi_conn.ps1 +0 -2
- machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -46
- machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -76
- machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
- machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
- machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -93
- machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -11
- machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -52
- machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -18
- machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -36
- machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -16
- machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -11
- machineconfig/setup_windows/wt_and_pwsh/install_nerd_fonts.py +0 -100
- machineconfig/utils/ai/generate_file_checklist.py +0 -68
- machineconfig/utils/installer.py +0 -255
- machineconfig-3.7.dist-info/METADATA +0 -165
- machineconfig-3.7.dist-info/RECORD +0 -432
- machineconfig-3.7.dist-info/entry_points.txt +0 -18
- machineconfig/cluster/{templates → remote}/run_cloud.py +0 -0
- machineconfig/cluster/{templates → remote}/run_cluster.py +0 -0
- machineconfig/cluster/{templates → remote}/run_remote.py +0 -0
- machineconfig/jobs/{python → installer}/__init__.py +0 -0
- machineconfig/jobs/{python_custom_installers → installer/custom_dev}/__init__.py +0 -0
- machineconfig/{setup_windows/wt_and_pwsh → jobs/installer/powershell_scripts}/install_fonts.ps1 +0 -0
- machineconfig/scripts/linux/{share_nfs → other/share_nfs} +0 -0
- machineconfig/scripts/linux/{start_docker → other/start_docker} +0 -0
- machineconfig/scripts/linux/{switch_ip → other/switch_ip} +0 -0
- machineconfig/{jobs/python_generic_installers → scripts/python/helpers_agents}/__init__.py +0 -0
- machineconfig/{jobs/python_linux_installers → scripts/python/helpers_agents/agentic_frameworks}/__init__.py +0 -0
- machineconfig/scripts/python/{fire_agents_help_search.py → helpers_agents/fire_agents_help_search.py} +0 -0
- machineconfig/{jobs/python_linux_installers/dev → scripts/python/helpers_cloud}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers → helpers_cloud}/cloud_helpers.py +1 -1
- /machineconfig/scripts/python/{helpers → helpers_cloud}/helpers5.py +0 -0
- /machineconfig/{jobs/python_windows_installers → scripts/python/helpers_croshell}/__init__.py +0 -0
- /machineconfig/scripts/python/{pomodoro.py → helpers_croshell/pomodoro.py} +0 -0
- /machineconfig/scripts/python/{viewer.py → helpers_croshell/viewer.py} +0 -0
- /machineconfig/scripts/python/{viewer_template.py → helpers_croshell/viewer_template.py} +0 -0
- /machineconfig/{jobs/python_windows_installers/archive → scripts/python/helpers_devops}/__init__.py +0 -0
- /machineconfig/{jobs/python_windows_installers/dev → scripts/python/helpers_devops/themes}/__init__.py +0 -0
- /machineconfig/{jobs/windows/msc/cli_agents.bat → scripts/python/helpers_devops/themes/choose_starship_theme.ps1} +0 -0
- /machineconfig/scripts/python/{helpers → helpers_fire_command}/__init__.py +0 -0
- /machineconfig/scripts/python/{fire_jobs_streamlit_helper.py → helpers_fire_command/fire_jobs_streamlit_helper.py} +0 -0
- /machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/skrg +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfb.ps1 +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfg.ps1 +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfrga.bat +0 -0
- /machineconfig/{jobs/windows/msc/cli_agents.ps1 → scripts/python/helpers_sessions/__init__.py} +0 -0
- /machineconfig/scripts/{windows/share_nfs.ps1 → python/nw/__init__.py} +0 -0
- /machineconfig/scripts/{linux → python/nw}/mount_drive +0 -0
- /machineconfig/scripts/python/{mount_nw_drive.py → nw/mount_nw_drive.py} +0 -0
- /machineconfig/scripts/{linux → python/nw}/mount_smb +0 -0
- /machineconfig/scripts/windows/{mount_nw.ps1 → mounts/mount_nw.ps1} +0 -0
- /machineconfig/scripts/windows/{mount_smb.ps1 → mounts/mount_smb.ps1} +0 -0
- /machineconfig/scripts/windows/{share_cloud.cmd → mounts/share_cloud.cmd} +0 -0
- /machineconfig/scripts/windows/{unlock_bitlocker.ps1 → mounts/unlock_bitlocker.ps1} +0 -0
- /machineconfig/setup_linux/{web_shortcuts → others}/android.sh +0 -0
- /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_add_key.ps1 +0 -0
- /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_copy-ssh-id.ps1 +0 -0
- /machineconfig/{settings/yazi/keymap.toml → utils/files/ouch/__init__.py} +0 -0
- {machineconfig-3.7.dist-info → machineconfig-7.69.dist-info}/WHEEL +0 -0
- {machineconfig-3.7.dist-info → machineconfig-7.69.dist-info}/top_level.txt +0 -0
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
# """Gooey
|
|
2
|
-
# """
|
|
3
|
-
|
|
4
|
-
# from argparse import ArgumentParser
|
|
5
|
-
# # from gooey import Gooey #, GooeyParser
|
|
6
|
-
# # from machineconfig.cluster.distribute import Cluster, WorkloadParams
|
|
7
|
-
# from machineconfig.cluster.remote_machine import RemoteMachineConfig
|
|
8
|
-
# # from machineconfig.cluster.utils import expensive_function
|
|
9
|
-
# from machineconfig.utils.utils import DEFAULTS_PATH
|
|
10
|
-
# from machineconfig.utils.utils2 import read_ini
|
|
11
|
-
# # from typing import Any, Optional
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# @Gooey(program_name="Cluster Launcher", program_description='Cofigure remote cluster and launch jobs.') # type: ignore
|
|
15
|
-
# def main() -> RemoteMachineConfig:
|
|
16
|
-
# # parser = GooeyParser(description='Example of Gooey\'s basic functionality')
|
|
17
|
-
# parser = ArgumentParser(description='Cluster Launcher')
|
|
18
|
-
# from machineconfig.scripts.python.cloud_mount import get_rclone_config
|
|
19
|
-
# cloud_names = get_rclone_config().sections()
|
|
20
|
-
# # job_id=, base_dir="",
|
|
21
|
-
# parser.add_argument('Description', help='The file you want to process', default="Description of running func on remotes")
|
|
22
|
-
|
|
23
|
-
# # # execution behaviour
|
|
24
|
-
# # wrap_in_try_except=True
|
|
25
|
-
# parser.add_argument('-w', '--wrap_in_try_except', help='Wrap in try except', action='store_true', default=False)
|
|
26
|
-
# # pudb=False
|
|
27
|
-
# parser.add_argument('-p', '--pudb', help='Use pudb', action='store_true', default=False)
|
|
28
|
-
# # pdb=False
|
|
29
|
-
# parser.add_argument('-d', '--pdb', help='Use pdb', action='store_true', default=False)
|
|
30
|
-
# # interactive=True
|
|
31
|
-
# parser.add_argument('-i', '--interactive', help='Interactive', action='store_true', default=False)
|
|
32
|
-
# # ipython=True
|
|
33
|
-
# parser.add_argument('-y', '--ipython', help='Use ipython', action='store_true', default=False)
|
|
34
|
-
|
|
35
|
-
# # # resources
|
|
36
|
-
# # lock_resources=True
|
|
37
|
-
# parser.add_argument('-l', '--lock_resources', help='Lock resources', action='store_true', default=False)
|
|
38
|
-
# # max_simulataneous_jobs=2
|
|
39
|
-
# parser.add_argument('-m', '--max_simulataneous_jobs', help='Max simultaneous jobs', type=int, default=2)
|
|
40
|
-
# # parallelize=False
|
|
41
|
-
# # parser.add_argument('-a', '--parallelize', help='Parallelize', action='store_true', default=False)
|
|
42
|
-
|
|
43
|
-
# # # data
|
|
44
|
-
# # copy_repo = True
|
|
45
|
-
# # parser.add_argument('-c', '--copy_repo', help='Copy repo', action='store_true', default=True)
|
|
46
|
-
# # update_repo=False
|
|
47
|
-
# parser.add_argument('-u', '--update_repo', help='Update repo', action='store_true', default=False)
|
|
48
|
-
# # install_repo=False
|
|
49
|
-
# # parser.add_argument('-n', '--install_repo', help='Install repo', action='store_true', default=False)
|
|
50
|
-
# # update_essential_repos=True
|
|
51
|
-
# parser.add_argument('-e', '--update_essential_repos', help='Update essential repos', action='store_true', default=True)
|
|
52
|
-
# # transfer_method="sftp"
|
|
53
|
-
# # parser.add_argument('-t', '--transfer_method', help='Transfer method', choices=['sftp', 'cloud'], default='sftp')
|
|
54
|
-
# # open_console=True
|
|
55
|
-
# # parser.add_argument('-o', '--open_console', help='Open console', action='store_true', default=True)
|
|
56
|
-
|
|
57
|
-
# # # remote machine behaviour
|
|
58
|
-
# parser.add_argument('cloud_name', help='Cloud Rclone Config Name', default="oduq1", choices=cloud_names)
|
|
59
|
-
# parser.add_argument('-v', '--notify_upon_completion', help='Notify upon completion', action='store_true', default=True)
|
|
60
|
-
|
|
61
|
-
# try:
|
|
62
|
-
# section = read_ini(DEFAULTS_PATH)['general']
|
|
63
|
-
# to_email = section['to_email']
|
|
64
|
-
# email_config_name = section['email_config_name']
|
|
65
|
-
# except (FileNotFoundError, KeyError, IndexError):
|
|
66
|
-
# to_email = 'random@email.com'
|
|
67
|
-
# email_config_name = 'enaut'
|
|
68
|
-
|
|
69
|
-
# parser.add_argument('-z', '--to_email', help='To email', default=to_email)
|
|
70
|
-
# parser.add_argument('-f', '--email_config_name', help='Email config name', default=email_config_name)
|
|
71
|
-
# parser.add_argument('-k', '--kill_on_completion', help='Kill terminal tab/pane for this job on completion', action='store_true', default=False)
|
|
72
|
-
# parser.add_argument('split', help='How many jobs to split into', type=int, default=3)
|
|
73
|
-
|
|
74
|
-
# # https://github.com/chriskiehl/GooeyExamples/blob/master/examples/FilterableDropdown.py
|
|
75
|
-
# args = parser.parse_args()
|
|
76
|
-
|
|
77
|
-
# from machineconfig.cluster.self_ssh import SelfSSH
|
|
78
|
-
# config = RemoteMachineConfig(
|
|
79
|
-
# # connection
|
|
80
|
-
# ssh_obj=SelfSSH(),
|
|
81
|
-
# # ssh_params=None,
|
|
82
|
-
# description=args.Description,
|
|
83
|
-
# # job_id=, base_dir="",
|
|
84
|
-
# # data
|
|
85
|
-
# copy_repo=False, # args.copy_repo,
|
|
86
|
-
# update_repo=args.update_repo,
|
|
87
|
-
# install_repo=True, # args.install_repo,
|
|
88
|
-
# update_essential_repos=args.update_essential_repos,
|
|
89
|
-
# data=[],
|
|
90
|
-
# transfer_method="cloud", # "args.transfer_method,
|
|
91
|
-
# cloud_name=args.cloud_name,
|
|
92
|
-
# # remote machine behaviour
|
|
93
|
-
# # open_console=args.open_console,
|
|
94
|
-
# notify_upon_completion=args.notify_upon_completion,
|
|
95
|
-
# to_email=args.to_email,
|
|
96
|
-
# email_config_name=args.email_config_name,
|
|
97
|
-
# kill_on_completion=args.kill_on_completion,
|
|
98
|
-
# workload_params=None,
|
|
99
|
-
# launch_method="cloud_manager",
|
|
100
|
-
# # execution behaviour
|
|
101
|
-
# ipython=args.ipython,
|
|
102
|
-
# interactive=args.interactive,
|
|
103
|
-
# pdb=args.pdb,
|
|
104
|
-
# pudb=args.pudb,
|
|
105
|
-
# wrap_in_try_except=args.wrap_in_try_except,
|
|
106
|
-
# # resources
|
|
107
|
-
# lock_resources=args.lock_resources,
|
|
108
|
-
# max_simulataneous_jobs=args.max_simulataneous_jobs,
|
|
109
|
-
# parallelize=False, # args.parallelize,
|
|
110
|
-
# )
|
|
111
|
-
# return config
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
# if __name__ == '__main__':
|
|
115
|
-
# main()
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
from typing import Optional
|
|
2
|
-
from machineconfig.utils.path_extended import PathExtended, PLike
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
def to_cloud(
|
|
6
|
-
localpath: PLike,
|
|
7
|
-
cloud: str,
|
|
8
|
-
remotepath: Optional[PLike],
|
|
9
|
-
zip: bool = False,
|
|
10
|
-
encrypt: bool = False,
|
|
11
|
-
key: Optional[bytes] = None,
|
|
12
|
-
pwd: Optional[str] = None,
|
|
13
|
-
rel2home: bool = False,
|
|
14
|
-
strict: bool = True,
|
|
15
|
-
# obfuscate: bool = False,
|
|
16
|
-
share: bool = False,
|
|
17
|
-
verbose: bool = True,
|
|
18
|
-
os_specific: bool = False,
|
|
19
|
-
transfers: int = 10,
|
|
20
|
-
root: Optional[str] = "myhome",
|
|
21
|
-
) -> "PathExtended":
|
|
22
|
-
to_del = []
|
|
23
|
-
localpath = PathExtended(localpath).expanduser().absolute() if not PathExtended(localpath).exists() else PathExtended(localpath)
|
|
24
|
-
if zip:
|
|
25
|
-
localpath = localpath.zip(inplace=False)
|
|
26
|
-
to_del.append(localpath)
|
|
27
|
-
if encrypt:
|
|
28
|
-
localpath = localpath.encrypt(key=key, pwd=pwd, inplace=False)
|
|
29
|
-
to_del.append(localpath)
|
|
30
|
-
if remotepath is None:
|
|
31
|
-
rp = localpath.get_remote_path(root=root, os_specific=os_specific, rel2home=rel2home, strict=strict) # if rel2home else (P(root) / localpath if root is not None else localpath)
|
|
32
|
-
else:
|
|
33
|
-
rp = PathExtended(remotepath)
|
|
34
|
-
|
|
35
|
-
from rclone_python import rclone
|
|
36
|
-
|
|
37
|
-
rclone.copy(localpath.as_posix(), f"{cloud}:{rp.as_posix()}", show_progress=True)
|
|
38
|
-
|
|
39
|
-
if share:
|
|
40
|
-
if verbose:
|
|
41
|
-
print("🔗 SHARING FILE")
|
|
42
|
-
tmp = rclone.link(f"{cloud}:{rp.as_posix()}")
|
|
43
|
-
return PathExtended(tmp)
|
|
44
|
-
return localpath
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if __name__ == "__main__":
|
|
48
|
-
from pathlib import Path
|
|
49
|
-
|
|
50
|
-
localpath = Path.home().joinpath("Downloads", "exchangeInfo")
|
|
51
|
-
to_cloud(localpath, "odp", remotepath=None)
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
# Terminal-based CLI agents and tools for productivity and coding.
|
|
5
|
-
npm install -g @google/gemini-cli
|
|
6
|
-
npm install -g @charmland/crush
|
|
7
|
-
npm install -g opencode-ai@latest # or curl -fsSL https://opencode.ai/install | bash
|
|
8
|
-
uv tool install --force --python python3.12 --with pip aider-chat@latest
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
# cursor-cli
|
|
12
|
-
curl https://cursor.com/install -fsS | bash
|
|
13
|
-
cd $HOME/Downloads
|
|
14
|
-
curl --proto '=https' --tlsv1.2 -sSf "https://desktop-release.q.us-east-1.amazonaws.com/latest/q-x86_64-linux.zip" -o "q.zip"
|
|
15
|
-
unzip q.zip
|
|
16
|
-
./q/install.sh # goes to ~/.local/bin.
|
|
17
|
-
rm q.zip
|
|
18
|
-
rm -rfd q
|
|
19
|
-
|
|
20
|
-
# Vscode extensions for AI-assisted coding.
|
|
21
|
-
# Github copilot
|
|
22
|
-
# Roo
|
|
23
|
-
# Cline
|
|
24
|
-
# Kilocode
|
|
25
|
-
# Continue
|
|
26
|
-
# CodeGPT
|
|
27
|
-
# qodo (and cli)
|
|
28
|
-
|
|
29
|
-
# Editors based on AI
|
|
30
|
-
# Kiro
|
|
31
|
-
# Cursor
|
|
32
|
-
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
# try ventory or netboot.xyz
|
|
2
|
-
|
|
3
|
-
# # one can either install rufus: https://rufus.ie/en/
|
|
4
|
-
# # however, to create bootable media with multiple OSs to choose from:
|
|
5
|
-
|
|
6
|
-
# PathExtended(r'https://github.com/ventoy/Ventoy/archive/refs/tags/v1.0.78.zip').download().unzip().search[0]()
|
|
7
|
-
# download_folder = PathExtended.home().joinpath("Downloads/os")
|
|
8
|
-
# download_folder.mkdir(parents=True, exist_ok=True)
|
|
9
|
-
# PathExtended(r'https://mirrors.layeronline.com/linuxmint/stable/21/linuxmint-21-cinnamon-64bit.iso').download(folder=download_folder)
|
|
10
|
-
# download_folder2 = PathExtended.home().joinpath("Downloads/os")
|
|
11
|
-
# download_folder2.mkdir(parents=True, exist_ok=True)
|
|
12
|
-
# PathExtended(r'https://download.manjaro.org/kde/21.3.7/manjaro-kde-21.3.7-minimal-220816-linux515.iso').download(folder=download_folder2)
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
# if __name__ == '__main__':
|
|
16
|
-
# pass
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"""
|
|
2
|
-
cargo install
|
|
3
|
-
"""
|
|
4
|
-
|
|
5
|
-
# from machineconfig.utils.terminal import Terminal
|
|
6
|
-
# from machineconfig.utils.path_reduced import P as PathExtended
|
|
7
|
-
# import platform
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
# def build_rust_executable(url: str=r"https://github.com/atanunq/viu"):
|
|
11
|
-
# tool_name = url.split('/')[-1]
|
|
12
|
-
|
|
13
|
-
# # move command is not required since tool will go to .cargo/bin which is in PATH by default.
|
|
14
|
-
# # move_command = f"mv {exe} {tb.get_env().WindowsApps.as_posix()}/" if platform.platform() == "Windows" else f"sudo mv {exe} /usr/local/bin/"
|
|
15
|
-
# # {move_command}
|
|
16
|
-
|
|
17
|
-
# script = f"""
|
|
18
|
-
# cd ~
|
|
19
|
-
# git clone --depth 1 {url}
|
|
20
|
-
# cd {tool_name}
|
|
21
|
-
# cargo install --path .
|
|
22
|
-
# """
|
|
23
|
-
# print(f"""
|
|
24
|
-
# {'=' * 150}
|
|
25
|
-
# 🦀 CARGO BUILD | Building Rust project: {tool_name}
|
|
26
|
-
# 📦 Source: {url}
|
|
27
|
-
# {'=' * 150}
|
|
28
|
-
# """)
|
|
29
|
-
# if platform.system() == "Windows":
|
|
30
|
-
# Terminal(stdout=None).run(f". {PathExtended.tmpfile(suffix='.ps1').write_text(script, encoding="utf-8")}", shell="pwsh").print()
|
|
31
|
-
# else:
|
|
32
|
-
# Terminal(stdout=None).run(script, shell="pwsh")
|
|
33
|
-
|
|
34
|
-
# exe = PathExtended.home().joinpath(f".cargo/bin/{tool_name}" + (".exe" if platform.system() == "Windows" else ""))
|
|
35
|
-
|
|
36
|
-
# try:
|
|
37
|
-
# PathExtended.home().joinpath(tool_name).delete(sure=True)
|
|
38
|
-
# except PermissionError:
|
|
39
|
-
# print(f"""
|
|
40
|
-
# {'⚠️' * 20}
|
|
41
|
-
# ⚠️ WARNING | Permission error when cleaning up
|
|
42
|
-
# 📂 Path: {PathExtended.home().joinpath(tool_name)}
|
|
43
|
-
# {'⚠️' * 20}
|
|
44
|
-
# """)
|
|
45
|
-
|
|
46
|
-
# if platform.system() == "Windows":
|
|
47
|
-
# exe = exe.move(folder=PathExtended.get_env().WindowsPaths().WindowsApps)
|
|
48
|
-
# elif platform.system() in ["Linux", "Darwin"]:
|
|
49
|
-
# Terminal().run(f"sudo mv {exe} /usr/local/bin")
|
|
50
|
-
# exe = PathExtended(r"/usr/local/bin").joinpath(exe.name)
|
|
51
|
-
# else:
|
|
52
|
-
# raise NotImplementedError(f"🚫 Platform {platform.system()} not supported.")
|
|
53
|
-
# share_link = exe.to_cloud("gdpo", share=True)
|
|
54
|
-
# return share_link
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
# after cargo install diskonaut
|
|
58
|
-
# then mv ~/.cargo/bin/diskonaut.exe ~/AppData/Local/Microsoft/WindowsApps/
|
|
59
|
-
# then bu_gdrive_sx.ps1 .\diskonaut.exe -sRz # zipping is vital to avoid security layers and keep file metadata.
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"""Symlinks"""
|
|
2
|
-
|
|
3
|
-
from machineconfig.utils.path_extended import PathExtended as PathExtended
|
|
4
|
-
# from machineconfig.utils.utils import choose_from_options
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
def main():
|
|
8
|
-
print(f"""
|
|
9
|
-
{"=" * 150}
|
|
10
|
-
🔗 SYMLINK CREATOR | Create symlinks for virtual environments
|
|
11
|
-
{"=" * 150}
|
|
12
|
-
""")
|
|
13
|
-
target = PathExtended(input("🎯 Symlink to which target? ")).expanduser().absolute()
|
|
14
|
-
source = input(f"📍 Symlink from which source? [default to: CWD/{target.name}] ") or PathExtended.cwd().joinpath(target.name)
|
|
15
|
-
if isinstance(source, str):
|
|
16
|
-
source = PathExtended(source).expanduser().absolute()
|
|
17
|
-
source.symlink_to(target, overwrite=True)
|
|
18
|
-
print(f"""
|
|
19
|
-
{"=" * 150}
|
|
20
|
-
✅ SUCCESS | Symlink created successfully
|
|
21
|
-
📍 Source: {source}
|
|
22
|
-
🎯 Target: {target}
|
|
23
|
-
{"=" * 150}
|
|
24
|
-
""")
|
|
25
|
-
print("🔗 Finished creating symlink.")
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
if __name__ == "__main__":
|
|
29
|
-
pass
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
from pathlib import Path
|
|
2
|
-
from machineconfig.utils.accessories import randstr
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
def open_file_in_new_instance(file_path: str):
|
|
6
|
-
import git
|
|
7
|
-
|
|
8
|
-
repo = git.Repo(search_parent_directories=True)
|
|
9
|
-
repo_path = repo.working_tree_dir
|
|
10
|
-
# Ensure repo_path is not None before passing to Path
|
|
11
|
-
repo_name = Path(repo_path if repo_path is not None else ".").name
|
|
12
|
-
repo_copy_name = f"{repo_name}_{randstr(5)}"
|
|
13
|
-
copy_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", repo_name, repo_copy_name)
|
|
14
|
-
copy_path.parent.mkdir(parents=True, exist_ok=True)
|
|
15
|
-
code = f"""
|
|
16
|
-
ln -s {repo_path} {copy_path}
|
|
17
|
-
cd {copy_path}
|
|
18
|
-
code --profile bitProfile --new-window {file_path}
|
|
19
|
-
"""
|
|
20
|
-
from rich.console import Console
|
|
21
|
-
from rich.syntax import Syntax
|
|
22
|
-
from rich.panel import Panel
|
|
23
|
-
|
|
24
|
-
console = Console()
|
|
25
|
-
console.print(f"\n{'=' * 150}")
|
|
26
|
-
console.print(Panel(Syntax(code, lexer="bash"), title="🔍 VS CODE API | Opening file in new instance", subtitle=f"📂 {file_path}"), style="bold blue")
|
|
27
|
-
console.print(f"{'=' * 150}\n")
|
|
28
|
-
|
|
29
|
-
code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
|
|
30
|
-
code_path.parent.mkdir(parents=True, exist_ok=True)
|
|
31
|
-
code_path.write_text(code, encoding="utf-8")
|
|
32
|
-
code_path.chmod(0o755)
|
|
33
|
-
import subprocess
|
|
34
|
-
|
|
35
|
-
subprocess.run([str(code_path)], shell=True, check=True)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
def main():
|
|
39
|
-
import argparse
|
|
40
|
-
|
|
41
|
-
parser = argparse.ArgumentParser(description="Open file in new vscode instance")
|
|
42
|
-
parser.add_argument("file_path", type=str, help="Path to the file to open")
|
|
43
|
-
args = parser.parse_args()
|
|
44
|
-
open_file_in_new_instance(args.file_path)
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
if __name__ == "__main__":
|
|
48
|
-
main()
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"""VScode task to set interpreter"""
|
|
2
|
-
|
|
3
|
-
# import os
|
|
4
|
-
# import json
|
|
5
|
-
from pathlib import Path
|
|
6
|
-
import argparse
|
|
7
|
-
# import platform
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
def select_interpreter(workspace_root: str):
|
|
11
|
-
print(f"""
|
|
12
|
-
{"=" * 150}
|
|
13
|
-
🔗 VSCODE VE LINKER | Linking virtual environment for VS Code
|
|
14
|
-
📂 Workspace: {workspace_root}
|
|
15
|
-
{"=" * 150}
|
|
16
|
-
""")
|
|
17
|
-
|
|
18
|
-
path = Path(workspace_root).joinpath(".ve_path")
|
|
19
|
-
|
|
20
|
-
if not path.exists():
|
|
21
|
-
print(f"""
|
|
22
|
-
{"⚠️" * 20}
|
|
23
|
-
❌ ERROR | Could not find .ve_path file in workspace
|
|
24
|
-
📂 Expected at: {path}
|
|
25
|
-
{"⚠️" * 20}
|
|
26
|
-
""")
|
|
27
|
-
return
|
|
28
|
-
|
|
29
|
-
with open(path, "r", encoding="utf-8") as f:
|
|
30
|
-
ve_path = Path(f.read().strip()).expanduser()
|
|
31
|
-
|
|
32
|
-
venv_link = Path(workspace_root).joinpath(".venv")
|
|
33
|
-
|
|
34
|
-
if venv_link.exists() and not venv_link.is_symlink():
|
|
35
|
-
print(f"""
|
|
36
|
-
{"⚠️" * 20}
|
|
37
|
-
❌ ERROR | .venv already exists and is not a symlink
|
|
38
|
-
📂 Path: {venv_link}
|
|
39
|
-
{"⚠️" * 20}
|
|
40
|
-
""")
|
|
41
|
-
return
|
|
42
|
-
|
|
43
|
-
venv_link.symlink_to(target=ve_path.expanduser().absolute())
|
|
44
|
-
|
|
45
|
-
print(f"""
|
|
46
|
-
{"=" * 150}
|
|
47
|
-
✅ SUCCESS | Virtual environment linked successfully
|
|
48
|
-
🔗 Link: {venv_link}
|
|
49
|
-
🎯 Target: {ve_path.expanduser().absolute()}
|
|
50
|
-
{"=" * 150}
|
|
51
|
-
""")
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
def main():
|
|
55
|
-
parser = argparse.ArgumentParser(description="Link ve from repo to ve location.")
|
|
56
|
-
parser.add_argument("workspace_path", type=str, help="The workspace path")
|
|
57
|
-
|
|
58
|
-
args = parser.parse_args()
|
|
59
|
-
select_interpreter(args.workspace_path)
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if __name__ == "__main__":
|
|
63
|
-
main()
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"""VScode task to set interpreter"""
|
|
2
|
-
|
|
3
|
-
# import os
|
|
4
|
-
# import json
|
|
5
|
-
from pathlib import Path
|
|
6
|
-
from machineconfig.utils.io import save_json
|
|
7
|
-
from machineconfig.utils.io import read_json
|
|
8
|
-
import argparse
|
|
9
|
-
import platform
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
def select_interpreter(workspace_root: str):
|
|
13
|
-
print(f"""
|
|
14
|
-
{"=" * 150}
|
|
15
|
-
🐍 PYTHON INTERPRETER | Setting up VS Code Python interpreter
|
|
16
|
-
📂 Workspace: {workspace_root}
|
|
17
|
-
{"=" * 150}
|
|
18
|
-
""")
|
|
19
|
-
|
|
20
|
-
path = Path(workspace_root).joinpath(".ve_path")
|
|
21
|
-
if not path.exists():
|
|
22
|
-
print(f"""
|
|
23
|
-
{"⚠️" * 20}
|
|
24
|
-
❌ ERROR | Could not find .ve_path file in workspace
|
|
25
|
-
📂 Expected at: {path}
|
|
26
|
-
{"⚠️" * 20}
|
|
27
|
-
""")
|
|
28
|
-
return
|
|
29
|
-
|
|
30
|
-
with open(path, "r", encoding="utf-8") as f:
|
|
31
|
-
python_path = Path(f.read().strip()).expanduser()
|
|
32
|
-
|
|
33
|
-
print(f"📁 Virtual environment path: {python_path}")
|
|
34
|
-
|
|
35
|
-
if platform.system() == "Windows":
|
|
36
|
-
python_path = python_path.joinpath("Scripts", "python.exe")
|
|
37
|
-
elif platform.system() == "Linux":
|
|
38
|
-
python_path = python_path.joinpath("bin", "python")
|
|
39
|
-
elif platform.system() == "Darwin":
|
|
40
|
-
python_path = python_path.joinpath("bin", "python")
|
|
41
|
-
else:
|
|
42
|
-
error_msg = f"Unsupported platform: {platform.system()}"
|
|
43
|
-
print(f"""
|
|
44
|
-
{"⚠️" * 20}
|
|
45
|
-
❌ ERROR | {error_msg}
|
|
46
|
-
{"⚠️" * 20}
|
|
47
|
-
""")
|
|
48
|
-
raise NotImplementedError(error_msg)
|
|
49
|
-
|
|
50
|
-
print(f"🔍 Python interpreter path: {python_path}")
|
|
51
|
-
|
|
52
|
-
# tmp = os.getenv('APPDATA')
|
|
53
|
-
# assert tmp is not None
|
|
54
|
-
# settings_path = Path(tmp).joinpath('Code', 'User', 'settings.json')
|
|
55
|
-
work_space_settings = Path(workspace_root).joinpath(".vscode", "settings.json")
|
|
56
|
-
work_space_settings.parent.mkdir(parents=True, exist_ok=True)
|
|
57
|
-
if not work_space_settings.exists():
|
|
58
|
-
print(f"📄 Creating new settings file: {work_space_settings}")
|
|
59
|
-
work_space_settings.parent.mkdir(parents=True, exist_ok=True)
|
|
60
|
-
work_space_settings.touch()
|
|
61
|
-
work_space_settings.write_text("{}", encoding="utf-8")
|
|
62
|
-
else:
|
|
63
|
-
print(f"📄 Updating existing settings file: {work_space_settings}")
|
|
64
|
-
|
|
65
|
-
settings = read_json(work_space_settings)
|
|
66
|
-
settings["python.defaultInterpreterPath"] = str(python_path)
|
|
67
|
-
save_json(obj=settings, path=str(work_space_settings), indent=4)
|
|
68
|
-
|
|
69
|
-
print(f"""
|
|
70
|
-
{"=" * 150}
|
|
71
|
-
✅ SUCCESS | Python interpreter configured successfully
|
|
72
|
-
🐍 Interpreter: {python_path}
|
|
73
|
-
📄 Settings: {work_space_settings}
|
|
74
|
-
{"=" * 150}
|
|
75
|
-
""")
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
def main():
|
|
79
|
-
parser = argparse.ArgumentParser(description="Set Python Interpretor in VSCode settings.")
|
|
80
|
-
parser.add_argument("workspace_path", type=str, help="The workspace path")
|
|
81
|
-
|
|
82
|
-
args = parser.parse_args()
|
|
83
|
-
select_interpreter(args.workspace_path)
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if __name__ == "__main__":
|
|
87
|
-
main()
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
from pathlib import Path
|
|
2
|
-
from configparser import SectionProxy
|
|
3
|
-
from machineconfig.utils.io import read_ini
|
|
4
|
-
|
|
5
|
-
config = read_ini(Path.home().joinpath(".ssh", "config"))
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
def sync_remote(machine_name: str):
|
|
9
|
-
print(f"""
|
|
10
|
-
{"=" * 150}
|
|
11
|
-
🔄 SYNC REMOTE | Initiating remote code synchronization
|
|
12
|
-
🖥️ Target machine: {machine_name}
|
|
13
|
-
{"=" * 150}
|
|
14
|
-
""")
|
|
15
|
-
|
|
16
|
-
# Handle config as a ConfigParser object
|
|
17
|
-
machine_config: SectionProxy | None = None
|
|
18
|
-
if machine_name in config:
|
|
19
|
-
machine_config = config[machine_name]
|
|
20
|
-
|
|
21
|
-
if machine_config is None:
|
|
22
|
-
error_msg = f"Machine {machine_name} not found in SSH config."
|
|
23
|
-
print(f"""
|
|
24
|
-
{"⚠️" * 20}
|
|
25
|
-
❌ ERROR | {error_msg}
|
|
26
|
-
{"⚠️" * 20}
|
|
27
|
-
""")
|
|
28
|
-
raise ValueError(error_msg)
|
|
29
|
-
|
|
30
|
-
code = f"""
|
|
31
|
-
ssh -o "HostName={machine_config["HostName"]}" -o "User={machine_config["User"]}" -o "ProxyCommand=cloudflared access ssh --hostname %h" -o "Port={machine_config["Port"]}" -o "RequestTTY=yes" -o "RemoteCommand=devops --which update; bash" {machine_name}
|
|
32
|
-
"""
|
|
33
|
-
from rich.console import Console
|
|
34
|
-
from rich.syntax import Syntax
|
|
35
|
-
from rich.panel import Panel
|
|
36
|
-
|
|
37
|
-
console = Console()
|
|
38
|
-
console.print(f"\n{'=' * 150}")
|
|
39
|
-
console.print(Panel(Syntax(code, lexer="bash"), title=f"🔄 SYNC COMMAND | Connecting to {machine_name}", subtitle=f"🌐 Host: {machine_config['HostName']}"), style="bold blue")
|
|
40
|
-
console.print(f"{'=' * 150}\n")
|
|
41
|
-
|
|
42
|
-
code_path = Path.home().joinpath(".config", "machingconfig", "vscode_api", "code_temp")
|
|
43
|
-
code_path.parent.mkdir(parents=True, exist_ok=True)
|
|
44
|
-
code_path.write_text(code, encoding="utf-8")
|
|
45
|
-
code_path.chmod(0o755)
|
|
46
|
-
|
|
47
|
-
print(f"🚀 Executing sync command for {machine_name}...")
|
|
48
|
-
|
|
49
|
-
import subprocess
|
|
50
|
-
|
|
51
|
-
subprocess.run([str(code_path)], shell=True, check=True)
|
|
52
|
-
|
|
53
|
-
print(f"""
|
|
54
|
-
{"=" * 150}
|
|
55
|
-
✅ SUCCESS | Remote sync completed successfully
|
|
56
|
-
🖥️ Machine: {machine_name}
|
|
57
|
-
{"=" * 150}
|
|
58
|
-
""")
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"""ngrok
|
|
2
|
-
|
|
3
|
-
flagged as virus by 35% of antivirus engines
|
|
4
|
-
"""
|
|
5
|
-
|
|
6
|
-
import platform
|
|
7
|
-
from typing import Optional
|
|
8
|
-
from machineconfig.utils.schemas.installer.installer_types import InstallerData
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
config_dict: InstallerData = {
|
|
12
|
-
"appName": "ngrok",
|
|
13
|
-
"repoURL": "CUSTOM",
|
|
14
|
-
"doc": "ngrok secure introspectable tunnels to localhost",
|
|
15
|
-
"filenameTemplate": {"amd64": {"windows": "ngrok-stable-windows-amd64.zip", "linux": "ngrok-stable-linux-amd64.zip", "macos": ""}, "arm64": {"windows": "", "linux": "", "macos": ""}},
|
|
16
|
-
"stripVersion": False,
|
|
17
|
-
"exeName": "ngrok",
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
def main(version: Optional[str]):
|
|
22
|
-
print(f"""
|
|
23
|
-
{"=" * 150}
|
|
24
|
-
🔄 NGROK INSTALLER | Setting up secure tunnels to localhost
|
|
25
|
-
💻 Platform: {platform.system()}
|
|
26
|
-
{"=" * 150}
|
|
27
|
-
""")
|
|
28
|
-
|
|
29
|
-
_ = version
|
|
30
|
-
if platform.system() == "Windows":
|
|
31
|
-
print("🪟 Installing ngrok using winget on Windows...")
|
|
32
|
-
program = "winget install ngrok.ngrok --source winget"
|
|
33
|
-
elif platform.system() in ["Linux", "Darwin"]:
|
|
34
|
-
print("🐧 Installing ngrok using apt/nala on Linux...")
|
|
35
|
-
# as per https://ngrok.com/docs/getting-started/?os=linux
|
|
36
|
-
program = """
|
|
37
|
-
|
|
38
|
-
curl -s https://ngrok-agent.s3.amazonaws.com/ngrok.asc | \
|
|
39
|
-
sudo tee /etc/apt/trusted.gpg.d/ngrok.asc >/dev/null && \
|
|
40
|
-
echo "deb https://ngrok-agent.s3.amazonaws.com buster main" | \
|
|
41
|
-
sudo tee /etc/apt/sources.list.d/ngrok.list && \
|
|
42
|
-
sudo nala update && sudo nala install ngrok
|
|
43
|
-
"""
|
|
44
|
-
else:
|
|
45
|
-
error_msg = f"Unsupported platform: {platform.system()}"
|
|
46
|
-
print(f"""
|
|
47
|
-
{"⚠️" * 20}
|
|
48
|
-
❌ ERROR | {error_msg}
|
|
49
|
-
{"⚠️" * 20}
|
|
50
|
-
""")
|
|
51
|
-
raise NotImplementedError(error_msg)
|
|
52
|
-
|
|
53
|
-
print(f"""
|
|
54
|
-
{"=" * 150}
|
|
55
|
-
⚠️ SECURITY WARNING | ngrok has been flagged by some antivirus engines
|
|
56
|
-
🛡️ Use at your own risk - flagged by 35% of antivirus engines
|
|
57
|
-
{"=" * 150}
|
|
58
|
-
""")
|
|
59
|
-
return program
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
if __name__ == "__main__":
|
|
63
|
-
pass
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
from typing import Optional
|
|
2
|
-
from machineconfig.utils.schemas.installer.installer_types import InstallerData
|
|
3
|
-
import platform
|
|
4
|
-
|
|
5
|
-
config_dict: InstallerData = {
|
|
6
|
-
"appName": "aider-chat",
|
|
7
|
-
"repoURL": "https://github.com/paul-gauthier/aider",
|
|
8
|
-
"doc": "Aider Chat",
|
|
9
|
-
"filenameTemplate": {"amd64": {"windows": "aider-chat-{}.exe", "linux": "aider-chat-{}.deb", "macos": ""}, "arm64": {"windows": "", "linux": "", "macos": ""}},
|
|
10
|
-
"stripVersion": True,
|
|
11
|
-
"exeName": "aider-chat",
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
def main(version: Optional[str] = None):
|
|
16
|
-
print(f"""
|
|
17
|
-
{"=" * 150}
|
|
18
|
-
🤖 AIDER INSTALLER | Installing AI code assistant
|
|
19
|
-
💻 Platform: {platform.system()}
|
|
20
|
-
🔄 Version: {"latest" if version is None else version}
|
|
21
|
-
{"=" * 150}
|
|
22
|
-
""")
|
|
23
|
-
|
|
24
|
-
install_script = "uv tool install --force --python python3.12 aider-chat@latest"
|
|
25
|
-
|
|
26
|
-
print(f"""
|
|
27
|
-
{"=" * 150}
|
|
28
|
-
✅ SUCCESS | Installation command prepared:
|
|
29
|
-
📄 Command: {install_script}
|
|
30
|
-
{"=" * 150}
|
|
31
|
-
""")
|
|
32
|
-
|
|
33
|
-
return install_script
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if __name__ == "__main__":
|
|
37
|
-
pass
|