machineconfig 6.82__py3-none-any.whl → 8.51__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/cluster/remote/cloud_manager.py +1 -1
- machineconfig/cluster/remote/run_cluster.py +1 -1
- machineconfig/cluster/remote/run_remote.py +1 -1
- machineconfig/cluster/sessions_managers/utils/maker.py +29 -15
- machineconfig/cluster/sessions_managers/wt_local.py +17 -222
- machineconfig/cluster/sessions_managers/wt_local_manager.py +56 -194
- machineconfig/cluster/sessions_managers/wt_remote_manager.py +42 -198
- 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_reporting.py +76 -0
- machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
- machineconfig/cluster/sessions_managers/zellij_local.py +1 -1
- machineconfig/cluster/sessions_managers/zellij_local_manager.py +4 -2
- machineconfig/cluster/sessions_managers/zellij_remote_manager.py +3 -2
- machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +2 -2
- machineconfig/jobs/installer/checks/check_installations.py +133 -0
- machineconfig/jobs/installer/checks/install_utils.py +132 -0
- machineconfig/jobs/installer/checks/report_utils.py +39 -0
- machineconfig/jobs/installer/checks/vt_utils.py +89 -0
- machineconfig/jobs/installer/installer_data.json +1500 -310
- machineconfig/jobs/installer/linux_scripts/docker.sh +6 -9
- machineconfig/jobs/installer/linux_scripts/q.sh +10 -7
- machineconfig/jobs/installer/linux_scripts/redis.sh +1 -0
- machineconfig/jobs/installer/package_groups.py +62 -91
- machineconfig/jobs/installer/powershell_scripts/install_fonts.ps1 +129 -34
- machineconfig/jobs/installer/{custom → python_scripts}/boxes.py +2 -3
- machineconfig/jobs/installer/{custom_dev → python_scripts}/brave.py +5 -3
- machineconfig/jobs/installer/python_scripts/cloudflare_warp_cli.py +23 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/code.py +14 -9
- machineconfig/jobs/installer/{custom_dev → python_scripts}/dubdb_adbc.py +1 -1
- machineconfig/jobs/installer/python_scripts/hx.py +214 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/nerdfont.py +2 -2
- machineconfig/jobs/installer/{custom_dev → python_scripts}/nerfont_windows_helper.py +32 -26
- machineconfig/jobs/installer/python_scripts/sysabc.py +145 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/wezterm.py +2 -19
- machineconfig/jobs/installer/{custom_dev → python_scripts}/winget.py +10 -14
- machineconfig/jobs/installer/python_scripts/yazi.py +139 -0
- machineconfig/{scripts/python/nw → jobs/scripts/bash_scripts}/mount_nfs +0 -1
- machineconfig/jobs/scripts/powershell_scripts/cmatrix.ps1 +52 -0
- machineconfig/jobs/scripts/powershell_scripts/mount_ssh.ps1 +13 -0
- machineconfig/jobs/scripts/powershell_scripts/obs.ps1 +4 -0
- machineconfig/jobs/scripts_dynamic/a.py +428 -0
- machineconfig/logger.py +1 -2
- machineconfig/profile/create_helper.py +56 -18
- machineconfig/profile/create_links.py +79 -21
- machineconfig/profile/create_links_export.py +87 -36
- machineconfig/profile/create_shell_profile.py +92 -127
- machineconfig/profile/mapper_data.toml +45 -0
- machineconfig/profile/mapper_dotfiles.toml +249 -0
- machineconfig/scripts/__init__.py +0 -4
- machineconfig/scripts/linux/wrap_mcfg +46 -0
- machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
- machineconfig/scripts/python/agents.py +85 -165
- machineconfig/scripts/python/ai/initai.py +4 -2
- machineconfig/scripts/python/ai/scripts/__init__.py +1 -0
- machineconfig/scripts/python/ai/scripts/command_runner.ps1 +33 -0
- machineconfig/scripts/python/ai/{command_runner → scripts}/command_runner.sh +1 -1
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.ps1 +2 -0
- machineconfig/scripts/python/ai/scripts/lint_and_type_check.sh +8 -6
- machineconfig/scripts/python/ai/solutions/claude/claude.py +1 -1
- machineconfig/scripts/python/ai/solutions/cline/cline.py +1 -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 +6 -6
- machineconfig/scripts/python/ai/solutions/copilot/instructions/python/dev.instructions.md +33 -0
- machineconfig/scripts/python/ai/solutions/copilot/instructions/python/watch_exec.prompt.md +20 -0
- machineconfig/scripts/python/ai/solutions/crush/crush.py +1 -1
- machineconfig/scripts/python/ai/solutions/cursor/cursors.py +1 -1
- machineconfig/scripts/python/ai/solutions/gemini/gemini.py +1 -1
- machineconfig/scripts/python/ai/solutions/gemini/settings.json +3 -0
- machineconfig/scripts/python/ai/{generate_files.py → utils/generate_files.py} +2 -2
- machineconfig/scripts/python/ai/{solutions → utils}/generic.py +2 -15
- machineconfig/scripts/python/ai/{vscode_tasks.py → utils/vscode_tasks.py} +13 -5
- machineconfig/scripts/python/cloud.py +58 -11
- machineconfig/scripts/python/croshell.py +10 -162
- machineconfig/scripts/python/devops.py +73 -36
- machineconfig/scripts/python/devops_navigator.py +16 -6
- machineconfig/scripts/python/fire_jobs.py +8 -222
- machineconfig/scripts/python/ftpx.py +7 -200
- machineconfig/scripts/python/graph/cli_graph.json +8743 -0
- machineconfig/scripts/python/{env_manager → helper_env}/path_manager_tui.py +2 -2
- machineconfig/scripts/python/helpers/helper_env/env_manager_tui.py +204 -0
- machineconfig/scripts/python/helpers/helper_env/path_manager_tui.py +228 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/agentic_frameworks/fire_crush.json +1 -1
- machineconfig/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_crush.py +39 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/agentic_frameworks/fire_cursor_agents.py +3 -4
- machineconfig/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_gemini.py +55 -0
- machineconfig/scripts/python/helpers/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
- machineconfig/scripts/python/helpers/helpers_agents/agents_impl.py +168 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/fire_agents_help_launch.py +38 -16
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/fire_agents_helper_types.py +11 -14
- machineconfig/scripts/python/helpers/helpers_agents/privacy/configs/aichat/config.yaml +5 -0
- machineconfig/scripts/python/helpers/helpers_agents/privacy/configs/aider/.aider.conf.yml +2 -0
- machineconfig/scripts/python/helpers/helpers_agents/privacy/configs/copilot/config.yml +1 -0
- machineconfig/scripts/python/helpers/helpers_agents/privacy/configs/crush/crush.json +10 -0
- machineconfig/scripts/python/helpers/helpers_agents/privacy/configs/gemini/settings.json +12 -0
- machineconfig/scripts/python/helpers/helpers_agents/privacy/privacy.py +109 -0
- machineconfig/scripts/python/helpers/helpers_agents/templates/prompt.txt +10 -0
- machineconfig/scripts/python/helpers/helpers_agents/templates/template.sh +34 -0
- machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/cloud_copy.py +32 -25
- machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/cloud_mount.py +29 -22
- machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/cloud_sync.py +9 -8
- machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/helpers2.py +1 -1
- machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/crosh.py +3 -3
- machineconfig/scripts/python/helpers/helpers_croshell/croshell_impl.py +225 -0
- machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/scheduler.py +4 -4
- machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/start_slidev.py +12 -12
- machineconfig/scripts/python/helpers/helpers_devops/backup_config.py +149 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_backup_retrieve.py +262 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_config.py +98 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_config_dotfile.py +274 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_data.py +67 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_nw.py +201 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_repos.py +274 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_self.py +197 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_share_file.py +151 -0
- machineconfig/scripts/python/helpers/helpers_devops/cli_share_server.py +125 -0
- machineconfig/scripts/python/{helpers_devops/cli_terminal.py → helpers/helpers_devops/cli_share_terminal.py} +26 -22
- machineconfig/scripts/python/helpers/helpers_devops/cli_ssh.py +167 -0
- machineconfig/scripts/python/{helpers_devops → helpers/helpers_devops}/devops_status.py +17 -23
- machineconfig/scripts/python/{helpers_devops → helpers/helpers_devops}/devops_update_repos.py +1 -1
- machineconfig/scripts/python/{interactive.py → helpers/helpers_devops/interactive.py} +78 -71
- machineconfig/scripts/python/helpers/helpers_devops/run_script.py +197 -0
- machineconfig/scripts/python/helpers/helpers_devops/themes/choose_starship_theme.ps1 +41 -0
- machineconfig/scripts/python/helpers/helpers_devops/themes/choose_starship_theme.sh +48 -0
- machineconfig/scripts/python/{helpers_devops → helpers/helpers_devops}/themes/choose_wezterm_theme.py +4 -4
- machineconfig/scripts/python/{helpers_fire/helpers4.py → helpers/helpers_fire_command/file_wrangler.py} +57 -20
- machineconfig/scripts/python/{helpers_fire_command → helpers/helpers_fire_command}/fire_jobs_args_helper.py +1 -0
- machineconfig/scripts/python/helpers/helpers_fire_command/fire_jobs_impl.py +233 -0
- machineconfig/scripts/python/{helpers_fire_command → helpers/helpers_fire_command}/fire_jobs_route_helper.py +26 -16
- machineconfig/scripts/python/helpers/helpers_msearch/__init__.py +5 -0
- machineconfig/scripts/python/helpers/helpers_msearch/msearch_impl.py +248 -0
- machineconfig/scripts/{linux → python/helpers/helpers_msearch/scripts_linux}/fzfg +6 -5
- machineconfig/scripts/python/helpers/helpers_msearch/scripts_linux/search_with_context.sh +48 -0
- machineconfig/scripts/python/helpers/helpers_msearch/scripts_windows/fzfg.ps1 +59 -0
- machineconfig/scripts/python/helpers/helpers_navigator/__init__.py +20 -0
- machineconfig/scripts/python/helpers/helpers_navigator/cli_graph_loader.py +234 -0
- machineconfig/scripts/python/{helpers_navigator → helpers/helpers_navigator}/command_builder.py +61 -13
- machineconfig/scripts/python/helpers/helpers_navigator/command_detail.py +153 -0
- machineconfig/scripts/python/helpers/helpers_navigator/command_tree.py +45 -0
- machineconfig/scripts/python/{helpers_navigator → helpers/helpers_navigator}/data_models.py +18 -11
- machineconfig/scripts/python/{helpers_navigator → helpers/helpers_navigator}/main_app.py +5 -5
- machineconfig/scripts/python/helpers/helpers_network/address.py +174 -0
- machineconfig/scripts/python/helpers/helpers_network/address_switch.py +78 -0
- machineconfig/scripts/python/helpers/helpers_network/ftpx_impl.py +276 -0
- machineconfig/scripts/python/{nw → helpers/helpers_network}/mount_nfs.py +2 -2
- machineconfig/scripts/python/{nw → helpers/helpers_network}/mount_ssh.py +3 -3
- machineconfig/scripts/python/helpers/helpers_network/ssh_add_identity.py +73 -0
- machineconfig/scripts/python/helpers/helpers_network/ssh_add_ssh_key.py +175 -0
- machineconfig/scripts/python/helpers/helpers_network/ssh_debug_linux.py +319 -0
- machineconfig/scripts/python/helpers/helpers_network/ssh_debug_windows.py +275 -0
- machineconfig/scripts/python/{nw → helpers/helpers_network}/wifi_conn.py +1 -53
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/action.py +3 -3
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/action_helper.py +3 -3
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/clone.py +0 -1
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/cloud_repo_sync.py +159 -48
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/grource.py +4 -3
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/record.py +33 -12
- machineconfig/scripts/python/helpers/helpers_repos/repo_analyzer_1.py +160 -0
- machineconfig/scripts/python/{helpers_repos/count_lines.py → helpers/helpers_repos/repo_analyzer_2.py} +156 -191
- machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/update.py +0 -6
- machineconfig/scripts/python/helpers/helpers_search/ast_search.py +74 -0
- machineconfig/scripts/python/helpers/helpers_search/qr_code.py +166 -0
- machineconfig/scripts/python/helpers/helpers_search/repo_rag.py +325 -0
- machineconfig/scripts/python/helpers/helpers_search/script_help.py +81 -0
- machineconfig/scripts/python/helpers/helpers_search/symantic_search.py +25 -0
- machineconfig/scripts/python/helpers/helpers_sessions/__init__.py +0 -0
- machineconfig/scripts/python/helpers/helpers_sessions/sessions_impl.py +186 -0
- machineconfig/scripts/python/{helpers_sessions → helpers/helpers_sessions}/sessions_multiprocess.py +20 -14
- machineconfig/scripts/python/helpers/helpers_terminal/__init__.py +0 -0
- machineconfig/scripts/python/helpers/helpers_terminal/terminal_impl.py +96 -0
- machineconfig/scripts/python/helpers/helpers_utils/download.py +150 -0
- machineconfig/scripts/python/helpers/helpers_utils/pdf.py +96 -0
- machineconfig/scripts/python/helpers/helpers_utils/python.py +210 -0
- machineconfig/scripts/python/helpers/helpers_utils/specs.py +246 -0
- machineconfig/scripts/python/mcfg_entry.py +143 -0
- machineconfig/scripts/python/msearch.py +26 -0
- machineconfig/scripts/python/sessions.py +69 -135
- machineconfig/scripts/python/terminal.py +58 -0
- machineconfig/scripts/python/utils.py +115 -38
- machineconfig/scripts/windows/wrap_mcfg.ps1 +63 -0
- machineconfig/settings/atuin/config.toml +294 -0
- machineconfig/settings/atuin/themes/catppuccin-mocha-mauve.toml +12 -0
- 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 +3 -2
- machineconfig/settings/lf/windows/lfcd.ps1 +1 -1
- machineconfig/settings/lf/windows/lfrc +14 -16
- machineconfig/settings/linters/.ruff.toml +2 -1
- machineconfig/settings/marimo/marimo.toml +1 -1
- machineconfig/settings/marimo/snippets/globalize.py +34 -0
- machineconfig/settings/mprocs/windows/mprocs.yaml +2 -2
- machineconfig/settings/shells/bash/init.sh +47 -12
- machineconfig/settings/shells/ipy/profiles/default/startup/playext.py +1 -1
- machineconfig/settings/shells/nushell/config.nu +25 -33
- machineconfig/settings/shells/nushell/env.nu +21 -8
- machineconfig/settings/shells/nushell/init.nu +138 -0
- machineconfig/settings/shells/pwsh/init.ps1 +111 -17
- machineconfig/settings/shells/pwsh/search_pwsh_history.ps1 +99 -0
- machineconfig/settings/shells/starship/starship.toml +16 -0
- machineconfig/settings/shells/wezterm/wezterm.lua +6 -1
- machineconfig/settings/shells/wt/settings.json +27 -18
- machineconfig/settings/shells/zsh/init.sh +42 -23
- 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/tv/config.toml +234 -0
- machineconfig/settings/tv/themes/catppuccin-mocha-sky.toml +22 -0
- machineconfig/settings/wsl/.wslconfig +5 -30
- machineconfig/settings/wt/__init__.py +0 -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 +94 -0
- machineconfig/settings/yazi/yazi_windows.toml +58 -0
- machineconfig/settings/zellij/layouts/st.kdl +40 -9
- machineconfig/settings/zellij/layouts/st2.kdl +1 -1
- machineconfig/setup_linux/__init__.py +2 -2
- machineconfig/setup_linux/apps_desktop.sh +8 -27
- machineconfig/setup_linux/web_shortcuts/interactive.sh +27 -12
- machineconfig/setup_linux/web_shortcuts/live_from_github.sh +34 -0
- machineconfig/setup_mac/__init__.py +1 -4
- machineconfig/setup_mac/apps_gui.sh +248 -0
- machineconfig/setup_windows/__init__.py +2 -5
- machineconfig/setup_windows/uv.ps1 +8 -1
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +28 -12
- machineconfig/setup_windows/web_shortcuts/live_from_github.ps1 +31 -0
- machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +17 -0
- machineconfig/type_hinting/sql/__init__.py +1 -0
- machineconfig/type_hinting/sql/base.py +216 -0
- machineconfig/type_hinting/sql/core_schema.py +64 -0
- machineconfig/type_hinting/sql/core_schema_typeddict.py +41 -0
- machineconfig/type_hinting/sql/typeddict_codegen.py +222 -0
- machineconfig/type_hinting/typedict/__init__.py +1 -0
- machineconfig/type_hinting/typedict/ast_utils.py +130 -0
- machineconfig/type_hinting/typedict/generator_helpers.py +319 -0
- machineconfig/type_hinting/typedict/generators.py +231 -0
- machineconfig/type_hinting/typedict/polars_schema.py +24 -0
- machineconfig/type_hinting/typedict/polars_schema_typeddict.py +63 -0
- machineconfig/utils/accessories.py +31 -4
- machineconfig/utils/code.py +163 -51
- machineconfig/utils/files/ascii_art.py +11 -15
- machineconfig/utils/files/headers.py +6 -7
- machineconfig/utils/files/read.py +8 -1
- machineconfig/utils/installer_utils/github_release_bulk.py +95 -138
- machineconfig/utils/installer_utils/github_release_scraper.py +99 -0
- machineconfig/utils/installer_utils/install_from_url.py +183 -0
- machineconfig/utils/installer_utils/installer_class.py +53 -102
- machineconfig/utils/installer_utils/installer_cli.py +161 -0
- machineconfig/utils/installer_utils/installer_helper.py +129 -0
- machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +42 -91
- machineconfig/utils/{installer.py → installer_utils/installer_runner.py} +20 -65
- machineconfig/utils/io.py +94 -9
- machineconfig/utils/links.py +56 -38
- machineconfig/utils/meta.py +38 -21
- machineconfig/utils/options.py +81 -23
- machineconfig/utils/options_utils/__init__.py +0 -0
- machineconfig/utils/options_utils/options_tv_linux.py +211 -0
- machineconfig/utils/options_utils/options_tv_windows.py +88 -0
- machineconfig/utils/options_utils/tv_options.py +37 -0
- machineconfig/utils/path_extended.py +52 -102
- machineconfig/utils/path_helper.py +76 -23
- machineconfig/utils/procs.py +1 -1
- machineconfig/utils/scheduler.py +26 -53
- machineconfig/utils/scheduling.py +0 -2
- 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 +6 -1
- machineconfig/utils/ssh.py +216 -419
- machineconfig/utils/ssh_utils/abc.py +5 -0
- machineconfig/utils/ssh_utils/copy_from_here.py +116 -0
- machineconfig/utils/ssh_utils/copy_to_here.py +303 -0
- machineconfig/utils/ssh_utils/utils.py +158 -0
- machineconfig/utils/ssh_utils/wsl.py +147 -0
- machineconfig/utils/ssh_utils/wsl_helper.py +217 -0
- machineconfig/utils/terminal.py +1 -0
- machineconfig/utils/upgrade_packages.py +107 -35
- machineconfig/utils/ve.py +12 -4
- machineconfig-8.51.dist-info/METADATA +140 -0
- machineconfig-8.51.dist-info/RECORD +543 -0
- {machineconfig-6.82.dist-info → machineconfig-8.51.dist-info}/entry_points.txt +4 -1
- machineconfig/jobs/installer/check_installations.py +0 -248
- machineconfig/jobs/installer/custom/hx.py +0 -140
- machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -41
- machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -71
- machineconfig/jobs/installer/powershell_scripts/archive_pygraphviz.ps1 +0 -12
- machineconfig/jobs/installer/powershell_scripts/openssh-server_add_key.ps1 +0 -7
- machineconfig/jobs/installer/powershell_scripts/openssh-server_copy-ssh-id.ps1 +0 -14
- machineconfig/profile/backup.toml +0 -49
- machineconfig/profile/mapper.toml +0 -256
- 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/mcfgs +0 -38
- machineconfig/scripts/linux/other/share_smb +0 -1
- machineconfig/scripts/linux/other/switch_ip +0 -20
- machineconfig/scripts/linux/skrg +0 -4
- machineconfig/scripts/linux/warp-cli.sh +0 -122
- machineconfig/scripts/linux/z_ls +0 -104
- machineconfig/scripts/python/ai/command_runner/prompt.txt +0 -9
- machineconfig/scripts/python/helpers_devops/cli_config.py +0 -120
- machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +0 -77
- machineconfig/scripts/python/helpers_devops/cli_data.py +0 -25
- machineconfig/scripts/python/helpers_devops/cli_nw.py +0 -73
- machineconfig/scripts/python/helpers_devops/cli_repos.py +0 -181
- machineconfig/scripts/python/helpers_devops/cli_self.py +0 -122
- machineconfig/scripts/python/helpers_devops/cli_share_server.py +0 -104
- machineconfig/scripts/python/helpers_devops/cli_utils.py +0 -221
- machineconfig/scripts/python/helpers_devops/devops_backup_retrieve.py +0 -80
- machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +0 -3
- machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_crush.py +0 -37
- machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_gemini.py +0 -44
- machineconfig/scripts/python/helpers_fire/agentic_frameworks/fire_qwen.py +0 -43
- machineconfig/scripts/python/helpers_fire/prompt.txt +0 -2
- machineconfig/scripts/python/helpers_fire/template.sh +0 -15
- machineconfig/scripts/python/helpers_navigator/__init__.py +0 -20
- machineconfig/scripts/python/helpers_navigator/command_detail.py +0 -44
- machineconfig/scripts/python/helpers_navigator/command_tree.py +0 -588
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +0 -17
- machineconfig/scripts/python/helpers_repos/entrypoint.py +0 -76
- machineconfig/scripts/python/helpers_repos/secure_repo.py +0 -15
- machineconfig/scripts/python/mcfg.py +0 -48
- machineconfig/scripts/python/nw/add_ssh_key.py +0 -148
- machineconfig/scripts/python/nw/devops_add_identity.py +0 -82
- machineconfig/scripts/python/nw/devops_add_ssh_key.py +0 -134
- machineconfig/scripts/python/nw/ssh_debug_linux.py +0 -391
- machineconfig/scripts/python/nw/ssh_debug_windows.py +0 -338
- machineconfig/scripts/python/nw/wsl_windows_transfer.py +0 -66
- machineconfig/scripts/windows/fzfb.ps1 +0 -3
- machineconfig/scripts/windows/fzfg.ps1 +0 -2
- machineconfig/scripts/windows/fzfrga.bat +0 -20
- machineconfig/scripts/windows/mcfgs.ps1 +0 -17
- machineconfig/scripts/windows/mounts/mount_ssh.ps1 +0 -13
- 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/apps.sh +0 -66
- machineconfig/setup_linux/others/cli_installation.sh +0 -137
- machineconfig/setup_linux/others/mint_keyboard_shortcuts.sh +0 -30
- machineconfig/setup_linux/ssh/openssh_all.sh +0 -25
- machineconfig/setup_linux/ssh/openssh_wsl.sh +0 -38
- machineconfig/setup_mac/apps.sh +0 -73
- machineconfig/setup_mac/ssh/openssh_setup.sh +0 -114
- machineconfig/setup_windows/apps.ps1 +0 -62
- machineconfig/setup_windows/others/obs.ps1 +0 -4
- machineconfig/setup_windows/ssh/add-sshkey.ps1 +0 -29
- machineconfig/setup_windows/ssh/add_identity.ps1 +0 -11
- machineconfig/setup_windows/ssh/openssh-server.ps1 +0 -37
- machineconfig/utils/installer_utils/installer.py +0 -225
- machineconfig/utils/tst.py +0 -20
- machineconfig-6.82.dist-info/METADATA +0 -82
- machineconfig-6.82.dist-info/RECORD +0 -441
- machineconfig/jobs/installer/{custom_dev → checks}/__init__.py +0 -0
- machineconfig/jobs/installer/linux_scripts/{warp-cli.sh → cloudflare_warp_cli.sh} +0 -0
- machineconfig/{scripts/python/helpers_cloud → jobs/installer/python_scripts}/__init__.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/alacritty.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/bypass_paywall.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/cursor.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/espanso.py +0 -0
- machineconfig/jobs/installer/{custom → python_scripts}/gh.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/goes.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/lvim.py +0 -0
- machineconfig/jobs/installer/{custom_dev → python_scripts}/redis.py +0 -0
- machineconfig/{setup_linux/others → jobs/scripts/bash_scripts}/android.sh +0 -0
- machineconfig/jobs/{installer/linux_scripts → scripts/bash_scripts}/lid.sh +0 -0
- machineconfig/{scripts/python/nw → jobs/scripts/bash_scripts}/mount_drive +0 -0
- machineconfig/{scripts/python/nw → jobs/scripts/bash_scripts}/mount_nw_drive +0 -0
- machineconfig/{scripts/python/nw → jobs/scripts/bash_scripts}/mount_smb +0 -0
- machineconfig/{scripts/linux/other → jobs/scripts/bash_scripts}/share_cloud.sh +0 -0
- machineconfig/{scripts/linux/other → jobs/scripts/bash_scripts}/share_nfs +0 -0
- machineconfig/{scripts/linux/other → jobs/scripts/bash_scripts}/start_docker +0 -0
- machineconfig/{scripts → jobs/scripts/powershell_scripts}/Restore-ThunderbirdProfile.ps1 +0 -0
- machineconfig/{setup_windows/others → jobs/scripts/powershell_scripts}/docker.ps1 +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/mount_nfs.ps1 +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/mount_nw.ps1 +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/mount_smb.ps1 +0 -0
- machineconfig/{setup_windows/others → jobs/scripts/powershell_scripts}/power_options.ps1 +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/share_cloud.cmd +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/share_smb.ps1 +0 -0
- machineconfig/{scripts/windows/mounts → jobs/scripts/powershell_scripts}/unlock_bitlocker.ps1 +0 -0
- machineconfig/scripts/python/{helpers_croshell → ai/utils}/__init__.py +0 -0
- machineconfig/scripts/python/ai/{solutions/_shared.py → utils/shared.py} +0 -0
- machineconfig/scripts/python/{helpers_devops → graph}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers_devops/themes → helpers}/__init__.py +0 -0
- machineconfig/scripts/python/{env_manager → helpers/helper_env}/__init__.py +0 -0
- machineconfig/scripts/python/{env_manager → helpers/helper_env}/path_manager_backend.py +0 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/agentic_frameworks/__init__.py +0 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/fire_agents_help_search.py +0 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents}/fire_agents_load_balancer.py +0 -0
- machineconfig/scripts/python/{helpers_fire → helpers/helpers_agents/templates}/template.ps1 +0 -0
- machineconfig/scripts/python/{helpers_fire_command → helpers/helpers_cloud}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/cloud_helpers.py +1 -1
- /machineconfig/scripts/python/{helpers_cloud → helpers/helpers_cloud}/helpers5.py +0 -0
- /machineconfig/scripts/python/{helpers_sessions → helpers/helpers_croshell}/__init__.py +0 -0
- /machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/pomodoro.py +0 -0
- /machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/viewer.py +0 -0
- /machineconfig/scripts/python/{helpers_croshell → helpers/helpers_croshell}/viewer_template.py +0 -0
- /machineconfig/scripts/python/{nw → helpers/helpers_devops}/__init__.py +0 -0
- /machineconfig/{setup_windows/wt_and_pwsh → scripts/python/helpers/helpers_devops/themes}/__init__.py +0 -0
- /machineconfig/scripts/python/{helpers_devops → helpers/helpers_devops}/themes/choose_pwsh_theme.ps1 +0 -0
- /machineconfig/scripts/python/{helpers_devops/themes/choose_starship_theme.ps1 → helpers/helpers_fire_command/__init__.py} +0 -0
- /machineconfig/scripts/python/{helpers_fire_command → helpers/helpers_fire_command}/cloud_manager.py +0 -0
- /machineconfig/scripts/python/{helpers_fire_command/fire_jobs_streamlit_helper.py → helpers/helpers_fire_command/f.py} +0 -0
- /machineconfig/{settings/shells/pwsh/profile.ps1 → scripts/python/helpers/helpers_fire_command/fire_jobs_streamlit_helper.py} +0 -0
- /machineconfig/scripts/python/{helpers_navigator → helpers/helpers_navigator}/search_bar.py +0 -0
- /machineconfig/{settings/yazi/keymap.toml → scripts/python/helpers/helpers_network/__init__.py} +0 -0
- /machineconfig/scripts/python/{nw → helpers/helpers_network}/mount_nw_drive.py +0 -0
- /machineconfig/scripts/python/{nw → helpers/helpers_network}/onetimeshare.py +0 -0
- /machineconfig/scripts/python/{helpers_repos → helpers/helpers_repos}/sync.py +0 -0
- /machineconfig/{setup_windows/wt_and_pwsh → settings/wt}/set_wt_settings.py +0 -0
- {machineconfig-6.82.dist-info → machineconfig-8.51.dist-info}/WHEEL +0 -0
- {machineconfig-6.82.dist-info → machineconfig-8.51.dist-info}/top_level.txt +0 -0
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
import platform
|
|
3
|
-
from machineconfig.utils.source_of_truth import CONFIG_ROOT
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
APP_SUMMARY_PATH = CONFIG_ROOT.joinpath(f"profile/records/{platform.system().lower()}/apps_summary_report.csv")
|
|
7
|
-
# CLOUD: str = "gdw" # Read.ini(DEFAULTS_PATH)['general']['rclone_config_name']
|
|
8
|
-
# # my onedrive doesn't allow sharing.
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
# def scan(path: P, pct: float = 0.0):
|
|
12
|
-
# import vt # vt-py
|
|
13
|
-
# client = vt.Client(PathExtended.home().joinpath("dotfiles/creds/tokens/virustotal").read_text(encoding="utf-8").split("\n")[0])
|
|
14
|
-
# console = Console()
|
|
15
|
-
# console.rule(f"Scanning {path}. {pct:.2f}% done")
|
|
16
|
-
# if path.is_dir():
|
|
17
|
-
# print(f"📁 Skipping {path} as it is a directory.")
|
|
18
|
-
# return None
|
|
19
|
-
# with open(str(path), "rb") as f:
|
|
20
|
-
# analysis = client.scan_file(f)
|
|
21
|
-
# repeat_counter: int = 0
|
|
22
|
-
# while True:
|
|
23
|
-
# with console.status(f"waiting for scan of {path} ... "):
|
|
24
|
-
# try:
|
|
25
|
-
# anal = client.get_object("/analyses/{}", analysis.id)
|
|
26
|
-
# if anal.status == "completed": break
|
|
27
|
-
# except Exception as ex: # type: ignore
|
|
28
|
-
# repeat_counter += 1
|
|
29
|
-
# if repeat_counter > 2:
|
|
30
|
-
# raise ValueError(f"❌ Error in scanning {path}") from ex
|
|
31
|
-
# print("⚠️ Error in scanning, trying again...")
|
|
32
|
-
# time.sleep(30)
|
|
33
|
-
|
|
34
|
-
# # Convert results to list of dictionaries
|
|
35
|
-
# results_data = list(anal.results.values())
|
|
36
|
-
# malicious = []
|
|
37
|
-
# for result_item in results_data:
|
|
38
|
-
# # Convert result item to dictionary if it has attributes
|
|
39
|
-
# if hasattr(result_item, '__dict__'):
|
|
40
|
-
# result_dict = result_item.__dict__
|
|
41
|
-
# else:
|
|
42
|
-
# # Assume it already has the necessary attributes
|
|
43
|
-
# result_dict = {
|
|
44
|
-
# 'result': getattr(result_item, 'result', None),
|
|
45
|
-
# 'category': getattr(result_item, 'category', 'unknown')
|
|
46
|
-
# }
|
|
47
|
-
|
|
48
|
-
# if result_dict.get('result') is None and result_dict.get('category') in ["undetected", "type-unsupported", "failure", "timeout", "confirmed-timeout"]:
|
|
49
|
-
# continue
|
|
50
|
-
# else:
|
|
51
|
-
# pprint(result_dict, f"🔍 Found Category {result_dict.get('category')}")
|
|
52
|
-
# malicious.append(result_item)
|
|
53
|
-
|
|
54
|
-
# positive_pct: float = round(number=len(malicious) / len(results_data) * 100, ndigits=1)
|
|
55
|
-
# print(f"""
|
|
56
|
-
# {'=' * 50}
|
|
57
|
-
# 🔬 SCAN RESULTS | Positive ratio: {positive_pct:.1f}%
|
|
58
|
-
# {'=' * 50}
|
|
59
|
-
# """)
|
|
60
|
-
# return positive_pct, results_data
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
# def main() -> None:
|
|
64
|
-
# # Convert potential custom List types to plain Python lists
|
|
65
|
-
# tmp_apps = get_installed_cli_apps()
|
|
66
|
-
# apps_paths_tmp: list[PathExtended]
|
|
67
|
-
# if hasattr(tmp_apps, "list"):
|
|
68
|
-
# apps_paths_tmp = list(tmp_apps.list)
|
|
69
|
-
# else:
|
|
70
|
-
# try:
|
|
71
|
-
# apps_paths_tmp = list(tmp_apps)
|
|
72
|
-
# except TypeError:
|
|
73
|
-
# apps_paths_tmp = [tmp_apps]
|
|
74
|
-
|
|
75
|
-
# tmp_versions = INSTALL_VERSION_ROOT.search()
|
|
76
|
-
# versions_files_paths: list[PathExtended]
|
|
77
|
-
# if hasattr(tmp_versions, "list"):
|
|
78
|
-
# versions_files_paths = list(tmp_versions.list)
|
|
79
|
-
# else:
|
|
80
|
-
# try:
|
|
81
|
-
# versions_files_paths = list(tmp_versions)
|
|
82
|
-
# except TypeError:
|
|
83
|
-
# versions_files_paths = [tmp_versions]
|
|
84
|
-
|
|
85
|
-
# app_versions: list[Optional[str]] = []
|
|
86
|
-
# apps_paths_raw: list[PathExtended] = []
|
|
87
|
-
# for an_app in apps_paths_tmp:
|
|
88
|
-
# version_path = [x for x in versions_files_paths if x.stem == an_app.stem]
|
|
89
|
-
# if len(version_path) == 1:
|
|
90
|
-
# app_versions.append(version_path[0].read_text(encoding="utf-8"))
|
|
91
|
-
# apps_paths_raw.append(an_app)
|
|
92
|
-
# # if an_app.stem in versions_files_paths.stem:
|
|
93
|
-
# # else:
|
|
94
|
-
# # print(f"🤔 Cloud not find a documented version for installation of {an_app.stem}, trying to get it from the app itself.")
|
|
95
|
-
# # tmp = Terminal().run(f"{an_app.stem} --version", shell="powershell").capture().op_if_successfull_or_default(strict_err=False, strict_returcode=False)
|
|
96
|
-
# # if tmp is not None: tmp = tmp.split("\n")[0]
|
|
97
|
-
# # print(f"➡️ Found version `{tmp}` for {an_app.stem}.")
|
|
98
|
-
# # app_versions.append(None)
|
|
99
|
-
# print(f"""
|
|
100
|
-
# {'=' * 150}
|
|
101
|
-
# 🔍 TOOL CHECK | Checking tools (#{len(apps_paths_tmp)}) collected from `{INSTALL_VERSION_ROOT}`
|
|
102
|
-
# {'=' * 150}
|
|
103
|
-
# """)
|
|
104
|
-
# for path_item in apps_paths_raw:
|
|
105
|
-
# print(path_item)
|
|
106
|
-
# positive_pct: list[Optional[float]] = []
|
|
107
|
-
# scan_time: list[str] = []
|
|
108
|
-
# detailed_results: list[dict[str, Optional[list[Any]]]] = []
|
|
109
|
-
|
|
110
|
-
# for idx, app in enumerate(apps_paths_raw):
|
|
111
|
-
# try: res = scan(path=app, pct=idx / len(apps_paths_raw) * 100)
|
|
112
|
-
# except ValueError as ve:
|
|
113
|
-
# print(f"❌ ERROR | {ve}")
|
|
114
|
-
# res = None
|
|
115
|
-
# if res is None:
|
|
116
|
-
# positive_pct.append(None)
|
|
117
|
-
# detailed_results.append({app.stem: None})
|
|
118
|
-
# else:
|
|
119
|
-
# ppct, results_data = res
|
|
120
|
-
# positive_pct.append(ppct)
|
|
121
|
-
# detailed_results.append({app.stem: results_data})
|
|
122
|
-
# scan_time.append(datetime.now().strftime("%Y-%m-%d %H:%M"))
|
|
123
|
-
|
|
124
|
-
# # Create list of dictionaries instead of DataFrame
|
|
125
|
-
# app_data = []
|
|
126
|
-
# for i, app_path in enumerate(apps_paths_raw):
|
|
127
|
-
# app_data.append({
|
|
128
|
-
# "app_name": app_path.stem,
|
|
129
|
-
# "version": app_versions[i],
|
|
130
|
-
# "positive_pct": positive_pct[i],
|
|
131
|
-
# "scan_time": scan_time[i],
|
|
132
|
-
# "app_path": app_path.collapseuser(strict=False).as_posix()
|
|
133
|
-
# })
|
|
134
|
-
|
|
135
|
-
# # Add app URLs
|
|
136
|
-
# for i, app_info in enumerate(tqdm(app_data, desc="Uploading apps")):
|
|
137
|
-
# apps_safe_url = upload(PathExtended(app_info["app_path"]).expanduser())
|
|
138
|
-
# app_info["app_url"] = apps_safe_url.as_posix() if (apps_safe_url is not None and type(apps_safe_url) is P) else str(apps_safe_url) if apps_safe_url is not None else ""
|
|
139
|
-
|
|
140
|
-
# # Write to CSV using standard library
|
|
141
|
-
# csv_path = APP_SUMMARY_PATH.with_suffix(".csv")
|
|
142
|
-
# csv_path.parent.mkdir(parents=True, exist_ok=True)
|
|
143
|
-
# with open(csv_path, 'w', newline='', encoding='utf-8') as csvfile:
|
|
144
|
-
# if app_data:
|
|
145
|
-
# fieldnames = app_data[0].keys()
|
|
146
|
-
# writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
|
|
147
|
-
# writer.writeheader()
|
|
148
|
-
# writer.writerows(app_data)
|
|
149
|
-
|
|
150
|
-
# # Create markdown table
|
|
151
|
-
# def format_app_table_markdown(data: list[dict[str, Any]]) -> str:
|
|
152
|
-
# if not data:
|
|
153
|
-
# return ""
|
|
154
|
-
# keys = list(data[0].keys())
|
|
155
|
-
# header = "|" + "|".join(f" {key} " for key in keys) + "|"
|
|
156
|
-
# separator = "|" + "|".join(" --- " for _ in keys) + "|"
|
|
157
|
-
# rows = []
|
|
158
|
-
# for row in data:
|
|
159
|
-
# row_values = [f" {str(row.get(key, ''))} " for key in keys]
|
|
160
|
-
# rows.append("|" + "|".join(row_values) + "|")
|
|
161
|
-
# return "\n".join([header, separator] + rows)
|
|
162
|
-
|
|
163
|
-
# markdown_content = format_app_table_markdown(app_data)
|
|
164
|
-
# APP_SUMMARY_PATH.with_suffix(".md").write_text(markdown_content, encoding="utf-8")
|
|
165
|
-
|
|
166
|
-
# print(f"""
|
|
167
|
-
# {'=' * 150}
|
|
168
|
-
# 📊 SAFETY REPORT | Summary of app scanning results
|
|
169
|
-
# {'=' * 150}
|
|
170
|
-
# """)
|
|
171
|
-
# print(markdown_content)
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
# def upload(path: PathExtended):
|
|
175
|
-
# import call_function_with_timeout
|
|
176
|
-
# set_time_out = call_function_with_timeout.SetTimeout
|
|
177
|
-
# func_with_timeout = set_time_out(lambda: path.to_cloud(CLOUD, rel2home=True, share=True, os_specific=True), timeout=180)
|
|
178
|
-
# is_done, _is_timeout, _erro_message, results = func_with_timeout()
|
|
179
|
-
# if is_done: return results
|
|
180
|
-
# else: return None
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
# class precheckedPackages:
|
|
184
|
-
# def __init__(self):
|
|
185
|
-
# # Read CSV using standard library
|
|
186
|
-
# self.data = []
|
|
187
|
-
# if APP_SUMMARY_PATH.exists():
|
|
188
|
-
# with open(APP_SUMMARY_PATH, 'r', encoding='utf-8') as csvfile:
|
|
189
|
-
# reader = csv.DictReader(csvfile)
|
|
190
|
-
# self.data = list(reader)
|
|
191
|
-
|
|
192
|
-
# @staticmethod
|
|
193
|
-
# def download_google_links(url: str):
|
|
194
|
-
# # if "drive.google.com" in str(url): url = str(url).replace("open?", "uc?")
|
|
195
|
-
# # else: raise NotImplementedError("Only google drive is supported for now.")
|
|
196
|
-
# # return PathExtended(url).download(name=name)
|
|
197
|
-
# gdrive_id = PathExtended(url).parts[-1].split("id=")[1]
|
|
198
|
-
# result = PathExtended(gdown.download(id=gdrive_id)).absolute()
|
|
199
|
-
# return result
|
|
200
|
-
|
|
201
|
-
# @staticmethod
|
|
202
|
-
# def install_cli_apps(app_url: str):
|
|
203
|
-
# try:
|
|
204
|
-
# exe = precheckedPackages.download_google_links(app_url)
|
|
205
|
-
# except Exception as ex: # type: ignore
|
|
206
|
-
# print(f"❌ ERROR | Failed downloading {app_url}: {ex}")
|
|
207
|
-
# return None
|
|
208
|
-
# if platform.system().lower() in ["linux", "darwin"]:
|
|
209
|
-
# Terminal().run(f"chmod +x {exe}")
|
|
210
|
-
# Terminal().run(f"mv {exe} /usr/local/bin/")
|
|
211
|
-
# elif platform.system().lower() == "windows":
|
|
212
|
-
# exe.move(folder=PathExtended.home().joinpath("AppData/Local/Microsoft/WindowsApps"), overwrite=True)
|
|
213
|
-
# return True
|
|
214
|
-
|
|
215
|
-
# def download_safe_apps(self, name: str="essentials"):
|
|
216
|
-
# # if platform.system().lower() == "windows":
|
|
217
|
-
# # from machineconfig.jobs.python.python_windows_installers_all import get_cli_py_installers
|
|
218
|
-
# # cli_installers = get_cli_py_installers()
|
|
219
|
-
# # elif platform.system().lower() == "linux":
|
|
220
|
-
# # from machineconfig.jobs.python.python_linux_installers_all import get_cli_py_installers
|
|
221
|
-
# # cli_installers = get_cli_py_installers()
|
|
222
|
-
# # else: raise NotImplementedError(f"Platform {platform.system().lower()} is not supported yet.")
|
|
223
|
-
|
|
224
|
-
# print(f"""
|
|
225
|
-
# {'=' * 150}
|
|
226
|
-
# 📥 DOWNLOAD | Downloading {len(self.data)} apps...
|
|
227
|
-
# {'=' * 150}
|
|
228
|
-
# """)
|
|
229
|
-
# print(self.data)
|
|
230
|
-
# app_urls = [item['app_url'] for item in self.data]
|
|
231
|
-
# from concurrent.futures import ThreadPoolExecutor
|
|
232
|
-
# with ThreadPoolExecutor(max_workers=20) as executor:
|
|
233
|
-
# _res = list(executor.map(precheckedPackages.install_cli_apps, app_urls))
|
|
234
|
-
# else:
|
|
235
|
-
# app_items = [item for item in self.data if item['app_name'] == name]
|
|
236
|
-
# if not app_items:
|
|
237
|
-
# raise ValueError(f"App '{name}' not found in data")
|
|
238
|
-
# app_url = app_items[0]['app_url']
|
|
239
|
-
# _res = precheckedPackages.install_cli_apps(app_url=app_url)
|
|
240
|
-
|
|
241
|
-
# # print("\n" * 3)
|
|
242
|
-
# # for item_flag, item_name in zip(res, self.df["app_name"]):
|
|
243
|
-
# # if item_flag: print(f"✅ {item_name} is installed. 😁")
|
|
244
|
-
# # else: print(f"❌ {item_name} failed to install for reasons explained in the log above, try manually.")
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
# if __name__ == '__main__':
|
|
248
|
-
# pass
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
"""
|
|
2
|
-
Installers do not add runtime files to the machine, hence this script.
|
|
3
|
-
"""
|
|
4
|
-
|
|
5
|
-
from machineconfig.utils.path_extended import PathExtended
|
|
6
|
-
from machineconfig.utils.installer_utils.installer_abc import WINDOWS_INSTALL_PATH
|
|
7
|
-
from typing import Optional
|
|
8
|
-
import platform
|
|
9
|
-
|
|
10
|
-
from machineconfig.utils.installer_utils.installer_abc import LINUX_INSTALL_PATH
|
|
11
|
-
from machineconfig.utils.installer_utils.installer_class import Installer
|
|
12
|
-
from rich.console import Console
|
|
13
|
-
from rich.panel import Panel
|
|
14
|
-
from machineconfig.utils.schemas.installer.installer_types import InstallerData
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
config_dict: InstallerData = {
|
|
18
|
-
"appName": "hx",
|
|
19
|
-
"repoURL": "CMD",
|
|
20
|
-
"doc": "Helix is a post-modern modal text editor.",
|
|
21
|
-
"fileNamePattern": {
|
|
22
|
-
"amd64": {
|
|
23
|
-
"linux": "hx-linux-amd64.tar.xz",
|
|
24
|
-
"macos": "hx-macos-amd64.tar.xz",
|
|
25
|
-
"windows": "hx-windows-amd64.zip",
|
|
26
|
-
},
|
|
27
|
-
"arm64": {
|
|
28
|
-
"linux": "hx-linux-arm64.tar.xz",
|
|
29
|
-
"macos": "hx-macos-arm64.tar.xz",
|
|
30
|
-
"windows": "hx-windows-arm64.zip",
|
|
31
|
-
},
|
|
32
|
-
},
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
def main(version: Optional[str], install_lib: bool = False):
|
|
37
|
-
console = Console()
|
|
38
|
-
|
|
39
|
-
console.print(Panel(f"HELIX EDITOR INSTALLER 🧬\nPlatform: {platform.system()}\nVersion: {'latest' if version is None else version}", title="Installer", expand=False))
|
|
40
|
-
|
|
41
|
-
config_dict_copy = config_dict.copy()
|
|
42
|
-
config_dict_copy["repoURL"] = "https://github.com/helix-editor/helix"
|
|
43
|
-
inst = Installer(installer_data=config_dict_copy)
|
|
44
|
-
|
|
45
|
-
print("\n📥 [Step 1/5] Downloading Helix editor...")
|
|
46
|
-
downloaded, _version_to_be_installed = inst.download(version=version)
|
|
47
|
-
print(" ✨ Download complete.")
|
|
48
|
-
|
|
49
|
-
print("\n🔍 [Step 2/5] Locating executable and components...")
|
|
50
|
-
if platform.system() == "Windows":
|
|
51
|
-
hx_file_search = downloaded.search("hx.exe", folders=False, files=True, r=True)
|
|
52
|
-
else:
|
|
53
|
-
hx_file_search = downloaded.search("hx", folders=False, files=True, r=True)
|
|
54
|
-
|
|
55
|
-
if not hx_file_search:
|
|
56
|
-
console.print(Panel("❌ ERROR: Could not find 'hx' executable in downloaded files.", title="Error", expand=False))
|
|
57
|
-
raise FileNotFoundError(f"Could not find 'hx' executable in {downloaded.name}")
|
|
58
|
-
|
|
59
|
-
assert len(hx_file_search) == 1, f"Expected 1 'hx' executable, found {len(hx_file_search)}"
|
|
60
|
-
hx_file = hx_file_search[0]
|
|
61
|
-
contrib = hx_file.parent / "contrib"
|
|
62
|
-
runtime = contrib.parent / "runtime"
|
|
63
|
-
|
|
64
|
-
if not runtime.exists():
|
|
65
|
-
console.print(Panel(f"❌ ERROR: 'runtime' directory not found at expected location: {runtime}", title="Error", expand=False))
|
|
66
|
-
raise FileNotFoundError(f"'runtime' directory not found at expected location: {runtime}")
|
|
67
|
-
if not contrib.exists():
|
|
68
|
-
console.print(Panel(f"❌ ERROR: 'contrib' directory not found at expected location: {contrib}", title="Error", expand=False))
|
|
69
|
-
raise FileNotFoundError(f"'contrib' directory not found at expected location: {contrib}")
|
|
70
|
-
print(" ✨ Executable and components located.")
|
|
71
|
-
|
|
72
|
-
print("\n🗑️ [Step 3/5] Cleaning up previous installation (if any)...")
|
|
73
|
-
runtime_path = PathExtended.home().joinpath(".config/helix/runtime")
|
|
74
|
-
contrib_path = PathExtended.home().joinpath(".config/helix/contrib")
|
|
75
|
-
runtime_path.delete(sure=True, verbose=False)
|
|
76
|
-
contrib_path.delete(sure=True, verbose=False)
|
|
77
|
-
print(f" ✨ Cleaned '{runtime_path}' and '{contrib_path}'.")
|
|
78
|
-
|
|
79
|
-
print("\n📦 [Step 4/5] Installing Helix components...")
|
|
80
|
-
target_config_dir = PathExtended.home().joinpath(".config/helix").expanduser()
|
|
81
|
-
target_config_dir.mkdir(parents=True, exist_ok=True)
|
|
82
|
-
|
|
83
|
-
if platform.system() in ["Linux", "Darwin"]:
|
|
84
|
-
target_bin_path = PathExtended(LINUX_INSTALL_PATH) if platform.system() == "Linux" else PathExtended("/usr/local/bin")
|
|
85
|
-
exe_name = "hx"
|
|
86
|
-
hx_file.move(folder=target_bin_path, overwrite=True)
|
|
87
|
-
if install_lib:
|
|
88
|
-
contrib.move(folder=target_config_dir, overwrite=True)
|
|
89
|
-
runtime.move(folder=target_config_dir, overwrite=True)
|
|
90
|
-
system_name = "Linux" if platform.system() == "Linux" else "macOS"
|
|
91
|
-
console.print(
|
|
92
|
-
Panel(
|
|
93
|
-
f"""✅ SUCCESS | Helix editor installed successfully on {system_name}!
|
|
94
|
-
|
|
95
|
-
📂 Executable: {target_bin_path / exe_name}
|
|
96
|
-
🔧 Config: {target_config_dir}""",
|
|
97
|
-
title="Success",
|
|
98
|
-
expand=False,
|
|
99
|
-
)
|
|
100
|
-
)
|
|
101
|
-
elif platform.system() == "Windows":
|
|
102
|
-
target_bin_path = PathExtended(WINDOWS_INSTALL_PATH)
|
|
103
|
-
exe_name = "hx.exe"
|
|
104
|
-
hx_file.move(folder=target_bin_path, overwrite=True)
|
|
105
|
-
if install_lib:
|
|
106
|
-
contrib.move(folder=target_config_dir, overwrite=True)
|
|
107
|
-
runtime.move(folder=target_config_dir, overwrite=True)
|
|
108
|
-
console.print(
|
|
109
|
-
Panel(
|
|
110
|
-
f"""✅ SUCCESS | Helix editor installed successfully on Windows!
|
|
111
|
-
📂 Executable: {target_bin_path / exe_name}
|
|
112
|
-
🔧 Config: {target_config_dir}""",
|
|
113
|
-
title="Success",
|
|
114
|
-
expand=False,
|
|
115
|
-
)
|
|
116
|
-
)
|
|
117
|
-
else:
|
|
118
|
-
console.print(
|
|
119
|
-
Panel(
|
|
120
|
-
f"""⚠️ WARNING | Unsupported operating system: {platform.system()}
|
|
121
|
-
| Installation aborted.""",
|
|
122
|
-
title="Warning",
|
|
123
|
-
expand=False,
|
|
124
|
-
)
|
|
125
|
-
)
|
|
126
|
-
print("\n🧹 [Step 5/5] Cleaning up temporary download files...")
|
|
127
|
-
downloaded.delete(sure=True)
|
|
128
|
-
print(" ✨ Cleanup complete.")
|
|
129
|
-
return f"Error: Unsupported OS: {platform.system()}"
|
|
130
|
-
|
|
131
|
-
print("\n🧹 [Step 5/5] Cleaning up temporary download files...")
|
|
132
|
-
downloaded.delete(sure=True)
|
|
133
|
-
print(" ✨ Cleanup complete.")
|
|
134
|
-
|
|
135
|
-
console.print(Panel("🎉 Installation Finished Successfully! 🎉", title="Finished", expand=False))
|
|
136
|
-
return ""
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
if __name__ == "__main__":
|
|
140
|
-
main(version=None)
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# 🐘 POSTGRESQL INSTALLATION SCRIPT 🐘
|
|
3
|
-
# This script installs PostgreSQL database on Ubuntu/Debian systems
|
|
4
|
-
# Reference: https://www.postgresql.org/download/linux/ubuntu/
|
|
5
|
-
|
|
6
|
-
echo """🚀 STARTING POSTGRESQL INSTALLATION | Setting up PostgreSQL database
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
# Install PostgreSQL common package
|
|
10
|
-
echo "📥 Installing PostgreSQL common package..."
|
|
11
|
-
sudo nala install postgresql-common -y
|
|
12
|
-
|
|
13
|
-
# Run the PostgreSQL repository setup script
|
|
14
|
-
echo "🔧 Setting up PostgreSQL repository..."
|
|
15
|
-
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y
|
|
16
|
-
|
|
17
|
-
# Install PostgreSQL 17
|
|
18
|
-
echo """📦 INSTALLING POSTGRESQL | Installing PostgreSQL 17
|
|
19
|
-
"""
|
|
20
|
-
sudo nala install postgresql-17 -y
|
|
21
|
-
# Alternative: sudo nala install postgresql -y
|
|
22
|
-
|
|
23
|
-
echo """✅ INSTALLATION COMPLETE | PostgreSQL has been installed successfully
|
|
24
|
-
"""
|
|
25
|
-
echo "ℹ️ PostgreSQL service should be running automatically"
|
|
26
|
-
echo "💡 Connect to default 'postgres' database with: sudo -u postgres psql"
|
|
27
|
-
echo "🔄 To check service status: sudo systemctl status postgresql"
|
|
28
|
-
|
|
29
|
-
# REMOVAL INSTRUCTIONS:
|
|
30
|
-
echo """#-----------------------------------------------------------------------
|
|
31
|
-
📝 NOTES | For future reference
|
|
32
|
-
#-----------------------------------------------------------------------
|
|
33
|
-
To remove PostgreSQL completely:
|
|
34
|
-
sudo apt-get --purge remove postgresql postgresql-*
|
|
35
|
-
"""
|
|
36
|
-
|
|
37
|
-
# Alternative installation method (commented out):
|
|
38
|
-
# sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $ubuntu_version-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
|
|
39
|
-
# curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg
|
|
40
|
-
# sudo nala update
|
|
41
|
-
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# ⏱️ TIMESCALEDB INSTALLATION SCRIPT ⏱️
|
|
3
|
-
# This script installs TimescaleDB on Ubuntu/Debian-based Linux distributions
|
|
4
|
-
# Reference: https://docs.timescale.com/self-hosted/latest/install/installation-linux/
|
|
5
|
-
|
|
6
|
-
echo """🔍 DETECTING SYSTEM | Identifying OS distribution version
|
|
7
|
-
"""
|
|
8
|
-
|
|
9
|
-
get_ubuntu_base_version() {
|
|
10
|
-
local os_codename=$(lsb_release -cs)
|
|
11
|
-
case "$os_codename" in
|
|
12
|
-
"wilma")
|
|
13
|
-
echo "noble" # Map Mint Wilma to the base image Ubuntu 24.04 LTS
|
|
14
|
-
;;
|
|
15
|
-
"virginia")
|
|
16
|
-
echo "jammy" # Map Mint Virginia to the base image Ubuntu 22.04 LTS
|
|
17
|
-
;;
|
|
18
|
-
*)
|
|
19
|
-
echo "$os_codename"
|
|
20
|
-
;;
|
|
21
|
-
esac
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
ubuntu_version=$(get_ubuntu_base_version)
|
|
25
|
-
echo "📋 Detected distribution: $ubuntu_version"
|
|
26
|
-
|
|
27
|
-
echo """🐘 INSTALLING POSTGRESQL | Setting up PostgreSQL dependencies
|
|
28
|
-
"""
|
|
29
|
-
|
|
30
|
-
# Add PostgreSQL repository setup
|
|
31
|
-
echo "🔧 Setting up PostgreSQL repository..."
|
|
32
|
-
sudo nala install postgresql-common -y
|
|
33
|
-
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y
|
|
34
|
-
|
|
35
|
-
echo """🔑 ADDING REPOSITORY KEYS | Setting up TimescaleDB repository
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
# Add TimescaleDB repository
|
|
39
|
-
echo "📝 Adding TimescaleDB repository to sources list..."
|
|
40
|
-
echo "deb https://packagecloud.io/timescale/timescaledb/ubuntu/ $ubuntu_version main" | sudo tee /etc/apt/sources.list.d/timescaledb.list
|
|
41
|
-
|
|
42
|
-
echo "🔐 Adding TimescaleDB GPG key..."
|
|
43
|
-
wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/timescaledb.gpg
|
|
44
|
-
|
|
45
|
-
echo """📦 INSTALLING TIMESCALEDB | Updating and installing packages
|
|
46
|
-
"""
|
|
47
|
-
|
|
48
|
-
# Update package lists
|
|
49
|
-
echo "🔄 Updating package lists..."
|
|
50
|
-
sudo nala update
|
|
51
|
-
|
|
52
|
-
# Install TimescaleDB with PostgreSQL 16
|
|
53
|
-
echo "📥 Installing PostgreSQL 16 and TimescaleDB..."
|
|
54
|
-
sudo nala install -y postgresql-16 postgresql-client-16 timescaledb-2-postgresql-16
|
|
55
|
-
|
|
56
|
-
echo """⚙️ CONFIGURING TIMESCALEDB | Optimizing database settings
|
|
57
|
-
"""
|
|
58
|
-
|
|
59
|
-
# Run TimescaleDB tuning tool
|
|
60
|
-
echo "🔧 Running TimescaleDB tuning utility..."
|
|
61
|
-
sudo timescaledb-tune
|
|
62
|
-
|
|
63
|
-
# Restart PostgreSQL service
|
|
64
|
-
echo "🔄 Restarting PostgreSQL service..."
|
|
65
|
-
sudo systemctl restart postgresql
|
|
66
|
-
|
|
67
|
-
echo """✅ INSTALLATION COMPLETE | TimescaleDB has been installed successfully
|
|
68
|
-
"""
|
|
69
|
-
echo "🚀 To connect to PostgreSQL, run: sudo -u postgres psql"
|
|
70
|
-
echo "💡 To enable TimescaleDB in a database, run: CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;"
|
|
71
|
-
echo "ℹ️ For more information, visit: https://docs.timescale.com/self-hosted/latest/install/"
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# install https://visualstudio.microsoft.com/visual-cpp-build-tools/
|
|
3
|
-
# include
|
|
4
|
-
# winget install Microsoft.VisualStudio.2022.BuildTools
|
|
5
|
-
# winget install Microsoft.VC++2015-2022Redist-x86
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
uv pip install --global-option=build_ext --global-option="-IC:\Program Files\Graphviz\include" --global-option="-LC:\Program Files\Graphviz\lib" pygraphviz
|
|
9
|
-
# not including the options as above (from https://pygraphviz.github.io/documentation/stable/install.html)
|
|
10
|
-
# would result in an error like this: pygraphviz/graphviz_wrap.c(2711): fatal error C1083: Cannot open include file: 'graphviz/cgraph.h': No such file or directory
|
|
11
|
-
|
|
12
|
-
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
$sshfile=""
|
|
3
|
-
$ErrorActionPreference = "Stop"
|
|
4
|
-
$sshd_dir = "$env:ProgramData\ssh"
|
|
5
|
-
cp "$sshd_dir\administrators_authorized_keys" "$sshd_dir\administrators_authorized_keys.orig"
|
|
6
|
-
Get-Content $sshfile >> "$sshd_dir\administrators_authorized_keys"
|
|
7
|
-
Restart-Service sshd -Force
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# This is the Windows equivalent of copy-ssh-id on Linux.
|
|
3
|
-
# Just like the original function, it is a convenient way of doing two things in one go:
|
|
4
|
-
# 1- copy a certain public key to the remote machine.
|
|
5
|
-
# scp ~/.ssh/id_rsa.pub $remote_user@$remote_host:~/.ssh/authorized_keys
|
|
6
|
-
# 2- Store the value on the remote in a file called .ssh/authorized_keys
|
|
7
|
-
# ssh $remote_user@$remote_host "echo $public_key >> ~/.ssh/authorized_keys"
|
|
8
|
-
# Idea from: https://www.chrisjhart.com/Windows-10-ssh-copy-id/
|
|
9
|
-
|
|
10
|
-
$key_value = cat ($env:USERPROFILE + "\.ssh\id_rsa.pub")
|
|
11
|
-
ssh $args[0] "powershell.exe -Command type $key_value >> .ssh/authorized_keys"
|
|
12
|
-
|
|
13
|
-
$my_keys='https://github.com/thisismygitrepo.keys'
|
|
14
|
-
(Invoke-WebRequest $my_keys).Content >> .ssh/authorized_keys
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
# locations to be backed up to the cloud.
|
|
3
|
-
|
|
4
|
-
[thunderbird_windows]
|
|
5
|
-
path = '~/AppData/Roaming/Thunderbird/Profiles'
|
|
6
|
-
encrypt = 'True'
|
|
7
|
-
zip = 'True'
|
|
8
|
-
rel2home = 'True'
|
|
9
|
-
os_specific = 'True'
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
[thunderbird_linux]
|
|
13
|
-
path = '~/.thunderbird'
|
|
14
|
-
encrypt = 'True'
|
|
15
|
-
zip = 'True'
|
|
16
|
-
rel2home = 'True'
|
|
17
|
-
os_specific = 'True'
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
[zoxide_windows]
|
|
21
|
-
path = '~/AppData/Local/zoxide/db.zo'
|
|
22
|
-
encrypt = 'False'
|
|
23
|
-
zip = 'False'
|
|
24
|
-
rel2home = 'True'
|
|
25
|
-
os_specific = 'True'
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
[zoxide_linux]
|
|
29
|
-
path = '~/.local/share/zoxide/db.zo'
|
|
30
|
-
encrypt = 'False'
|
|
31
|
-
zip = 'False'
|
|
32
|
-
rel2home = 'True'
|
|
33
|
-
os_specific = 'True'
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
#[dotfiles]
|
|
37
|
-
# path = '~/dotfiles'
|
|
38
|
-
# encrypt = 'True'
|
|
39
|
-
# zip = 'True'
|
|
40
|
-
# rel2home = 'True'
|
|
41
|
-
# os_specific = 'True'
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
[ipython]
|
|
45
|
-
path = '~/.ipython'
|
|
46
|
-
encrypt = 'True'
|
|
47
|
-
zip = 'True'
|
|
48
|
-
rel2home = 'True'
|
|
49
|
-
os_specific = 'False'
|