machineconfig 5.15__py3-none-any.whl → 7.98__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.
- machineconfig/__init__.py +0 -28
- machineconfig/cluster/remote/cloud_manager.py +1 -1
- machineconfig/cluster/remote/distribute.py +0 -1
- machineconfig/cluster/remote/file_manager.py +0 -2
- machineconfig/cluster/remote/script_execution.py +0 -1
- machineconfig/cluster/sessions_managers/{utils → helpers}/enhanced_command_runner.py +4 -6
- machineconfig/cluster/sessions_managers/utils/load_balancer.py +1 -1
- machineconfig/cluster/sessions_managers/utils/maker.py +69 -0
- machineconfig/cluster/sessions_managers/wt_local.py +114 -289
- machineconfig/cluster/sessions_managers/wt_local_manager.py +70 -210
- machineconfig/cluster/sessions_managers/wt_remote.py +51 -43
- machineconfig/cluster/sessions_managers/wt_remote_manager.py +52 -198
- 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 +25 -170
- machineconfig/cluster/sessions_managers/zellij_remote.py +40 -41
- machineconfig/cluster/sessions_managers/zellij_remote_manager.py +16 -12
- 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 +2 -3
- machineconfig/jobs/installer/custom/boxes.py +61 -0
- machineconfig/jobs/installer/custom/hx.py +76 -19
- machineconfig/jobs/installer/custom/yazi.py +119 -0
- machineconfig/jobs/installer/custom_dev/alacritty.py +4 -4
- machineconfig/jobs/installer/custom_dev/brave.py +5 -9
- machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
- machineconfig/jobs/installer/custom_dev/code.py +4 -1
- machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
- machineconfig/jobs/installer/custom_dev/nerdfont.py +1 -1
- machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +33 -28
- machineconfig/jobs/installer/custom_dev/sysabc.py +139 -0
- machineconfig/jobs/installer/custom_dev/wezterm.py +2 -19
- machineconfig/jobs/installer/custom_dev/winget.py +10 -14
- machineconfig/jobs/installer/installer_data.json +1487 -229
- machineconfig/jobs/installer/linux_scripts/brave.sh +4 -14
- machineconfig/jobs/installer/linux_scripts/{warp-cli.sh → cloudflare_warp_cli.sh} +5 -17
- machineconfig/jobs/installer/linux_scripts/docker.sh +5 -17
- machineconfig/jobs/installer/linux_scripts/docker_start.sh +6 -14
- machineconfig/jobs/installer/linux_scripts/edge.sh +3 -11
- machineconfig/jobs/{linux/msc → installer/linux_scripts}/lid.sh +2 -8
- machineconfig/jobs/installer/linux_scripts/nerdfont.sh +5 -17
- machineconfig/jobs/{linux/msc → installer/linux_scripts}/network.sh +2 -8
- machineconfig/jobs/installer/linux_scripts/q.sh +10 -6
- machineconfig/jobs/installer/linux_scripts/redis.sh +6 -17
- machineconfig/jobs/installer/linux_scripts/vscode.sh +5 -17
- machineconfig/jobs/installer/linux_scripts/wezterm.sh +4 -12
- machineconfig/jobs/installer/package_groups.py +106 -177
- machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +129 -34
- machineconfig/logger.py +0 -1
- machineconfig/profile/backup.toml +49 -0
- machineconfig/profile/bash_shell_profiles.md +11 -0
- machineconfig/profile/create_helper.py +62 -0
- machineconfig/profile/create_links.py +288 -0
- machineconfig/profile/create_links_export.py +100 -0
- machineconfig/profile/create_shell_profile.py +147 -0
- machineconfig/profile/mapper.toml +263 -0
- machineconfig/scripts/__init__.py +0 -4
- machineconfig/scripts/linux/{share_cloud.sh → other/share_cloud.sh} +14 -25
- machineconfig/scripts/linux/wrap_mcfg +46 -0
- machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
- machineconfig/scripts/python/agents.py +123 -117
- machineconfig/scripts/python/ai/initai.py +3 -28
- machineconfig/scripts/python/ai/scripts/command_runner.ps1 +33 -0
- machineconfig/scripts/python/ai/scripts/command_runner.sh +9 -0
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +17 -18
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +17 -18
- machineconfig/scripts/python/ai/solutions/_shared.py +9 -1
- machineconfig/scripts/python/ai/solutions/copilot/{chatmodes/Thinking-Beast-Mode.chatmode.md → agents/Thinking-Beast-Mode.agent.md} +0 -1
- machineconfig/scripts/python/ai/solutions/copilot/{chatmodes/Ultimate-Transparent-Thinking-Beast-Mode.chatmode.md → agents/Ultimate-Transparent-Thinking-Beast-Mode.agent.md} +0 -1
- machineconfig/scripts/python/ai/solutions/copilot/{chatmodes/deepResearch.chatmode.md → agents/deepResearch.agent.md} +2 -2
- machineconfig/scripts/python/ai/solutions/copilot/github_copilot.py +5 -5
- machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +5 -1
- machineconfig/scripts/python/ai/solutions/copilot/instructions/python/watch_exec.prompt.md +20 -0
- machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
- machineconfig/scripts/python/ai/solutions/generic.py +28 -5
- machineconfig/scripts/python/ai/utils/generate_files.py +348 -0
- machineconfig/scripts/python/ai/utils/vscode_tasks.py +37 -0
- machineconfig/scripts/python/cloud.py +29 -0
- machineconfig/scripts/python/croshell.py +137 -113
- machineconfig/scripts/python/devops.py +61 -101
- machineconfig/scripts/python/devops_navigator.py +6 -0
- machineconfig/scripts/python/env_manager/__init__.py +1 -0
- machineconfig/scripts/python/env_manager/env_manager_tui.py +204 -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 +110 -150
- machineconfig/scripts/python/ftpx.py +51 -24
- machineconfig/scripts/python/helpers/ast_search.py +74 -0
- machineconfig/scripts/python/helpers/qr_code.py +166 -0
- machineconfig/scripts/python/helpers/repo_rag.py +325 -0
- machineconfig/scripts/python/helpers/run_py_script.py +79 -0
- machineconfig/scripts/python/helpers/symantic_search.py +25 -0
- machineconfig/scripts/python/helpers/tmp_py_scripts/a.py +26 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +39 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +55 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +126 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +41 -0
- machineconfig/scripts/python/helpers_agents/templates/prompt.txt +10 -0
- machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
- machineconfig/scripts/python/helpers_agents/templates/template.sh +32 -0
- machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +30 -23
- machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +29 -35
- machineconfig/scripts/python/{cloud_sync.py → helpers_cloud/cloud_sync.py} +12 -18
- machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +1 -1
- machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
- machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +8 -9
- machineconfig/scripts/python/helpers_devops/cli_config.py +105 -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 +214 -0
- machineconfig/scripts/python/helpers_devops/cli_repos.py +215 -0
- machineconfig/scripts/python/helpers_devops/cli_self.py +172 -0
- machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
- machineconfig/scripts/python/helpers_devops/cli_share_server.py +142 -0
- machineconfig/scripts/python/{share_terminal.py → helpers_devops/cli_share_terminal.py} +45 -35
- 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 +499 -0
- machineconfig/scripts/python/{devops_update_repos.py → helpers_devops/devops_update_repos.py} +68 -49
- 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} +3 -3
- machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
- machineconfig/scripts/python/helpers_fire_command/f.py +0 -0
- machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +56 -20
- machineconfig/scripts/python/{fire_jobs_args_helper.py → helpers_fire_command/fire_jobs_args_helper.py} +5 -1
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +121 -0
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_streamlit_helper.py +0 -0
- machineconfig/scripts/python/helpers_msearch/__init__.py +5 -0
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +3 -3
- machineconfig/scripts/python/helpers_msearch/scripts_windows/fzfg.ps1 +59 -0
- 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_network/__init__.py +0 -0
- machineconfig/scripts/python/helpers_network/address.py +132 -0
- machineconfig/scripts/python/{devops_add_identity.py → helpers_network/devops_add_identity.py} +0 -2
- machineconfig/scripts/python/helpers_network/devops_add_ssh_key.py +153 -0
- machineconfig/scripts/{linux → python/helpers_network}/mount_nfs +0 -1
- machineconfig/scripts/python/{mount_nfs.py → helpers_network/mount_nfs.py} +3 -3
- machineconfig/scripts/{linux → python/helpers_network}/mount_nw_drive +1 -2
- machineconfig/scripts/python/{mount_ssh.py → helpers_network/mount_ssh.py} +3 -3
- machineconfig/scripts/python/{onetimeshare.py → helpers_network/onetimeshare.py} +0 -1
- machineconfig/scripts/python/helpers_network/ssh_debug_linux.py +391 -0
- machineconfig/scripts/python/helpers_network/ssh_debug_windows.py +338 -0
- machineconfig/scripts/python/{wifi_conn.py → helpers_network/wifi_conn.py} +1 -53
- machineconfig/scripts/python/{wsl_windows_transfer.py → helpers_network/wsl_windows_transfer.py} +5 -4
- 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} +2 -3
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
- machineconfig/scripts/python/{repos_helper.py → helpers_repos/entrypoint.py} +9 -17
- machineconfig/scripts/python/helpers_repos/grource.py +340 -0
- machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +4 -3
- machineconfig/scripts/python/helpers_repos/repo_analyzer_1.py +160 -0
- machineconfig/scripts/python/{count_lines.py → helpers_repos/repo_analyzer_2.py} +113 -192
- 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/__init__.py +0 -0
- machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +65 -0
- machineconfig/scripts/python/helpers_utils/download.py +150 -0
- machineconfig/scripts/python/helpers_utils/path.py +185 -0
- machineconfig/scripts/python/interactive.py +64 -84
- machineconfig/scripts/python/mcfg_entry.py +58 -0
- machineconfig/scripts/python/msearch.py +71 -0
- machineconfig/scripts/python/sessions.py +119 -45
- machineconfig/scripts/python/terminal.py +133 -0
- machineconfig/scripts/python/utils.py +64 -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 +63 -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/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 +82 -31
- machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +1 -1
- machineconfig/settings/shells/nushell/config.nu +2 -35
- machineconfig/settings/shells/nushell/env.nu +45 -6
- machineconfig/settings/shells/nushell/init.nu +314 -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/television/cable_unix/alias.toml +8 -0
- machineconfig/settings/television/cable_unix/aws-buckets.toml +14 -0
- machineconfig/settings/television/cable_unix/aws-instances.toml +13 -0
- machineconfig/settings/television/cable_unix/bash-history.toml +8 -0
- machineconfig/settings/television/cable_unix/channels.toml +19 -0
- machineconfig/settings/television/cable_unix/dirs.toml +13 -0
- machineconfig/settings/television/cable_unix/distrobox-list.toml +42 -0
- machineconfig/settings/television/cable_unix/docker-images.toml +13 -0
- machineconfig/settings/television/cable_unix/dotfiles.toml +11 -0
- machineconfig/settings/television/cable_unix/env.toml +17 -0
- machineconfig/settings/television/cable_unix/files.toml +11 -0
- machineconfig/settings/television/cable_unix/fish-history.toml +8 -0
- machineconfig/settings/television/cable_unix/git-branch.toml +11 -0
- machineconfig/settings/television/cable_unix/git-diff.toml +10 -0
- machineconfig/settings/television/cable_unix/git-log.toml +12 -0
- machineconfig/settings/television/cable_unix/git-reflog.toml +12 -0
- machineconfig/settings/television/cable_unix/git-repos.toml +16 -0
- machineconfig/settings/television/cable_unix/guix.toml +20 -0
- machineconfig/settings/television/cable_unix/just-recipes.toml +18 -0
- machineconfig/settings/television/cable_unix/k8s-deployments.toml +36 -0
- machineconfig/settings/television/cable_unix/k8s-pods.toml +50 -0
- machineconfig/settings/television/cable_unix/k8s-services.toml +36 -0
- machineconfig/settings/television/cable_unix/man-pages.toml +24 -0
- machineconfig/settings/television/cable_unix/nu-history.toml +7 -0
- machineconfig/settings/television/cable_unix/procs.toml +20 -0
- machineconfig/settings/television/cable_unix/text.toml +17 -0
- machineconfig/settings/television/cable_unix/tldr.toml +18 -0
- machineconfig/settings/television/cable_unix/zsh-history.toml +9 -0
- machineconfig/settings/television/cable_windows/alias.toml +7 -0
- machineconfig/settings/television/cable_windows/dirs.toml +13 -0
- machineconfig/settings/television/cable_windows/docker-images.toml +13 -0
- machineconfig/settings/television/cable_windows/dotfiles.toml +11 -0
- machineconfig/settings/television/cable_windows/env.toml +17 -0
- machineconfig/settings/television/cable_windows/files.toml +14 -0
- machineconfig/settings/television/cable_windows/git-branch.toml +11 -0
- machineconfig/settings/television/cable_windows/git-diff.toml +10 -0
- machineconfig/settings/television/cable_windows/git-log.toml +11 -0
- machineconfig/settings/television/cable_windows/git-reflog.toml +11 -0
- machineconfig/settings/television/cable_windows/git-repos.toml +15 -0
- machineconfig/settings/television/cable_windows/nu-history.toml +7 -0
- machineconfig/settings/television/cable_windows/pwsh-history.toml +6 -0
- machineconfig/settings/television/cable_windows/text.toml +17 -0
- machineconfig/settings/yazi/init.lua +61 -0
- machineconfig/settings/yazi/keymap_linux.toml +94 -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/theme.toml +4 -0
- machineconfig/settings/yazi/yazi_linux.toml +84 -0
- machineconfig/settings/yazi/yazi_windows.toml +58 -0
- machineconfig/setup_linux/__init__.py +11 -0
- machineconfig/setup_linux/apps_desktop.sh +89 -0
- machineconfig/setup_linux/apps_gui.sh +64 -0
- 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 +26 -6
- machineconfig/setup_linux/web_shortcuts/live_from_github.sh +31 -0
- 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 +11 -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 +27 -10
- machineconfig/setup_windows/web_shortcuts/live_from_github.ps1 +30 -0
- machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +17 -0
- machineconfig/utils/accessories.py +7 -5
- machineconfig/utils/cloud/onedrive/README.md +139 -0
- machineconfig/utils/code.py +155 -105
- 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 +1 -1
- machineconfig/utils/files/dbms.py +257 -0
- machineconfig/utils/files/headers.py +11 -14
- machineconfig/utils/files/ouch/__init__.py +0 -0
- machineconfig/utils/files/ouch/decompress.py +45 -0
- machineconfig/utils/files/read.py +10 -18
- machineconfig/utils/installer_utils/github_release_bulk.py +156 -119
- machineconfig/utils/installer_utils/install_from_url.py +183 -0
- machineconfig/utils/installer_utils/installer_class.py +64 -181
- machineconfig/utils/installer_utils/installer_cli.py +175 -0
- machineconfig/utils/installer_utils/installer_helper.py +129 -0
- machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +66 -97
- machineconfig/utils/{installer.py → installer_utils/installer_runner.py} +49 -82
- machineconfig/utils/io.py +77 -23
- machineconfig/utils/links.py +254 -162
- machineconfig/utils/meta.py +256 -0
- machineconfig/utils/notifications.py +1 -1
- machineconfig/utils/options.py +46 -18
- machineconfig/utils/options_tv.py +119 -0
- machineconfig/utils/path_extended.py +48 -101
- machineconfig/utils/path_helper.py +76 -23
- machineconfig/utils/procs.py +50 -70
- machineconfig/utils/scheduler.py +88 -124
- machineconfig/utils/scheduling.py +0 -3
- machineconfig/utils/schemas/fire_agents/fire_agents_input.py +1 -1
- machineconfig/utils/schemas/layouts/layout_types.py +1 -1
- machineconfig/utils/source_of_truth.py +3 -6
- machineconfig/utils/ssh.py +263 -274
- machineconfig/utils/ssh_utils/abc.py +5 -0
- machineconfig/utils/ssh_utils/copy_from_here.py +111 -0
- machineconfig/utils/ssh_utils/copy_to_here.py +302 -0
- machineconfig/utils/ssh_utils/utils.py +142 -0
- machineconfig/utils/ssh_utils/wsl.py +210 -0
- machineconfig/utils/terminal.py +3 -113
- machineconfig/utils/tst.py +20 -0
- machineconfig/utils/upgrade_packages.py +114 -28
- machineconfig/utils/ve.py +12 -4
- machineconfig-7.98.dist-info/METADATA +132 -0
- machineconfig-7.98.dist-info/RECORD +504 -0
- machineconfig-7.98.dist-info/entry_points.txt +13 -0
- machineconfig/cluster/sessions_managers/ffile.py +0 -4
- machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -49
- machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -85
- machineconfig/jobs/linux/msc/cli_agents.sh +0 -16
- machineconfig/jobs/python/python_ve_symlink.py +0 -37
- machineconfig/jobs/python/vscode/api.py +0 -57
- machineconfig/jobs/python/vscode/sync_code.py +0 -73
- 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 -303
- machineconfig/profile/shell.py +0 -176
- machineconfig/scripts/cloud/init.sh +0 -119
- machineconfig/scripts/linux/agents +0 -2
- 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/ftpx +0 -2
- machineconfig/scripts/linux/fzf2g +0 -21
- machineconfig/scripts/linux/fzfag +0 -17
- machineconfig/scripts/linux/fzffg +0 -25
- machineconfig/scripts/linux/fzfrga +0 -21
- machineconfig/scripts/linux/gh_models +0 -2
- machineconfig/scripts/linux/initai +0 -2
- machineconfig/scripts/linux/kill_process +0 -2
- machineconfig/scripts/linux/scheduler +0 -2
- machineconfig/scripts/linux/sessions +0 -2
- machineconfig/scripts/linux/share_smb +0 -1
- machineconfig/scripts/linux/skrg +0 -4
- 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/generate_files.py +0 -83
- machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
- machineconfig/scripts/python/cloud_repo_sync.py +0 -190
- machineconfig/scripts/python/count_lines_frontend.py +0 -16
- machineconfig/scripts/python/devops_add_ssh_key.py +0 -120
- machineconfig/scripts/python/dotfile.py +0 -78
- machineconfig/scripts/python/fire_agents_help_launch.py +0 -120
- machineconfig/scripts/python/fire_agents_helper_types.py +0 -12
- machineconfig/scripts/python/fire_jobs_route_helper.py +0 -65
- 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 -116
- machineconfig/scripts/python/repos.py +0 -132
- machineconfig/scripts/python/repos_helper_action.py +0 -378
- machineconfig/scripts/python/snapshot.py +0 -25
- machineconfig/scripts/python/start_terminals.py +0 -121
- machineconfig/scripts/python/t4.py +0 -17
- machineconfig/scripts/windows/agents.ps1 +0 -1
- 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/fzfb.ps1 +0 -3
- machineconfig/scripts/windows/fzfg.ps1 +0 -2
- machineconfig/scripts/windows/fzfrga.bat +0 -20
- machineconfig/scripts/windows/gpt.ps1 +0 -1
- machineconfig/scripts/windows/grep.ps1 +0 -2
- machineconfig/scripts/windows/initai.ps1 +0 -1
- machineconfig/scripts/windows/kill_process.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/scheduler.ps1 +0 -1
- machineconfig/scripts/windows/sessions.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/settings/lf/windows/fzf_edit.ps1 +0 -6
- machineconfig/settings/lf/windows/tst.ps1 +0 -1
- machineconfig/settings/yazi/yazi.toml +0 -4
- machineconfig/setup_linux/nix/cli_installation.sh +0 -157
- machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
- 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/utils/ai/generate_file_checklist.py +0 -68
- machineconfig/utils/installer_utils/installer.py +0 -189
- machineconfig-5.15.dist-info/METADATA +0 -188
- machineconfig-5.15.dist-info/RECORD +0 -415
- machineconfig-5.15.dist-info/entry_points.txt +0 -18
- machineconfig/cluster/sessions_managers/{utils → helpers}/load_balancer_helper.py +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 → scripts/python/ai/utils}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers → helpers_agents}/__init__.py +0 -0
- machineconfig/{jobs/windows/msc/cli_agents.bat → 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/scripts/python/{fire_agents_load_balancer.py → helpers_agents/fire_agents_load_balancer.py} +0 -0
- machineconfig/{jobs/windows/msc/cli_agents.ps1 → 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/scripts/python/{fire_jobs_streamlit_helper.py → helpers_croshell/__init__.py} +0 -0
- /machineconfig/scripts/python/{pomodoro.py → helpers_croshell/pomodoro.py} +0 -0
- /machineconfig/scripts/python/{scheduler.py → helpers_croshell/scheduler.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/scripts/{windows/share_nfs.ps1 → python/helpers_devops/__init__.py} +0 -0
- /machineconfig/{settings/shells/pwsh/profile.ps1 → scripts/python/helpers_devops/themes/__init__.py} +0 -0
- /machineconfig/{settings/yazi/keymap.toml → scripts/python/helpers_devops/themes/choose_starship_theme.ps1} +0 -0
- /machineconfig/scripts/python/{cloud_manager.py → helpers_fire_command/cloud_manager.py} +0 -0
- /machineconfig/scripts/{linux → python/helpers_network}/mount_drive +0 -0
- /machineconfig/scripts/python/{mount_nw_drive.py → helpers_network/mount_nw_drive.py} +0 -0
- /machineconfig/scripts/{linux → python/helpers_network}/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-5.15.dist-info → machineconfig-7.98.dist-info}/WHEEL +0 -0
- {machineconfig-5.15.dist-info → machineconfig-7.98.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
#!/usr/bin/bash
|
|
2
|
+
# 🖥️ DESKTOP APPLICATIONS INSTALLATION SCRIPT
|
|
3
|
+
# This script installs desktop applications for a Linux workstation
|
|
4
|
+
|
|
5
|
+
echo """🌐 WEB BROWSERS | Installing browser applications
|
|
6
|
+
"""
|
|
7
|
+
# Google Chrome installation (commented reference)
|
|
8
|
+
# echo "📥 Installing Google Chrome..."
|
|
9
|
+
# wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
|
10
|
+
# sudo dpkg -i google-chrome-stable_current_amd64.deb
|
|
11
|
+
|
|
12
|
+
echo """📝 TEXT EDITORS | Installing Neovim editor
|
|
13
|
+
"""
|
|
14
|
+
echo "📥 Installing Neovim via Homebrew..."
|
|
15
|
+
/home/linuxbrew/.linuxbrew/bin/brew install neovim
|
|
16
|
+
|
|
17
|
+
echo """📧 EMAIL CLIENT | Installing Thunderbird
|
|
18
|
+
"""
|
|
19
|
+
echo "📥 Installing Thunderbird via Flatpak..."
|
|
20
|
+
flatpak install flathub org.mozilla.Thunderbird
|
|
21
|
+
|
|
22
|
+
echo """🖲️ TERMINAL EMULATOR | Installing WezTerm
|
|
23
|
+
"""
|
|
24
|
+
echo "📥 Installing WezTerm via Flatpak..."
|
|
25
|
+
flatpak install flathub org.wezfurlong.wezterm
|
|
26
|
+
echo "🚀 Launching WezTerm..."
|
|
27
|
+
flatpak run org.wezfurlong.wezterm
|
|
28
|
+
|
|
29
|
+
echo """✏️ SCREEN ANNOTATION | Installing Gromit-MPX
|
|
30
|
+
"""
|
|
31
|
+
echo "📥 Installing Gromit-MPX via Flatpak..."
|
|
32
|
+
flatpak install net.christianbeier.Gromit-MPX
|
|
33
|
+
|
|
34
|
+
echo """📋 CLIPBOARD MANAGERS | Installing CopyQ
|
|
35
|
+
"""
|
|
36
|
+
echo "📥 Installing CopyQ via Flatpak..."
|
|
37
|
+
flatpak install flathub com.github.hluk.copyq --noninteractive
|
|
38
|
+
|
|
39
|
+
echo """🔗 REMOTE DESKTOP | Installing Remmina
|
|
40
|
+
"""
|
|
41
|
+
echo "📥 Installing Remmina and RDP plugin..."
|
|
42
|
+
sudo nala install remmina remmina-plugin-rdp -y
|
|
43
|
+
|
|
44
|
+
# Alternative Remmina installation via flatpak (reference)
|
|
45
|
+
# echo "📥 Setting up Flatpak repositories..."
|
|
46
|
+
# flatpak remote-add --user --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
|
47
|
+
# flatpak install org.freedesktop.Platform
|
|
48
|
+
# flatpak install org.freedesktop.Platform.openh264
|
|
49
|
+
# flatpak install --user flathub org.remmina.Remmina
|
|
50
|
+
# flatpak run --user org.remmina.Remmina
|
|
51
|
+
|
|
52
|
+
echo """🚀 APPLICATION LAUNCHER | Installing Rofi
|
|
53
|
+
"""
|
|
54
|
+
echo "📥 Installing Rofi application launcher..."
|
|
55
|
+
sudo nala install rofi -y
|
|
56
|
+
|
|
57
|
+
echo """📎 CLIPBOARD HISTORY | Installing Greenclip
|
|
58
|
+
"""
|
|
59
|
+
# Session type detection (reference)
|
|
60
|
+
# session_type=$(echo $XDG_SESSION_TYPE)
|
|
61
|
+
# if [ "$session_type" == "x11" ]; then
|
|
62
|
+
# echo "Detected X11 session. Installing X11-related packages and tools..."
|
|
63
|
+
# sudo nala install xdotool xsel xclip -y
|
|
64
|
+
# elif [ "$session_type" == "wayland" ]; then
|
|
65
|
+
# echo "Detected Wayland session. Installing Wayland-related packages and tools..."
|
|
66
|
+
# sudo nala install wl-copy wtype -y
|
|
67
|
+
# else
|
|
68
|
+
# echo "Unknown session type: $session_type"
|
|
69
|
+
# exit 1
|
|
70
|
+
# fi
|
|
71
|
+
|
|
72
|
+
echo "📥 Downloading and installing Greenclip clipboard manager..."
|
|
73
|
+
wget -P ~/Downloads https://github.com/erebe/greenclip/releases/download/v4.2/greenclip
|
|
74
|
+
chmod +x ~/Downloads/greenclip
|
|
75
|
+
sudo mv ~/Downloads/greenclip /usr/bin/
|
|
76
|
+
|
|
77
|
+
echo "ℹ️ Usage instructions:"
|
|
78
|
+
echo "- Start daemon: greenclip daemon &"
|
|
79
|
+
echo "- With Rofi: rofi -modi \"clipboard:greenclip print\" -show clipboard -run-command '{cmd}'"
|
|
80
|
+
echo "- For emoji picker: rofi -modi \"emoji:rofimoji\" -show emoji"
|
|
81
|
+
echo "- Application launcher: rofi -show drun"
|
|
82
|
+
|
|
83
|
+
echo """🔄 APPLICATION LINKING | Linking applications to user space
|
|
84
|
+
"""
|
|
85
|
+
echo "🔗 Creating application symlinks..."
|
|
86
|
+
ln -s /home/$USER/.nix-profile/share/applications/* /home/$USER/.local/share/applications/
|
|
87
|
+
|
|
88
|
+
echo """✅ INSTALLATION COMPLETE | Desktop applications have been installed
|
|
89
|
+
"""
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# 🖥️ GUI APPLICATIONS AND DESKTOP ENVIRONMENT SETUP SCRIPT
|
|
3
|
+
# This script installs graphical user interfaces and desktop environments
|
|
4
|
+
|
|
5
|
+
echo """📦 INSTALLING GUI COMPONENTS | Setting up desktop environment
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
# echo "📥 Installing Nautilus file manager..."
|
|
9
|
+
# sudo nala install nautilus -y # 📂 graphical file manager
|
|
10
|
+
# sudo nala install x11-apps # 🎨 few graphical test apps like xeyes
|
|
11
|
+
|
|
12
|
+
echo "📥 Installing XRDP - Remote Desktop Protocol server..."
|
|
13
|
+
sudo nala install xrdp -y # 🔌 remote desktop protocol
|
|
14
|
+
|
|
15
|
+
# echo "📥 Installing X.Org server and components..."
|
|
16
|
+
# sudo nala install xorg -y # 🎯 xorg server
|
|
17
|
+
# sudo nala install xinit -y # 🚀 xorg init
|
|
18
|
+
# sudo nala install xserver-xorg -y # 🖼️ xorg server
|
|
19
|
+
|
|
20
|
+
echo "📥 Installing XFCE4 desktop environment..."
|
|
21
|
+
sudo nala install xfce4 -y # 🏠 xfce4 desktop environment
|
|
22
|
+
|
|
23
|
+
echo "📥 Installing XFCE4 additional components..."
|
|
24
|
+
sudo nala install xfce4-goodies -y # ✨ xfce4 desktop environment extras
|
|
25
|
+
|
|
26
|
+
echo """🔧 CONFIGURING XRDP | Setting up Remote Desktop service
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
# Back up original configuration
|
|
30
|
+
echo "📄 Creating backup of XRDP configuration..."
|
|
31
|
+
sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
|
|
32
|
+
|
|
33
|
+
# Change default port to avoid conflict with Windows RDP
|
|
34
|
+
echo "🔢 Changing XRDP port to 3391..."
|
|
35
|
+
sudo sed -i 's/3389/3391/g' /etc/xrdp/xrdp.ini
|
|
36
|
+
|
|
37
|
+
# Configure color depth and display settings
|
|
38
|
+
echo "🎨 Configuring display quality settings..."
|
|
39
|
+
sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini
|
|
40
|
+
sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
|
|
41
|
+
|
|
42
|
+
# Set default session
|
|
43
|
+
echo "🖥️ Setting up default XFCE4 session..."
|
|
44
|
+
echo xfce4-session > ~/.xsession
|
|
45
|
+
|
|
46
|
+
# Configure startup window manager
|
|
47
|
+
echo "🚀 Configuring window manager startup..."
|
|
48
|
+
sudo sed -i 's/test/#test/g' /etc/xrdp/startwm.sh
|
|
49
|
+
sudo sed -i 's/exec/#exec/g' /etc/xrdp/startwm.sh
|
|
50
|
+
echo "startxfce4" | sudo tee -a /etc/xrdp/startwm.sh
|
|
51
|
+
|
|
52
|
+
echo """🚀 STARTING SERVICES | Initializing XRDP service
|
|
53
|
+
"""
|
|
54
|
+
|
|
55
|
+
echo "🔄 Starting XRDP service..."
|
|
56
|
+
sudo /etc/init.d/xrdp start
|
|
57
|
+
|
|
58
|
+
echo """✅ SETUP COMPLETE | GUI environment has been configured
|
|
59
|
+
"""
|
|
60
|
+
echo "ℹ️ Connect to this machine via Remote Desktop using port 3391"
|
|
61
|
+
# Alternative commands:
|
|
62
|
+
# sudo systemctl restart xrdp
|
|
63
|
+
# sudo service xrdp restart
|
|
64
|
+
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
#!/usr/bin/bash
|
|
2
|
+
# 🔐 OpenSSH Server Setup and Configuration
|
|
3
|
+
|
|
4
|
+
# Common pitfalls:
|
|
5
|
+
# 🚫 Wrong line endings (LF/CRLF) in config files
|
|
6
|
+
# 🌐 Network port conflicts (try 2222 -> 2223) between WSL and Windows
|
|
7
|
+
|
|
8
|
+
# 📁 Setup SSH directory and permissions
|
|
9
|
+
mkdir -p ~/.ssh
|
|
10
|
+
echo $pubkey_string >> ~/.ssh/authorized_keys
|
|
11
|
+
sudo chmod 600 ~/.ssh/*
|
|
12
|
+
sudo chmod 700 ~/.ssh
|
|
13
|
+
echo "✅ FINISHED modifying .ssh folder attributes."
|
|
14
|
+
|
|
15
|
+
# 🔄 Clean install OpenSSH server
|
|
16
|
+
sudo nala install openssh-server -y || true # try to install first
|
|
17
|
+
sudo nala purge openssh-server -y
|
|
18
|
+
sudo nala install openssh-server -y
|
|
19
|
+
echo "✅ FINISHED installing openssh-server."
|
|
20
|
+
|
|
21
|
+
# 📝 Additional commands if needed:
|
|
22
|
+
# sudo service ssh status
|
|
23
|
+
# sudo nano /etc/ssh/sshd_config
|
|
24
|
+
# sudo service ssh restart
|
|
25
|
+
# For tunnels see: https://www.youtube.com/watch?v=Wp7boqm3Xts
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#!/usr/bin/bash
|
|
2
|
+
# 🐧 WSL2 SSH Configuration for LAN Access 🌐
|
|
3
|
+
# Purpose: Enable SSH access to WSL2 from LAN (requires wsl_server.ps1 in Windows)
|
|
4
|
+
# Common pitfall: sshd fails after config changes due to wrong line endings/permissions
|
|
5
|
+
|
|
6
|
+
# 🔍 Check if running in WSL
|
|
7
|
+
if [[ $(uname -a) == *"icrosoft"* ]]; then
|
|
8
|
+
echo "✅ Running inside WSL"
|
|
9
|
+
else
|
|
10
|
+
echo "❌ Not running inside WSL, no need for this script"
|
|
11
|
+
exit 0
|
|
12
|
+
fi
|
|
13
|
+
|
|
14
|
+
# 🔢 Set SSH port
|
|
15
|
+
if [ -z "$port" ]; then
|
|
16
|
+
port=2222
|
|
17
|
+
echo "📝 Port variable not defined, setting it to $port"
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
# 🛠️ Configure SSH
|
|
21
|
+
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
|
|
22
|
+
sudo sed -i 's/#Port 22/Port '$port'/g' /etc/ssh/sshd_config
|
|
23
|
+
sudo sed -i 's/#ListenAddress 0.0.0.0/ListenAddress 0.0.0.0/g' /etc/ssh/sshd_config
|
|
24
|
+
sudo sed -i 's/#PubkeyAuthentication yes/PubkeyAuthentication yes/g' /etc/ssh/sshd_config
|
|
25
|
+
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
|
|
26
|
+
|
|
27
|
+
# 🔑 Generate host keys and restart service
|
|
28
|
+
sudo service ssh start
|
|
29
|
+
sudo ssh-keygen -A
|
|
30
|
+
sudo service ssh --full-restart
|
|
31
|
+
sudo service ssh status
|
|
32
|
+
|
|
33
|
+
echo "✨ FINISHED configuring SSH in WSL2."
|
|
34
|
+
|
|
35
|
+
# 📚 References:
|
|
36
|
+
# Service startup: https://superuser.com/questions/1701853/how-to-enable-a-service-to-start-with-wsl2
|
|
37
|
+
# WSL config: https://learn.microsoft.com/en-us/windows/wsl/networking#accessing-a-wsl-2-distribution-from-your-local-area-network-lan
|
|
38
|
+
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
#!/usr/bin/bash
|
|
2
|
+
|
|
3
|
+
if [ ! -f "$HOME/.local/bin/uv" ]; then
|
|
4
|
+
echo """📦 uv binary not found
|
|
5
|
+
⏳ Installing uv package manager..."""
|
|
6
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
7
|
+
else
|
|
8
|
+
echo """🔄 Updating uv package manager..."""
|
|
9
|
+
$HOME/.local/bin/uv self update
|
|
10
|
+
fi
|
|
11
|
+
if ! command -v uv &> /dev/null; then
|
|
12
|
+
echo """🔍 uv command not found in PATH ➕ Adding uv to system PATH..."""
|
|
13
|
+
export PATH="$HOME/.local/bin:$PATH"
|
|
14
|
+
fi
|
|
15
|
+
$HOME/.local/bin/uv python install 3.14
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
+
. <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
|
|
3
|
+
. <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/wrap_mcfg")
|
|
2
4
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
alias devops='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" devops'
|
|
6
|
+
alias cloud='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" cloud'
|
|
7
|
+
alias agents='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" agents'
|
|
8
|
+
alias sessions='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" sessions'
|
|
9
|
+
alias ftpx='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" ftpx'
|
|
10
|
+
alias fire='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" fire'
|
|
11
|
+
alias croshell='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" croshell'
|
|
12
|
+
alias utils='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" utils'
|
|
13
|
+
alias terminal='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" terminal'
|
|
14
|
+
alias msearch='$HOME/.local/bin/uvx --python 3.14 --from "machineconfig>=7.98" msearch'
|
|
7
15
|
|
|
8
|
-
|
|
9
|
-
|
|
16
|
+
alias d='wrap_in_shell_script devops'
|
|
17
|
+
alias c='wrap_in_shell_script cloud'
|
|
18
|
+
alias a='wrap_in_shell_script agents'
|
|
19
|
+
alias ss='wrap_in_shell_script sessions'
|
|
20
|
+
alias fx='wrap_in_shell_script ftpx'
|
|
21
|
+
alias f='wrap_in_shell_script fire'
|
|
22
|
+
alias rr='wrap_in_shell_script croshell'
|
|
23
|
+
alias u='wrap_in_shell_script utils'
|
|
24
|
+
alias t='wrap_in_shell_script terminal'
|
|
25
|
+
alias ms='wrap_in_shell_script msearch'
|
|
26
|
+
|
|
27
|
+
echo "mcfg command aliases are now defined in this shell session."
|
|
28
|
+
|
|
29
|
+
devops self interactive
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
. <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/setup_linux/uv.sh")
|
|
3
|
+
. <( curl -sSL "https://raw.githubusercontent.com/thisismygitrepo/machineconfig/main/src/machineconfig/scripts/linux/wrap_mcfg")
|
|
4
|
+
|
|
5
|
+
alias mcfg='$HOME/.local/bin/uvx --python 3.14 --from "git+https://github.com/thisismygitrepo/machineconfig" mcfg'
|
|
6
|
+
|
|
7
|
+
alias d='wrap_in_shell_script mcfg devops'
|
|
8
|
+
alias c='wrap_in_shell_script mcfg cloud'
|
|
9
|
+
alias a='wrap_in_shell_script mcfg agents'
|
|
10
|
+
alias ss='wrap_in_shell_script mcfg sessions'
|
|
11
|
+
alias fx='wrap_in_shell_script mcfg ftpx'
|
|
12
|
+
alias f='wrap_in_shell_script mcfg fire'
|
|
13
|
+
alias rr='wrap_in_shell_script mcfg croshell'
|
|
14
|
+
alias u='wrap_in_shell_script mcfg utils'
|
|
15
|
+
alias t='wrap_in_shell_script mcfg terminal'
|
|
16
|
+
alias ms='wrap_in_shell_script mcfg msearch'
|
|
17
|
+
|
|
18
|
+
alias devops='mcfg devops'
|
|
19
|
+
alias cloud='mcfg cloud'
|
|
20
|
+
alias agents='mcfg agents'
|
|
21
|
+
alias sessions='mcfg sessions'
|
|
22
|
+
alias ftpx='mcfg ftpx'
|
|
23
|
+
alias fire='mcfg fire'
|
|
24
|
+
alias croshell='mcfg croshell'
|
|
25
|
+
alias utils='mcfg utils'
|
|
26
|
+
alias terminal='mcfg terminal'
|
|
27
|
+
alias msearch='mcfg msearch'
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
echo "mcfg command aliases are now defined in this shell session."
|
|
31
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""Mac setup module for machineconfig.
|
|
2
|
+
|
|
3
|
+
This module provides setup script locations and configurations for macOS systems.
|
|
4
|
+
It mirrors the layout used by the Linux setup module and exposes Path objects
|
|
5
|
+
pointing at common scripts (so other code can import these paths).
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
from pathlib import Path
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
# Optional helper scripts (may or may not exist)
|
|
12
|
+
UV = Path(__file__).parent.joinpath("uv.sh")
|
|
13
|
+
# Path to macOS SSH helper
|
|
14
|
+
SSH_SETUP = Path(__file__).parent.joinpath("ssh/openssh_setup.sh")
|
|
15
|
+
|
|
16
|
+
__all__ = ["UV", "SSH_SETUP"]
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
# macOS GUI Application Installation Script
|
|
4
|
+
# Comprehensive GUI application installation via Homebrew Cask and Mac App Store
|
|
5
|
+
# Supports Intel and Apple Silicon architectures
|
|
6
|
+
|
|
7
|
+
set -e # Exit on any error
|
|
8
|
+
|
|
9
|
+
# Color codes for output
|
|
10
|
+
RED='\033[0;31m'
|
|
11
|
+
GREEN='\033[0;32m'
|
|
12
|
+
YELLOW='\033[1;33m'
|
|
13
|
+
BLUE='\033[0;34m'
|
|
14
|
+
NC='\033[0m' # No Color
|
|
15
|
+
|
|
16
|
+
# Logging functions
|
|
17
|
+
log_info() {
|
|
18
|
+
echo -e "${BLUE}ℹ️ $1${NC}"
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
log_success() {
|
|
22
|
+
echo -e "${GREEN}✅ $1${NC}"
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
log_warning() {
|
|
26
|
+
echo -e "${YELLOW}⚠️ $1${NC}"
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
log_error() {
|
|
30
|
+
echo -e "${RED}❌ $1${NC}"
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
# Architecture detection
|
|
34
|
+
detect_architecture() {
|
|
35
|
+
local arch=$(uname -m)
|
|
36
|
+
if [[ "$arch" == "arm64" ]]; then
|
|
37
|
+
echo "arm64"
|
|
38
|
+
elif [[ "$arch" == "x86_64" ]]; then
|
|
39
|
+
echo "amd64"
|
|
40
|
+
else
|
|
41
|
+
log_warning "Unknown architecture: $arch, defaulting to amd64"
|
|
42
|
+
echo "amd64"
|
|
43
|
+
fi
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
# Check if Homebrew is installed
|
|
47
|
+
check_homebrew() {
|
|
48
|
+
if ! command -v brew &> /dev/null; then
|
|
49
|
+
log_error "Homebrew is not installed. Please run apps.sh first to install Homebrew."
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
52
|
+
log_success "Homebrew found"
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
# Setup Mac App Store CLI
|
|
56
|
+
setup_mas() {
|
|
57
|
+
log_info "Setting up Mac App Store CLI (mas)..."
|
|
58
|
+
|
|
59
|
+
if ! command -v mas &> /dev/null; then
|
|
60
|
+
log_info "Installing mas (Mac App Store CLI)..."
|
|
61
|
+
brew install mas || {
|
|
62
|
+
log_error "Failed to install mas"
|
|
63
|
+
return 1
|
|
64
|
+
}
|
|
65
|
+
else
|
|
66
|
+
log_success "mas already installed"
|
|
67
|
+
fi
|
|
68
|
+
|
|
69
|
+
# Check if user is signed in to Mac App Store
|
|
70
|
+
if ! mas account &> /dev/null; then
|
|
71
|
+
log_warning "Not signed in to Mac App Store. Some applications may not install."
|
|
72
|
+
log_info "Please sign in to the Mac App Store manually to install App Store applications."
|
|
73
|
+
else
|
|
74
|
+
log_success "Signed in to Mac App Store"
|
|
75
|
+
fi
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
# Install a GUI application with error handling
|
|
79
|
+
install_gui_app() {
|
|
80
|
+
local app_name="$1"
|
|
81
|
+
local description="$2"
|
|
82
|
+
local install_cmd="$3"
|
|
83
|
+
local fallback_cmd="$4"
|
|
84
|
+
|
|
85
|
+
log_info "Installing $description..."
|
|
86
|
+
|
|
87
|
+
if eval "$install_cmd"; then
|
|
88
|
+
log_success "$app_name installed successfully"
|
|
89
|
+
return 0
|
|
90
|
+
elif [[ -n "$fallback_cmd" ]]; then
|
|
91
|
+
log_warning "Primary installation failed, trying fallback method..."
|
|
92
|
+
if eval "$fallback_cmd"; then
|
|
93
|
+
log_success "$app_name installed via fallback method"
|
|
94
|
+
return 0
|
|
95
|
+
else
|
|
96
|
+
log_error "Failed to install $app_name via fallback method"
|
|
97
|
+
return 1
|
|
98
|
+
fi
|
|
99
|
+
else
|
|
100
|
+
log_error "Failed to install $app_name"
|
|
101
|
+
return 1
|
|
102
|
+
fi
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
# Install GUI applications from a list
|
|
106
|
+
install_gui_app_list() {
|
|
107
|
+
local group_name="$1"
|
|
108
|
+
shift
|
|
109
|
+
local apps=("$@")
|
|
110
|
+
|
|
111
|
+
log_info "Installing $group_name applications..."
|
|
112
|
+
|
|
113
|
+
local failed_apps=()
|
|
114
|
+
for app_info in "${apps[@]}"; do
|
|
115
|
+
IFS='|' read -r app_name description install_cmd fallback_cmd <<< "$app_info"
|
|
116
|
+
if ! install_gui_app "$app_name" "$description" "$install_cmd" "$fallback_cmd"; then
|
|
117
|
+
failed_apps+=("$app_name")
|
|
118
|
+
fi
|
|
119
|
+
done
|
|
120
|
+
|
|
121
|
+
if [[ ${#failed_apps[@]} -gt 0 ]]; then
|
|
122
|
+
log_warning "$group_name: Failed to install: ${failed_apps[*]}"
|
|
123
|
+
else
|
|
124
|
+
log_success "All $group_name applications installed successfully"
|
|
125
|
+
fi
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
# Main installation function
|
|
129
|
+
main() {
|
|
130
|
+
log_info "Starting macOS GUI application installation..."
|
|
131
|
+
log_info "Detected architecture: $(detect_architecture)"
|
|
132
|
+
|
|
133
|
+
# Check prerequisites
|
|
134
|
+
check_homebrew
|
|
135
|
+
setup_mas
|
|
136
|
+
|
|
137
|
+
# --GROUP:BROWSERS - Web browsers
|
|
138
|
+
local browsers=(
|
|
139
|
+
"brave-browser|Brave Browser - Privacy-focused web browser|brew install --cask brave-browser|"
|
|
140
|
+
"google-chrome|Google Chrome web browser|brew install --cask google-chrome|"
|
|
141
|
+
"firefox|Mozilla Firefox web browser|brew install --cask firefox|"
|
|
142
|
+
"microsoft-edge|Microsoft Edge web browser|brew install --cask microsoft-edge|"
|
|
143
|
+
"safari-technology-preview|Safari Technology Preview|brew install --cask safari-technology-preview|"
|
|
144
|
+
)
|
|
145
|
+
|
|
146
|
+
install_gui_app_list "Browsers" "${browsers[@]}"
|
|
147
|
+
|
|
148
|
+
# --GROUP:CODE_EDITORS - Code editors and IDEs
|
|
149
|
+
local code_editors=(
|
|
150
|
+
"visual-studio-code|Visual Studio Code|brew install --cask visual-studio-code|"
|
|
151
|
+
"cursor|Cursor AI-powered code editor|brew install --cask cursor|"
|
|
152
|
+
"sublime-text|Sublime Text editor|brew install --cask sublime-text|"
|
|
153
|
+
"atom|Atom text editor|brew install --cask atom|"
|
|
154
|
+
"webstorm|JetBrains WebStorm IDE|brew install --cask webstorm|"
|
|
155
|
+
"pycharm|JetBrains PyCharm IDE|brew install --cask pycharm|"
|
|
156
|
+
"intellij-idea|JetBrains IntelliJ IDEA|brew install --cask intellij-idea|"
|
|
157
|
+
"xcode|Xcode development environment|mas install 497799835|brew install --cask xcode"
|
|
158
|
+
)
|
|
159
|
+
|
|
160
|
+
install_gui_app_list "Code Editors & IDEs" "${code_editors[@]}"
|
|
161
|
+
|
|
162
|
+
# --GROUP:PRODUCTIVITY - Productivity and office applications
|
|
163
|
+
local productivity=(
|
|
164
|
+
"obsidian|Obsidian note-taking app|brew install --cask obsidian|"
|
|
165
|
+
"notion|Notion workspace|brew install --cask notion|"
|
|
166
|
+
"bitwarden|Bitwarden password manager|brew install --cask bitwarden|"
|
|
167
|
+
"1password|1Password password manager|brew install --cask 1password|mas install 1333542190"
|
|
168
|
+
"alfred|Alfred productivity app|brew install --cask alfred|"
|
|
169
|
+
"raycast|Raycast launcher and productivity tool|brew install --cask raycast|"
|
|
170
|
+
"rectangle|Rectangle window management|brew install --cask rectangle|"
|
|
171
|
+
"magnet|Magnet window manager|mas install 441258766|brew install --cask magnet"
|
|
172
|
+
"cleanmymac|CleanMyMac X system cleaner|mas install 1339170533|"
|
|
173
|
+
)
|
|
174
|
+
|
|
175
|
+
install_gui_app_list "Productivity" "${productivity[@]}"
|
|
176
|
+
|
|
177
|
+
# --GROUP:MEDIA - Media and entertainment applications
|
|
178
|
+
local media=(
|
|
179
|
+
"vlc|VLC media player|brew install --cask vlc|"
|
|
180
|
+
"obs|OBS Studio for streaming and recording|brew install --cask obs|"
|
|
181
|
+
"handbrake|HandBrake video transcoder|brew install --cask handbrake|"
|
|
182
|
+
"spotify|Spotify music streaming|brew install --cask spotify|mas install 324684580"
|
|
183
|
+
"youtube-music|YouTube Music|brew install --cask youtube-music|"
|
|
184
|
+
"plex|Plex media server|brew install --cask plex|"
|
|
185
|
+
"keka|Keka archive utility|brew install --cask keka|mas install 470158793"
|
|
186
|
+
"the-unarchiver|The Unarchiver|brew install --cask the-unarchiver|mas install 425424353"
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
install_gui_app_list "Media & Entertainment" "${media[@]}"
|
|
190
|
+
|
|
191
|
+
# --GROUP:DEVELOPMENT - Development and system tools
|
|
192
|
+
local development=(
|
|
193
|
+
"docker|Docker Desktop|brew install --cask docker|"
|
|
194
|
+
"postman|Postman API development|brew install --cask postman|"
|
|
195
|
+
"insomnia|Insomnia REST client|brew install --cask insomnia|"
|
|
196
|
+
"github-desktop|GitHub Desktop|brew install --cask github-desktop|"
|
|
197
|
+
"sourcetree|Sourcetree Git client|brew install --cask sourcetree|"
|
|
198
|
+
"iterm2|iTerm2 terminal emulator|brew install --cask iterm2|"
|
|
199
|
+
"warp|Warp modern terminal|brew install --cask warp|"
|
|
200
|
+
"alacritty|Alacritty terminal emulator|brew install --cask alacritty|"
|
|
201
|
+
)
|
|
202
|
+
|
|
203
|
+
install_gui_app_list "Development Tools" "${development[@]}"
|
|
204
|
+
|
|
205
|
+
# --GROUP:DATABASE - Database management tools
|
|
206
|
+
local database=(
|
|
207
|
+
"dbeaver-community|DBeaver database tool|brew install --cask dbeaver-community|"
|
|
208
|
+
"sequel-pro|Sequel Pro MySQL client|brew install --cask sequel-pro|"
|
|
209
|
+
"tableplus|TablePlus database client|brew install --cask tableplus|"
|
|
210
|
+
"redis-insight|RedisInsight Redis GUI|brew install --cask redisinsight|"
|
|
211
|
+
"mongodb-compass|MongoDB Compass|brew install --cask mongodb-compass|"
|
|
212
|
+
)
|
|
213
|
+
|
|
214
|
+
install_gui_app_list "Database Tools" "${database[@]}"
|
|
215
|
+
|
|
216
|
+
# --GROUP:COMMUNICATION - Communication and collaboration
|
|
217
|
+
local communication=(
|
|
218
|
+
"slack|Slack team communication|brew install --cask slack|mas install 803453959"
|
|
219
|
+
"discord|Discord voice and text chat|brew install --cask discord|"
|
|
220
|
+
"zoom|Zoom video conferencing|brew install --cask zoom|"
|
|
221
|
+
"microsoft-teams|Microsoft Teams|brew install --cask microsoft-teams|"
|
|
222
|
+
"whatsapp|WhatsApp Desktop|brew install --cask whatsapp|mas install 1147396723"
|
|
223
|
+
"telegram|Telegram messaging|brew install --cask telegram|mas install 747648890"
|
|
224
|
+
)
|
|
225
|
+
|
|
226
|
+
install_gui_app_list "Communication" "${communication[@]}"
|
|
227
|
+
|
|
228
|
+
# --GROUP:SYSTEM_UTILITIES - System utilities and maintenance
|
|
229
|
+
local system_utilities=(
|
|
230
|
+
"appcleaner|AppCleaner uninstaller|brew install --cask appcleaner|"
|
|
231
|
+
"coconutbattery|CoconutBattery system info|brew install --cask coconutbattery|"
|
|
232
|
+
"disk-utility|Disk Utility (built-in)|echo 'Disk Utility is built into macOS'|"
|
|
233
|
+
"activity-monitor|Activity Monitor (built-in)|echo 'Activity Monitor is built into macOS'|"
|
|
234
|
+
"finder|Finder (built-in)|echo 'Finder is built into macOS'|"
|
|
235
|
+
"homebrew|Homebrew package manager|echo 'Homebrew already installed'|"
|
|
236
|
+
)
|
|
237
|
+
|
|
238
|
+
install_gui_app_list "System Utilities" "${system_utilities[@]}"
|
|
239
|
+
|
|
240
|
+
log_success "macOS GUI application installation completed!"
|
|
241
|
+
log_info "Some applications may require additional setup or signing in to your accounts."
|
|
242
|
+
log_info "Check Applications folder for newly installed apps."
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
# Execute main function if script is run directly
|
|
246
|
+
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
247
|
+
main "$@"
|
|
248
|
+
fi
|