machineconfig 3.99__py3-none-any.whl → 7.66__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of machineconfig might be problematic. Click here for more details.
- machineconfig/__init__.py +0 -28
- machineconfig/cluster/remote/distribute.py +0 -1
- machineconfig/cluster/remote/file_manager.py +0 -2
- machineconfig/cluster/remote/script_execution.py +1 -2
- machineconfig/cluster/sessions_managers/{enhanced_command_runner.py → helpers/enhanced_command_runner.py} +4 -6
- machineconfig/cluster/sessions_managers/helpers/load_balancer_helper.py +145 -0
- machineconfig/cluster/sessions_managers/utils/load_balancer.py +53 -0
- machineconfig/cluster/sessions_managers/utils/maker.py +69 -0
- machineconfig/cluster/sessions_managers/wt_local.py +128 -330
- machineconfig/cluster/sessions_managers/wt_local_manager.py +53 -187
- machineconfig/cluster/sessions_managers/wt_remote.py +51 -43
- machineconfig/cluster/sessions_managers/wt_remote_manager.py +49 -197
- machineconfig/cluster/sessions_managers/wt_utils/layout_generator.py +6 -19
- machineconfig/cluster/sessions_managers/wt_utils/manager_persistence.py +52 -0
- machineconfig/cluster/sessions_managers/wt_utils/monitoring_helpers.py +50 -0
- machineconfig/cluster/sessions_managers/wt_utils/status_reporter.py +4 -2
- machineconfig/cluster/sessions_managers/wt_utils/status_reporting.py +76 -0
- machineconfig/cluster/sessions_managers/wt_utils/wt_helpers.py +199 -0
- machineconfig/cluster/sessions_managers/zellij_local.py +81 -375
- machineconfig/cluster/sessions_managers/zellij_local_manager.py +22 -172
- machineconfig/cluster/sessions_managers/zellij_remote.py +40 -41
- machineconfig/cluster/sessions_managers/zellij_remote_manager.py +13 -10
- machineconfig/cluster/sessions_managers/zellij_utils/example_usage.py +4 -8
- machineconfig/cluster/sessions_managers/zellij_utils/layout_generator.py +5 -20
- machineconfig/cluster/sessions_managers/zellij_utils/process_monitor.py +3 -9
- machineconfig/cluster/sessions_managers/zellij_utils/status_reporter.py +3 -1
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper.py +298 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_restart.py +77 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_helper_with_panes.py +228 -0
- machineconfig/cluster/sessions_managers/zellij_utils/zellij_local_manager_helper.py +165 -0
- machineconfig/jobs/{python → installer}/check_installations.py +2 -16
- machineconfig/jobs/installer/custom/boxes.py +61 -0
- machineconfig/jobs/installer/custom/gh.py +69 -53
- machineconfig/jobs/installer/custom/hx.py +77 -20
- machineconfig/jobs/installer/custom_dev/alacritty.py +45 -30
- machineconfig/jobs/installer/custom_dev/brave.py +43 -35
- machineconfig/jobs/installer/custom_dev/bypass_paywall.py +31 -20
- machineconfig/jobs/installer/custom_dev/cloudflare_warp_cli.py +23 -0
- machineconfig/jobs/installer/custom_dev/code.py +33 -21
- machineconfig/jobs/installer/custom_dev/dubdb_adbc.py +30 -0
- machineconfig/jobs/installer/custom_dev/espanso.py +64 -41
- machineconfig/jobs/installer/custom_dev/goes.py +41 -36
- machineconfig/jobs/installer/custom_dev/lvim.py +49 -33
- machineconfig/jobs/installer/custom_dev/nerdfont.py +71 -47
- machineconfig/jobs/installer/custom_dev/nerfont_windows_helper.py +32 -26
- machineconfig/jobs/installer/custom_dev/redis.py +51 -33
- machineconfig/jobs/installer/custom_dev/sysabc.py +119 -0
- machineconfig/jobs/installer/custom_dev/wezterm.py +55 -39
- machineconfig/jobs/installer/custom_dev/winget.py +1 -0
- machineconfig/jobs/installer/installer_data.json +3406 -0
- 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/ngrok.sh +6 -0
- machineconfig/jobs/installer/linux_scripts/q.sh +9 -0
- 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 +255 -0
- machineconfig/logger.py +0 -1
- machineconfig/profile/backup.toml +49 -0
- machineconfig/profile/bash_shell_profiles.md +11 -0
- machineconfig/profile/create_helper.py +74 -0
- machineconfig/profile/create_links.py +288 -0
- machineconfig/profile/create_links_export.py +100 -0
- machineconfig/profile/create_shell_profile.py +136 -0
- machineconfig/profile/mapper.toml +258 -0
- machineconfig/scripts/Restore-ThunderbirdProfile.ps1 +92 -0
- machineconfig/scripts/__init__.py +0 -4
- machineconfig/scripts/linux/{share_cloud.sh → other/share_cloud.sh} +14 -25
- machineconfig/scripts/linux/wrap_mcfg +47 -0
- machineconfig/scripts/nu/wrap_mcfg.nu +69 -0
- machineconfig/scripts/python/agents.py +198 -0
- machineconfig/scripts/python/ai/command_runner/command_runner.sh +9 -0
- machineconfig/scripts/python/ai/command_runner/prompt.txt +9 -0
- machineconfig/scripts/python/ai/generate_files.py +307 -42
- machineconfig/scripts/python/ai/initai.py +3 -28
- 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/instructions/python/dev.instructions.md +1 -1
- machineconfig/scripts/python/ai/solutions/copilot/prompts/pyright_fix.md +16 -0
- machineconfig/scripts/python/ai/solutions/generic.py +27 -4
- machineconfig/scripts/python/ai/vscode_tasks.py +37 -0
- machineconfig/scripts/python/cloud.py +29 -0
- machineconfig/scripts/python/croshell.py +117 -181
- machineconfig/scripts/python/define.py +31 -0
- machineconfig/scripts/python/devops.py +44 -124
- machineconfig/scripts/python/devops_navigator.py +10 -0
- machineconfig/scripts/python/env_manager/__init__.py +1 -0
- machineconfig/scripts/python/env_manager/path_manager_backend.py +47 -0
- machineconfig/scripts/python/env_manager/path_manager_tui.py +228 -0
- machineconfig/scripts/python/explore.py +49 -0
- machineconfig/scripts/python/fire_jobs.py +106 -244
- machineconfig/scripts/python/ftpx.py +125 -68
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.json +14 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_crush.py +37 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_cursor_agents.py +22 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_gemini.py +42 -0
- machineconfig/scripts/python/helpers_agents/agentic_frameworks/fire_qwen.py +30 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_help_launch.py +110 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_helper_types.py +34 -0
- machineconfig/scripts/python/helpers_agents/fire_agents_load_balancer.py +22 -0
- machineconfig/scripts/python/helpers_agents/templates/prompt.txt +6 -0
- machineconfig/scripts/python/helpers_agents/templates/template.ps1 +14 -0
- machineconfig/scripts/python/helpers_agents/templates/template.sh +24 -0
- machineconfig/scripts/python/{cloud_copy.py → helpers_cloud/cloud_copy.py} +30 -23
- machineconfig/scripts/python/{cloud_mount.py → helpers_cloud/cloud_mount.py} +11 -19
- machineconfig/scripts/python/{cloud_sync.py → helpers_cloud/cloud_sync.py} +12 -18
- machineconfig/scripts/python/{helpers → helpers_cloud}/helpers2.py +3 -3
- machineconfig/scripts/python/helpers_croshell/crosh.py +39 -0
- machineconfig/scripts/python/{start_slidev.py → helpers_croshell/start_slidev.py} +17 -7
- machineconfig/scripts/python/helpers_devops/cli_config.py +95 -0
- machineconfig/scripts/python/helpers_devops/cli_config_dotfile.py +89 -0
- machineconfig/scripts/python/helpers_devops/cli_data.py +25 -0
- machineconfig/scripts/python/helpers_devops/cli_nw.py +134 -0
- machineconfig/scripts/python/helpers_devops/cli_repos.py +182 -0
- machineconfig/scripts/python/helpers_devops/cli_self.py +134 -0
- machineconfig/scripts/python/helpers_devops/cli_share_file.py +137 -0
- machineconfig/scripts/python/helpers_devops/cli_share_server.py +141 -0
- machineconfig/scripts/python/helpers_devops/cli_terminal.py +156 -0
- machineconfig/scripts/python/helpers_devops/cli_utils.py +96 -0
- machineconfig/scripts/python/{devops_backup_retrieve.py → helpers_devops/devops_backup_retrieve.py} +7 -10
- machineconfig/scripts/python/helpers_devops/devops_status.py +511 -0
- machineconfig/scripts/python/helpers_devops/devops_update_repos.py +269 -0
- machineconfig/scripts/python/helpers_devops/themes/choose_pwsh_theme.ps1 +81 -0
- machineconfig/scripts/python/helpers_devops/themes/choose_starship_theme.bash +3 -0
- machineconfig/scripts/python/{choose_wezterm_theme.py → helpers_devops/themes/choose_wezterm_theme.py} +2 -2
- machineconfig/scripts/python/helpers_fire_command/__init__.py +0 -0
- machineconfig/scripts/python/{helpers/helpers4.py → helpers_fire_command/file_wrangler.py} +57 -87
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_args_helper.py +145 -0
- machineconfig/scripts/python/helpers_fire_command/fire_jobs_route_helper.py +110 -0
- machineconfig/scripts/python/helpers_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}/fzfag +1 -1
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfg +1 -1
- machineconfig/scripts/{linux → python/helpers_msearch/scripts_linux}/fzfrga +1 -1
- machineconfig/scripts/python/helpers_navigator/__init__.py +20 -0
- machineconfig/scripts/python/helpers_navigator/command_builder.py +111 -0
- machineconfig/scripts/python/helpers_navigator/command_detail.py +44 -0
- machineconfig/scripts/python/helpers_navigator/command_tree.py +588 -0
- machineconfig/scripts/python/helpers_navigator/data_models.py +28 -0
- machineconfig/scripts/python/helpers_navigator/main_app.py +272 -0
- machineconfig/scripts/python/helpers_navigator/search_bar.py +15 -0
- machineconfig/scripts/python/helpers_repos/action.py +209 -0
- machineconfig/scripts/python/helpers_repos/action_helper.py +150 -0
- machineconfig/scripts/python/{repos_helper_clone.py → helpers_repos/clone.py} +6 -7
- machineconfig/scripts/python/helpers_repos/cloud_repo_sync.py +218 -0
- machineconfig/scripts/python/helpers_repos/count_lines.py +348 -0
- machineconfig/scripts/python/helpers_repos/count_lines_frontend.py +17 -0
- machineconfig/scripts/python/helpers_repos/entrypoint.py +77 -0
- machineconfig/scripts/python/helpers_repos/grource.py +340 -0
- machineconfig/scripts/python/{repos_helper_record.py → helpers_repos/record.py} +7 -4
- machineconfig/scripts/python/helpers_repos/sync.py +66 -0
- machineconfig/scripts/python/{repos_helper_update.py → helpers_repos/update.py} +3 -3
- machineconfig/scripts/python/helpers_sessions/__init__.py +0 -0
- machineconfig/scripts/python/helpers_sessions/sessions_multiprocess.py +58 -0
- machineconfig/scripts/python/helpers_utils/download.py +152 -0
- machineconfig/scripts/python/helpers_utils/path.py +108 -0
- machineconfig/scripts/python/interactive.py +79 -160
- machineconfig/scripts/python/machineconfig.py +63 -0
- machineconfig/scripts/python/msearch.py +21 -0
- machineconfig/scripts/python/nw/__init__.py +0 -0
- machineconfig/scripts/python/{devops_add_identity.py → nw/devops_add_identity.py} +1 -3
- machineconfig/scripts/python/{devops_add_ssh_key.py → nw/devops_add_ssh_key.py} +74 -44
- machineconfig/scripts/{linux → python/nw}/mount_nfs +1 -1
- machineconfig/scripts/python/{mount_nfs.py → nw/mount_nfs.py} +19 -16
- machineconfig/scripts/{linux → python/nw}/mount_nw_drive +1 -2
- machineconfig/scripts/python/{mount_ssh.py → nw/mount_ssh.py} +7 -8
- machineconfig/scripts/python/{onetimeshare.py → nw/onetimeshare.py} +0 -1
- machineconfig/scripts/python/nw/ssh_debug_linux.py +391 -0
- machineconfig/scripts/python/nw/ssh_debug_windows.py +338 -0
- machineconfig/scripts/python/{wifi_conn.py → nw/wifi_conn.py} +1 -53
- machineconfig/scripts/python/{wsl_windows_transfer.py → nw/wsl_windows_transfer.py} +6 -5
- machineconfig/scripts/python/sessions.py +167 -0
- machineconfig/scripts/python/terminal.py +127 -0
- machineconfig/scripts/python/utils.py +66 -0
- machineconfig/scripts/windows/{mount_nfs.ps1 → mounts/mount_nfs.ps1} +1 -3
- machineconfig/scripts/windows/{mount_ssh.ps1 → mounts/mount_ssh.ps1} +1 -1
- machineconfig/scripts/windows/{share_smb.ps1 → mounts/share_smb.ps1} +0 -6
- machineconfig/scripts/windows/wrap_mcfg.ps1 +60 -0
- machineconfig/settings/broot/br.sh +0 -4
- machineconfig/settings/broot/conf.toml +1 -1
- machineconfig/settings/helix/config.toml +16 -0
- machineconfig/settings/helix/languages.toml +13 -4
- machineconfig/settings/helix/yazi-picker.sh +12 -0
- machineconfig/settings/lf/linux/exe/lfcd.sh +1 -0
- machineconfig/settings/lf/linux/exe/previewer.sh +9 -3
- machineconfig/settings/lf/linux/lfrc +10 -12
- machineconfig/settings/lf/windows/fzf_edit.ps1 +2 -2
- machineconfig/settings/lf/windows/lfrc +18 -38
- machineconfig/settings/lf/windows/mkfile.ps1 +1 -1
- machineconfig/settings/linters/.ruff.toml +1 -1
- machineconfig/settings/lvim/windows/archive/config_additional.lua +0 -6
- machineconfig/settings/marimo/marimo.toml +80 -0
- machineconfig/settings/marimo/snippets/globalize.py +34 -0
- machineconfig/settings/pistol/pistol.conf +1 -1
- machineconfig/settings/shells/bash/init.sh +55 -31
- machineconfig/settings/shells/nushell/config.nu +1 -34
- machineconfig/settings/shells/nushell/init.nu +127 -0
- machineconfig/settings/shells/pwsh/init.ps1 +60 -43
- machineconfig/settings/shells/starship/starship.toml +16 -0
- machineconfig/settings/shells/wezterm/wezterm.lua +2 -0
- machineconfig/settings/shells/wt/settings.json +32 -17
- machineconfig/settings/shells/zsh/init.sh +89 -0
- machineconfig/settings/svim/linux/init.toml +0 -4
- machineconfig/settings/svim/windows/init.toml +0 -3
- machineconfig/settings/yazi/init.lua +57 -0
- machineconfig/settings/yazi/keymap_linux.toml +79 -0
- machineconfig/settings/yazi/keymap_windows.toml +78 -0
- machineconfig/settings/yazi/shell/yazi_cd.ps1 +33 -0
- machineconfig/settings/yazi/shell/yazi_cd.sh +8 -0
- machineconfig/settings/yazi/yazi.toml +13 -0
- machineconfig/setup_linux/__init__.py +10 -0
- machineconfig/setup_linux/apps_desktop.sh +89 -0
- machineconfig/setup_linux/apps_gui.sh +64 -0
- machineconfig/setup_linux/{nix → others}/cli_installation.sh +9 -29
- machineconfig/setup_linux/ssh/openssh_all.sh +25 -0
- machineconfig/setup_linux/ssh/openssh_wsl.sh +38 -0
- machineconfig/setup_linux/uv.sh +15 -0
- machineconfig/setup_linux/web_shortcuts/interactive.sh +26 -6
- machineconfig/setup_mac/__init__.py +16 -0
- machineconfig/setup_mac/apps_gui.sh +248 -0
- machineconfig/setup_mac/ssh/openssh_setup.sh +114 -0
- machineconfig/setup_mac/uv.sh +36 -0
- machineconfig/setup_windows/__init__.py +8 -0
- machineconfig/setup_windows/others/power_options.ps1 +7 -0
- machineconfig/setup_windows/ssh/add-sshkey.ps1 +29 -0
- machineconfig/setup_windows/ssh/add_identity.ps1 +11 -0
- machineconfig/setup_windows/ssh/openssh-server.ps1 +37 -0
- machineconfig/setup_windows/uv.ps1 +10 -0
- machineconfig/setup_windows/web_shortcuts/interactive.ps1 +27 -9
- machineconfig/setup_windows/web_shortcuts/quick_init.ps1 +16 -0
- machineconfig/setup_windows/wt_and_pwsh/set_wt_settings.py +37 -23
- machineconfig/utils/accessories.py +7 -5
- machineconfig/utils/cloud/onedrive/README.md +139 -0
- machineconfig/utils/code.py +140 -93
- machineconfig/utils/files/art/fat_croco.txt +10 -0
- machineconfig/utils/files/art/halfwit_croco.txt +9 -0
- machineconfig/utils/files/art/happy_croco.txt +22 -0
- machineconfig/utils/files/art/water_croco.txt +11 -0
- machineconfig/utils/files/ascii_art.py +118 -0
- machineconfig/utils/files/dbms.py +257 -0
- machineconfig/utils/files/headers.py +68 -0
- machineconfig/utils/files/ouch/__init__.py +0 -0
- machineconfig/utils/files/ouch/decompress.py +45 -0
- machineconfig/utils/files/read.py +95 -0
- machineconfig/utils/installer_utils/github_release_bulk.py +2 -12
- machineconfig/utils/installer_utils/installer_class.py +68 -126
- machineconfig/utils/installer_utils/installer_cli.py +181 -0
- machineconfig/utils/installer_utils/{installer_abc.py → installer_locator_utils.py} +38 -85
- machineconfig/utils/{installer.py → installer_utils/installer_runner.py} +69 -69
- machineconfig/utils/io.py +77 -23
- machineconfig/utils/links.py +309 -100
- machineconfig/utils/meta.py +255 -0
- machineconfig/utils/notifications.py +1 -1
- machineconfig/utils/options.py +10 -25
- machineconfig/utils/path_extended.py +94 -104
- machineconfig/utils/path_helper.py +75 -22
- machineconfig/utils/procs.py +50 -74
- machineconfig/utils/scheduler.py +94 -97
- machineconfig/utils/scheduling.py +0 -3
- machineconfig/utils/schemas/fire_agents/fire_agents_input.py +5 -17
- machineconfig/utils/schemas/installer/installer_types.py +0 -1
- machineconfig/utils/schemas/layouts/layout_types.py +2 -1
- machineconfig/utils/source_of_truth.py +3 -6
- machineconfig/utils/ssh.py +742 -254
- machineconfig/utils/ssh_utils/utils.py +0 -0
- machineconfig/utils/terminal.py +3 -140
- machineconfig/utils/tst.py +20 -0
- machineconfig/utils/upgrade_packages.py +109 -28
- machineconfig/utils/ve.py +13 -5
- machineconfig-7.66.dist-info/METADATA +124 -0
- machineconfig-7.66.dist-info/RECORD +451 -0
- machineconfig-7.66.dist-info/entry_points.txt +15 -0
- machineconfig/cluster/templates/utils.py +0 -51
- machineconfig/jobs/installer/linux_scripts/pgsql.sh +0 -49
- machineconfig/jobs/installer/linux_scripts/timescaledb.sh +0 -85
- machineconfig/jobs/installer/packages_custom_dev.json +0 -226
- machineconfig/jobs/installer/packages_custom_essential.json +0 -39
- machineconfig/jobs/installer/packages_github_dev.json +0 -1110
- machineconfig/jobs/installer/packages_github_essential.json +0 -804
- machineconfig/jobs/linux/msc/cli_agents.sh +0 -37
- machineconfig/jobs/python/create_bootable_media.py +0 -16
- machineconfig/jobs/python/python_cargo_build_share.py +0 -59
- machineconfig/jobs/python/python_ve_symlink.py +0 -29
- machineconfig/jobs/python/tasks.py +0 -3
- machineconfig/jobs/python/vscode/api.py +0 -49
- machineconfig/jobs/python/vscode/sync_code.py +0 -58
- 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 -170
- machineconfig/profile/shell.py +0 -176
- machineconfig/scripts/cloud/init.sh +0 -119
- machineconfig/scripts/linux/choose_wezterm_theme +0 -3
- machineconfig/scripts/linux/cloud_copy +0 -2
- machineconfig/scripts/linux/cloud_mount +0 -2
- machineconfig/scripts/linux/cloud_repo_sync +0 -2
- machineconfig/scripts/linux/cloud_sync +0 -2
- machineconfig/scripts/linux/croshell +0 -3
- machineconfig/scripts/linux/devops +0 -2
- machineconfig/scripts/linux/fire +0 -2
- machineconfig/scripts/linux/fire_agents +0 -2
- machineconfig/scripts/linux/ftpx +0 -2
- machineconfig/scripts/linux/fzf2g +0 -21
- machineconfig/scripts/linux/fzffg +0 -25
- machineconfig/scripts/linux/gh_models +0 -2
- machineconfig/scripts/linux/initai +0 -2
- machineconfig/scripts/linux/kill_process +0 -2
- machineconfig/scripts/linux/programs +0 -21
- machineconfig/scripts/linux/repos +0 -2
- machineconfig/scripts/linux/scheduler +0 -2
- machineconfig/scripts/linux/share_smb +0 -1
- machineconfig/scripts/linux/start_slidev +0 -2
- machineconfig/scripts/linux/start_terminals +0 -3
- machineconfig/scripts/linux/warp-cli.sh +0 -122
- machineconfig/scripts/linux/wifi_conn +0 -2
- machineconfig/scripts/linux/z_ls +0 -104
- machineconfig/scripts/python/ai/solutions/copilot/prompts/allLintersAndTypeCheckers.prompt.md +0 -5
- machineconfig/scripts/python/cloud_repo_sync.py +0 -186
- machineconfig/scripts/python/devops_devapps_install.py +0 -159
- machineconfig/scripts/python/devops_update_repos.py +0 -180
- machineconfig/scripts/python/dotfile.py +0 -52
- machineconfig/scripts/python/fire_agents.py +0 -175
- machineconfig/scripts/python/fire_agents_help_launch.py +0 -143
- machineconfig/scripts/python/fire_agents_load_balancer.py +0 -50
- machineconfig/scripts/python/fire_jobs_args_helper.py +0 -75
- machineconfig/scripts/python/fire_jobs_layout_helper.py +0 -74
- machineconfig/scripts/python/get_zellij_cmd.py +0 -15
- machineconfig/scripts/python/gh_models.py +0 -104
- machineconfig/scripts/python/helpers/repo_sync_helpers.py +0 -114
- machineconfig/scripts/python/repos.py +0 -80
- machineconfig/scripts/python/repos_helper_action.py +0 -335
- machineconfig/scripts/python/share_terminal.py +0 -104
- 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/choose_wezterm_theme.ps1 +0 -1
- machineconfig/scripts/windows/cloud_copy.ps1 +0 -1
- machineconfig/scripts/windows/cloud_mount.ps1 +0 -1
- machineconfig/scripts/windows/cloud_repo_sync.ps1 +0 -1
- machineconfig/scripts/windows/cloud_sync.ps1 +0 -1
- machineconfig/scripts/windows/croshell.ps1 +0 -1
- machineconfig/scripts/windows/devops.ps1 +0 -1
- machineconfig/scripts/windows/dotfile.ps1 +0 -1
- machineconfig/scripts/windows/fire.ps1 +0 -1
- machineconfig/scripts/windows/ftpx.ps1 +0 -1
- machineconfig/scripts/windows/gpt.ps1 +0 -1
- machineconfig/scripts/windows/grep.ps1 +0 -2
- machineconfig/scripts/windows/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/repos.ps1 +0 -1
- machineconfig/scripts/windows/scheduler.ps1 +0 -1
- machineconfig/scripts/windows/snapshot.ps1 +0 -1
- machineconfig/scripts/windows/start_slidev.ps1 +0 -1
- machineconfig/scripts/windows/start_terminals.ps1 +0 -1
- machineconfig/scripts/windows/wifi_conn.ps1 +0 -2
- machineconfig/scripts/windows/wsl_rdp_windows_port_forwarding.ps1 +0 -46
- machineconfig/scripts/windows/wsl_ssh_windows_port_forwarding.ps1 +0 -76
- machineconfig/settings/lf/linux/exe/fzf_nano.sh +0 -16
- machineconfig/setup_linux/others/openssh-server_add_pub_key.sh +0 -57
- machineconfig/setup_linux/web_shortcuts/ascii_art.sh +0 -93
- machineconfig/setup_linux/web_shortcuts/croshell.sh +0 -11
- machineconfig/setup_linux/web_shortcuts/ssh.sh +0 -52
- machineconfig/setup_windows/web_shortcuts/all.ps1 +0 -18
- machineconfig/setup_windows/web_shortcuts/ascii_art.ps1 +0 -36
- machineconfig/setup_windows/web_shortcuts/croshell.ps1 +0 -16
- machineconfig/setup_windows/web_shortcuts/ssh.ps1 +0 -11
- machineconfig/utils/ai/generate_file_checklist.py +0 -68
- machineconfig-3.99.dist-info/METADATA +0 -167
- machineconfig-3.99.dist-info/RECORD +0 -409
- machineconfig-3.99.dist-info/entry_points.txt +0 -18
- machineconfig/cluster/{templates → remote}/run_cloud.py +0 -0
- machineconfig/cluster/{templates → remote}/run_cluster.py +0 -0
- machineconfig/cluster/{templates → remote}/run_remote.py +0 -0
- machineconfig/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/helpers_agents}/__init__.py +0 -0
- machineconfig/scripts/python/{helpers → helpers_agents/agentic_frameworks}/__init__.py +0 -0
- machineconfig/scripts/python/{fire_agents_help_search.py → helpers_agents/fire_agents_help_search.py} +0 -0
- machineconfig/{jobs/windows/msc/cli_agents.bat → scripts/python/helpers_cloud/__init__.py} +0 -0
- machineconfig/scripts/python/{helpers → helpers_cloud}/cloud_helpers.py +1 -1
- /machineconfig/scripts/python/{helpers → helpers_cloud}/helpers5.py +0 -0
- /machineconfig/{jobs/windows/msc/cli_agents.ps1 → scripts/python/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/python/{fire_jobs_streamlit_helper.py → helpers_devops/__init__.py} +0 -0
- /machineconfig/scripts/{windows/share_nfs.ps1 → 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_msearch/scripts_linux}/skrg +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfb.ps1 +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfg.ps1 +0 -0
- /machineconfig/scripts/{windows → python/helpers_msearch/scripts_windows}/fzfrga.bat +0 -0
- /machineconfig/scripts/{linux → python/nw}/mount_drive +0 -0
- /machineconfig/scripts/python/{mount_nw_drive.py → nw/mount_nw_drive.py} +0 -0
- /machineconfig/scripts/{linux → python/nw}/mount_smb +0 -0
- /machineconfig/scripts/windows/{mount_nw.ps1 → mounts/mount_nw.ps1} +0 -0
- /machineconfig/scripts/windows/{mount_smb.ps1 → mounts/mount_smb.ps1} +0 -0
- /machineconfig/scripts/windows/{share_cloud.cmd → mounts/share_cloud.cmd} +0 -0
- /machineconfig/scripts/windows/{unlock_bitlocker.ps1 → mounts/unlock_bitlocker.ps1} +0 -0
- /machineconfig/setup_linux/{web_shortcuts → others}/android.sh +0 -0
- /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_add_key.ps1 +0 -0
- /machineconfig/{jobs/windows/archive → setup_windows/ssh}/openssh-server_copy-ssh-id.ps1 +0 -0
- {machineconfig-3.99.dist-info → machineconfig-7.66.dist-info}/WHEEL +0 -0
- {machineconfig-3.99.dist-info → machineconfig-7.66.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import typer
|
|
2
|
+
from typing import Annotated
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
def strip_ansi_codes(text: str) -> str:
|
|
6
|
+
"""Remove ANSI color codes from text."""
|
|
7
|
+
import re
|
|
8
|
+
return re.sub(r'\x1b\[[0-9;]*[a-zA-Z]', '', text)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def choose_zellij_session(
|
|
12
|
+
new_session: Annotated[bool, typer.Option("--new-session", "-n", help="Create a new Zellij session instead of attaching to an existing one.", show_default=True)] = False,
|
|
13
|
+
kill_all: Annotated[bool, typer.Option("--kill-all", "-k", help="Kill all existing Zellij sessions before creating a new one.", show_default=True)] = False):
|
|
14
|
+
|
|
15
|
+
if new_session:
|
|
16
|
+
cmd = """
|
|
17
|
+
zellij --layout st2
|
|
18
|
+
"""
|
|
19
|
+
if kill_all:
|
|
20
|
+
cmd = f"""zellij kill-sessions
|
|
21
|
+
{cmd}"""
|
|
22
|
+
from machineconfig.utils.code import exit_then_run_shell_script
|
|
23
|
+
exit_then_run_shell_script(script=cmd, strict=True)
|
|
24
|
+
typer.Exit()
|
|
25
|
+
return
|
|
26
|
+
cmd = "zellij list-sessions"
|
|
27
|
+
import subprocess
|
|
28
|
+
sessions: list[str] = subprocess.check_output(cmd, shell=True).decode().strip().split("\n")
|
|
29
|
+
# filter out empty lines and keep raw lines (they contain creation info)
|
|
30
|
+
sessions = [s for s in sessions if s.strip()]
|
|
31
|
+
sessions.sort(key=lambda s: "EXITED" in s)
|
|
32
|
+
if "current" in sessions:
|
|
33
|
+
print("Already in a Zellij session, avoiding nesting and exiting.")
|
|
34
|
+
raise typer.Exit()
|
|
35
|
+
if len(sessions) == 0:
|
|
36
|
+
print("No Zellij sessions found, creating a new one.")
|
|
37
|
+
result = """zellij --layout st2"""
|
|
38
|
+
elif len(sessions) == 1:
|
|
39
|
+
session = sessions[0].split(" [Created")[0]
|
|
40
|
+
print(f"Only one Zellij session found: {session}, attaching to it.")
|
|
41
|
+
result = f"zellij attach {session}"
|
|
42
|
+
else:
|
|
43
|
+
from machineconfig.utils.options import choose_from_options
|
|
44
|
+
# Artificially inject a "NEW SESSION" option so the user can create one from the list
|
|
45
|
+
NEW_SESSION_LABEL = "NEW SESSION"
|
|
46
|
+
options = [NEW_SESSION_LABEL] + sessions
|
|
47
|
+
session = choose_from_options(msg="Choose a Zellij session to attach to:", multi=False, options=options, fzf=True)
|
|
48
|
+
# If the user chose the artificial option, start a new session (same as --new-session)
|
|
49
|
+
if session == NEW_SESSION_LABEL:
|
|
50
|
+
cmd = "zellij --layout st2"
|
|
51
|
+
if kill_all:
|
|
52
|
+
cmd = f"zellij kill-sessions\n{cmd}"
|
|
53
|
+
from machineconfig.utils.code import exit_then_run_shell_script
|
|
54
|
+
exit_then_run_shell_script(cmd, strict=True)
|
|
55
|
+
raise typer.Exit()
|
|
56
|
+
session = session.split(" [Created")[0]
|
|
57
|
+
result = f"zellij attach {session}"
|
|
58
|
+
from machineconfig.utils.code import exit_then_run_shell_script
|
|
59
|
+
exit_then_run_shell_script(result, strict=True)
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
def get_session_tabs() -> list[tuple[str, str]]:
|
|
64
|
+
cmd = "zellij list-sessions"
|
|
65
|
+
import subprocess
|
|
66
|
+
sessions: list[str] = subprocess.check_output(cmd, shell=True).decode().strip().split("\n")
|
|
67
|
+
sessions = [strip_ansi_codes(s) for s in sessions]
|
|
68
|
+
active_sessions = [s for s in sessions if "EXITED" not in s]
|
|
69
|
+
result: list[tuple[str, str]] = []
|
|
70
|
+
for session_line in active_sessions:
|
|
71
|
+
session_name = session_line.split(" [Created")[0].strip()
|
|
72
|
+
# Query tab names for the session
|
|
73
|
+
tab_cmd = f"zellij --session {session_name} action query-tab-names"
|
|
74
|
+
try:
|
|
75
|
+
tabs: list[str] = subprocess.check_output(tab_cmd, shell=True).decode().strip().split("\n")
|
|
76
|
+
for tab in tabs:
|
|
77
|
+
if tab.strip():
|
|
78
|
+
result.append((session_name, tab.strip()))
|
|
79
|
+
except subprocess.CalledProcessError:
|
|
80
|
+
# Skip if query fails
|
|
81
|
+
continue
|
|
82
|
+
print(result)
|
|
83
|
+
return result
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
def start_wt(layout_name: Annotated[str, typer.Argument(help="Layout name to start.")]):
|
|
87
|
+
from pathlib import Path
|
|
88
|
+
layouts_file = Path.home().joinpath("dotfiles/machineconfig/layouts.json")
|
|
89
|
+
if not layouts_file.exists():
|
|
90
|
+
typer.echo(f"❌ Layouts file not found: {layouts_file}")
|
|
91
|
+
# available
|
|
92
|
+
raise typer.Exit(code=1)
|
|
93
|
+
import json
|
|
94
|
+
from machineconfig.utils.schemas.layouts.layout_types import LayoutsFile
|
|
95
|
+
layouts_data: LayoutsFile = json.loads(layouts_file.read_text(encoding="utf-8"))
|
|
96
|
+
chosen_layout = next((a_layout for a_layout in layouts_data["layouts"] if a_layout["layoutName"] == layout_name), None)
|
|
97
|
+
if not chosen_layout:
|
|
98
|
+
typer.echo(f"❌ Layout '{layout_name}' not found in layouts file.")
|
|
99
|
+
available_layouts = [a_layout["layoutName"] for a_layout in layouts_data["layouts"]]
|
|
100
|
+
typer.echo(f"Available layouts: {', '.join(available_layouts)}")
|
|
101
|
+
raise typer.Exit(code=1)
|
|
102
|
+
from machineconfig.cluster.sessions_managers.wt_local import run_wt_layout
|
|
103
|
+
run_wt_layout(layout_config=chosen_layout)
|
|
104
|
+
# cmd = f'powershell -ExecutionPolicy Bypass -File "./{layout_name}_layout.ps1"'
|
|
105
|
+
# from machineconfig.utils.code import exit_then_run_shell_script
|
|
106
|
+
# exit_then_run_shell_script(cmd, strict=True)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
def get_app():
|
|
110
|
+
app = typer.Typer(help="🖥️ Terminal utilities", no_args_is_help=True, add_help_option=False)
|
|
111
|
+
app.command(name="attach-to-zellij", no_args_is_help=False, help="[z] Choose a Zellij session to attach to")(choose_zellij_session)
|
|
112
|
+
app.command(name="z", hidden=True, no_args_is_help=False, help="[z] Choose a Zellij session to attach to")(choose_zellij_session)
|
|
113
|
+
|
|
114
|
+
app.command(name="start-wt", no_args_is_help=True, help="[w] Start a Windows Terminal layout by name.")(start_wt)
|
|
115
|
+
app.command(name="w", hidden=True, no_args_is_help=True, help="[w] Start a Windows Terminal layout by name.")(start_wt)
|
|
116
|
+
|
|
117
|
+
app.command(name="get-session-tabs", no_args_is_help=False, help="[zt] Get all Zellij session tabs.")(get_session_tabs)
|
|
118
|
+
app.command(name="zt", hidden=True, no_args_is_help=False, help="[zt] Get all Zellij session tabs.")(get_session_tabs)
|
|
119
|
+
return app
|
|
120
|
+
|
|
121
|
+
def main():
|
|
122
|
+
app = get_app()
|
|
123
|
+
app()
|
|
124
|
+
|
|
125
|
+
|
|
126
|
+
if __name__ == "__main__":
|
|
127
|
+
main()
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
from machineconfig.scripts.python.helpers_devops.cli_utils import merge_pdfs, compress_pdf
|
|
4
|
+
from machineconfig.scripts.python.helpers_utils.path import edit_file_with_hx, get_machine_specs, init_project, path
|
|
5
|
+
from machineconfig.scripts.python.helpers_utils.download import download
|
|
6
|
+
import typer
|
|
7
|
+
from typing import Annotated
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def kill_process(
|
|
11
|
+
# name: Annotated[Optional[str], typer.Option(..., "--name", "-n", help="Name of the process to kill")],
|
|
12
|
+
# command: Annotated[str, typer.Option(..., "--command", "-c", help="Match by command line instead of process name")] = "",
|
|
13
|
+
interactive: Annotated[bool, typer.Option(..., "--interactive", "-i", help="Interactively choose the process to kill")] = True):
|
|
14
|
+
from machineconfig.utils.procs import main, ProcessManager
|
|
15
|
+
if interactive:
|
|
16
|
+
main()
|
|
17
|
+
return
|
|
18
|
+
_ = ProcessManager
|
|
19
|
+
# pm = ProcessManager()
|
|
20
|
+
# if command:
|
|
21
|
+
# pm.filter_and_kill(name=command
|
|
22
|
+
# )
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def upgrade_packages():
|
|
26
|
+
from machineconfig.utils.upgrade_packages import generate_uv_add_commands
|
|
27
|
+
from pathlib import Path
|
|
28
|
+
generate_uv_add_commands(pyproject_path=Path.cwd() / "pyproject.toml", output_path=Path.cwd() / "pyproject_init.sh")
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def get_app() -> typer.Typer:
|
|
32
|
+
app = typer.Typer(help="🛠️ utilities operations", no_args_is_help=True, add_help_option=False, add_completion=False)
|
|
33
|
+
app.command(name="kill-process", no_args_is_help=False, help="[k] Choose a process to kill")(kill_process)
|
|
34
|
+
app.command(name="k", no_args_is_help=False, help="Choose a process to kill", hidden=True)(kill_process)
|
|
35
|
+
|
|
36
|
+
app.command("path", no_args_is_help=False, help="📚 [p] NAVIGATE PATH variable with TUI")(path)
|
|
37
|
+
app.command("p", no_args_is_help=False, help="NAVIGATE PATH variable with TUI", hidden=True)(path)
|
|
38
|
+
|
|
39
|
+
app.command(name="upgrade-packages", no_args_is_help=False, help="[up] Upgrade project dependencies.")(upgrade_packages)
|
|
40
|
+
app.command(name="up", no_args_is_help=False, hidden=True)(upgrade_packages)
|
|
41
|
+
|
|
42
|
+
app.command(name="download", no_args_is_help=True, help="[d] Download a file from a URL and optionally decompress it.")(download)
|
|
43
|
+
app.command(name="d", no_args_is_help=True, hidden=True)(download)
|
|
44
|
+
app.command(name="get-machine-specs", no_args_is_help=False, help="[g] Get machine specifications.")(get_machine_specs)
|
|
45
|
+
app.command(name="g", no_args_is_help=False, hidden=True)(get_machine_specs)
|
|
46
|
+
app.command(name="init-project", no_args_is_help=False, help="[i] Initialize a project with a uv virtual environment and install dev packages.")(init_project)
|
|
47
|
+
app.command(name="i", no_args_is_help=False, hidden=True)(init_project)
|
|
48
|
+
app.command(name="edit", no_args_is_help=False, help="[e] Open a file in the default editor.")(edit_file_with_hx)
|
|
49
|
+
app.command(name="e", no_args_is_help=False, hidden=True)(edit_file_with_hx)
|
|
50
|
+
|
|
51
|
+
app.command(name="pdf-merge", no_args_is_help=True, help="[pm] Merge two PDF files into one.")(merge_pdfs)
|
|
52
|
+
app.command(name="pm", no_args_is_help=True, hidden=True)(merge_pdfs)
|
|
53
|
+
app.command(name="pdf-compress", no_args_is_help=True, help="[pc] Compress a PDF file.")(compress_pdf)
|
|
54
|
+
app.command(name="pc", no_args_is_help=True, hidden=True)(compress_pdf)
|
|
55
|
+
|
|
56
|
+
# app.command(name="copy", no_args_is_help=True, help="[c] Copy files or directories.")(copy)
|
|
57
|
+
# app.command(name="c", no_args_is_help=True, hidden=True)(copy)
|
|
58
|
+
|
|
59
|
+
return app
|
|
60
|
+
|
|
61
|
+
# def func():
|
|
62
|
+
# import pycr
|
|
63
|
+
|
|
64
|
+
def main():
|
|
65
|
+
app = get_app()
|
|
66
|
+
app()
|
|
@@ -17,10 +17,8 @@ $sharePath=''
|
|
|
17
17
|
$driveLetter=''
|
|
18
18
|
$options = "rw,sec=sys,no_subtree_check"
|
|
19
19
|
|
|
20
|
-
# . activate_ve
|
|
21
|
-
. $HOME/code/machineconfig/.venv/Scripts/activate.ps1
|
|
22
20
|
|
|
23
|
-
python -m machineconfig.scripts.python.mount_nfs
|
|
21
|
+
uv run python -m machineconfig.scripts.python.mount_nfs
|
|
24
22
|
. $HOME/tmp_results/shells/python_return_command.ps1
|
|
25
23
|
|
|
26
24
|
# Configure NFS server
|
|
@@ -7,7 +7,7 @@ $user = ''
|
|
|
7
7
|
$sharePath = ''
|
|
8
8
|
$driveLetter = ''
|
|
9
9
|
|
|
10
|
-
uv run --python 3.
|
|
10
|
+
uv run --python 3.14 --with "machineconfig>=7.66" python -m machineconfig.scripts.python.mount_ssh
|
|
11
11
|
|
|
12
12
|
net use T: \\sshfs.kr\$user@$host.local
|
|
13
13
|
# this worked: net use T: \\sshfs\alex@alex-p51s-5.local
|
|
@@ -4,12 +4,6 @@ $Path = $HOME + '\data\share_smb'
|
|
|
4
4
|
|
|
5
5
|
Get-SmbShare
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
#. activate_ve
|
|
9
|
-
#python -m machineconfig.scripts.python.share_smb
|
|
10
|
-
#. $HOME/tmp_results/shells/python_return_command.ps1
|
|
11
|
-
|
|
12
|
-
# make $path dir if it does not exist
|
|
13
7
|
if (!(Test-Path -Path $Path)) {
|
|
14
8
|
New-Item -ItemType Directory -Path $Path
|
|
15
9
|
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
function wrap_in_shell_script {
|
|
2
|
+
param(
|
|
3
|
+
[Parameter(Mandatory=$true)]
|
|
4
|
+
[string]$Command,
|
|
5
|
+
|
|
6
|
+
[Parameter(ValueFromRemainingArguments=$true)]
|
|
7
|
+
[string[]]$Arguments
|
|
8
|
+
)
|
|
9
|
+
|
|
10
|
+
# Generate a random name (based on current timestamp hashed with SHA256)
|
|
11
|
+
# Compute SHA256 of the timestamp string (don't pipe the string to Get-FileHash
|
|
12
|
+
# because that attempts to treat the input as a path). Take the first 16 hex
|
|
13
|
+
# chars as the random name.
|
|
14
|
+
$ts = Get-Date -Format o
|
|
15
|
+
try {
|
|
16
|
+
$sha = [System.Security.Cryptography.SHA256]::Create()
|
|
17
|
+
$bytes = [System.Text.Encoding]::UTF8.GetBytes($ts)
|
|
18
|
+
$hashBytes = $sha.ComputeHash($bytes)
|
|
19
|
+
$hash = [System.BitConverter]::ToString($hashBytes).Replace("-", "").ToLower()
|
|
20
|
+
$randomName = $hash.Substring(0, 16)
|
|
21
|
+
} finally {
|
|
22
|
+
if ($sha) { $sha.Dispose() }
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
# Define the output path
|
|
26
|
+
$env:OP_PROGRAM_PATH = "$HOME/tmp_results/tmp_scripts/machineconfig/${randomName}.ps1"
|
|
27
|
+
|
|
28
|
+
# Run the specified command with its arguments
|
|
29
|
+
& $Command @Arguments
|
|
30
|
+
|
|
31
|
+
# Check if the file exists
|
|
32
|
+
if (Test-Path $env:OP_PROGRAM_PATH) {
|
|
33
|
+
Write-Host "🚀 Taking over from python script @ $env:OP_PROGRAM_PATH"
|
|
34
|
+
try {
|
|
35
|
+
bat --style=full --theme=OneHalfDark --paging=never "$env:OP_PROGRAM_PATH"
|
|
36
|
+
} catch {
|
|
37
|
+
Write-Host "⚠️ Warning: Failed to display script content with 'bat'. Proceeding to execute the script."
|
|
38
|
+
}
|
|
39
|
+
& $env:OP_PROGRAM_PATH
|
|
40
|
+
Write-Host "✅ '$Command' execution completed."
|
|
41
|
+
} else {
|
|
42
|
+
Write-Host "✅ '$Command' execution completed."
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
# Clean up the temporary environment variable so it doesn't leak to other processes/sessions
|
|
46
|
+
try {
|
|
47
|
+
Remove-Item Env:\OP_PROGRAM_PATH -ErrorAction SilentlyContinue
|
|
48
|
+
} catch {
|
|
49
|
+
# best-effort cleanup; ignore any errors
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
# Also explicitly clear the variable in the current process
|
|
53
|
+
$env:OP_PROGRAM_PATH = $null
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
# Call the function with any arguments passed to the script
|
|
57
|
+
if ($args.Count -gt 0) {
|
|
58
|
+
wrap_in_shell_script @args
|
|
59
|
+
}
|
|
60
|
+
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
-
#=======================================================================
|
|
3
2
|
# 🌳 BROOT SHELL INTEGRATION 🌳
|
|
4
|
-
#=======================================================================
|
|
5
3
|
# This script was automatically generated by the broot program
|
|
6
4
|
# More information can be found in https://github.com/Canop/broot
|
|
7
5
|
#
|
|
@@ -40,7 +38,6 @@ function br {
|
|
|
40
38
|
fi
|
|
41
39
|
}
|
|
42
40
|
|
|
43
|
-
#=======================================================================
|
|
44
41
|
# ℹ️ USAGE:
|
|
45
42
|
# br [options]
|
|
46
43
|
#
|
|
@@ -48,4 +45,3 @@ function br {
|
|
|
48
45
|
# br # Open broot in the current directory
|
|
49
46
|
# br /path/to/dir # Open broot in the specified directory
|
|
50
47
|
# br -h # Show broot help
|
|
51
|
-
#=======================================================================
|
|
@@ -25,3 +25,19 @@ enable = true
|
|
|
25
25
|
max-wrap = 25 # increase value to reduce forced mid-word wrapping
|
|
26
26
|
max-indent-retain = 0
|
|
27
27
|
wrap-indicator = "" # set wrap-indicator to "" to hide it
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# https://yazi-rs.github.io/docs/tips#helix-with-zellij
|
|
31
|
+
# ~/.config/helix/config.toml
|
|
32
|
+
[keys.normal]
|
|
33
|
+
C-y = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh open %{buffer_name}"
|
|
34
|
+
|
|
35
|
+
# ~/.config/helix/config.toml
|
|
36
|
+
|
|
37
|
+
# [keys.normal.C-y]
|
|
38
|
+
# Open the file(s) in the current window
|
|
39
|
+
# y = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh open %{buffer_name}"
|
|
40
|
+
# Open the file(s) in a vertical split
|
|
41
|
+
# v = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh vsplit %{buffer_name}"
|
|
42
|
+
# Open the file(s) in a horizontal split
|
|
43
|
+
# h = ":sh zellij run -n Yazi -c -f -x 10%% -y 10%% --width 80%% --height 80%% -- bash ~/.config/helix/yazi-picker.sh hsplit %{buffer_name}"
|
|
@@ -1,13 +1,22 @@
|
|
|
1
|
-
# adopted from https://github.com/helix-editor/helix/wiki/
|
|
1
|
+
# adopted from https://github.com/helix-editor/helix/wiki/Language-Server-Configurations
|
|
2
2
|
# adopted from https://github.com/helix-editor/helix/discussions/6623
|
|
3
|
-
# You will need:
|
|
3
|
+
# You will need: uv add --dev pylsp-mypy python-lsp-server[all] pyright ruff-lsp
|
|
4
4
|
|
|
5
5
|
[[language]]
|
|
6
6
|
name = "python"
|
|
7
|
-
language-servers = [ "pyright", "ruff" ]
|
|
7
|
+
language-servers = ["pylsp", "pyright", "ruff", "pyrefly"]
|
|
8
|
+
|
|
9
|
+
[language-server.pyrefly]
|
|
10
|
+
command = "pyrefly"
|
|
11
|
+
args = [ "lsp" ]
|
|
12
|
+
|
|
13
|
+
[language-server.pylsp.config.pylsp]
|
|
14
|
+
plugins.pylsp_mypy.enabled = true
|
|
15
|
+
plugins.pylsp_mypy.live_mode = true
|
|
16
|
+
|
|
8
17
|
|
|
9
18
|
[language-server.pyright.config.python.analysis]
|
|
10
|
-
typeCheckingMode = "
|
|
19
|
+
typeCheckingMode = "strict"
|
|
11
20
|
|
|
12
21
|
[language-server.ruff]
|
|
13
22
|
command = "ruff-lsp"
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
paths=$(yazi "$2" --chooser-file=/dev/stdout | while read -r; do printf "%q " "$REPLY"; done)
|
|
4
|
+
|
|
5
|
+
if [[ -n "$paths" ]]; then
|
|
6
|
+
zellij action toggle-floating-panes
|
|
7
|
+
zellij action write 27 # send <Escape> key
|
|
8
|
+
zellij action write-chars ":$1 $paths"
|
|
9
|
+
zellij action write 13 # send <Enter> key
|
|
10
|
+
else
|
|
11
|
+
zellij action toggle-floating-panes
|
|
12
|
+
fi
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
# 🔍 File Preview Script for LF File Manager
|
|
3
3
|
# Uses:
|
|
4
4
|
# 🖼️ chafa, viu - Image preview
|
|
5
|
-
# 📝
|
|
5
|
+
# 📝 bat - Syntax-highlighted text/code preview
|
|
6
|
+
# 📄 pistol - General file preview
|
|
6
7
|
|
|
7
8
|
file=$1
|
|
8
9
|
width="$2"
|
|
@@ -19,8 +20,9 @@ case "$file" in
|
|
|
19
20
|
echo "x: $x, y: $y, width: $width, height: $height"
|
|
20
21
|
|
|
21
22
|
if [ -n "$x" ]; then
|
|
22
|
-
echo "📐 Dimensions provided by caller, passing to viu"
|
|
23
|
-
viu "$file" -x "$x" -y "$y" -w "$width" -h "$height"
|
|
23
|
+
# echo "📐 Dimensions provided by caller, passing to viu"
|
|
24
|
+
# viu "$file" -x "$x" -y "$y" -w "$width" -h "$height"
|
|
25
|
+
# chafa --fit-width -f sixel "$file"
|
|
24
26
|
echo "✅ Finished viu"
|
|
25
27
|
chafa "$file"
|
|
26
28
|
echo "✅ Finished chafa"
|
|
@@ -30,6 +32,10 @@ case "$file" in
|
|
|
30
32
|
fi
|
|
31
33
|
exit 0
|
|
32
34
|
;;
|
|
35
|
+
# 📝 Text/Code Files - Use bat for syntax highlighting
|
|
36
|
+
*.py|*.json|*.js|*.ts|*.html|*.css|*.scss|*.less|*.xml|*.yml|*.yaml|*.toml|*.ini|*.cfg|*.conf|*.sh|*.bash|*.zsh|*.fish|*.ps1|*.rs|*.go|*.java|*.cpp|*.c|*.h|*.hpp|*.cs|*.php|*.rb|*.pl|*.pm|*.lua|*.vim|*.sql|*.md|*.txt|*.log|*.csv|*.tsv)
|
|
37
|
+
bat --color=always --style=plain --paging=never "$file"
|
|
38
|
+
;;
|
|
33
39
|
*)
|
|
34
40
|
# 📄 Default file preview
|
|
35
41
|
pistol "$file"
|
|
@@ -14,8 +14,8 @@ set number true # show line numbers
|
|
|
14
14
|
|
|
15
15
|
set preview true # preview file on the right pane
|
|
16
16
|
# set previewer chafa --format sixel --work 9 --optimize 9 --stretch --zoom --size 140x80
|
|
17
|
-
set previewer
|
|
18
|
-
set cleaner
|
|
17
|
+
set previewer ~/.config/machineconfig/settings/lf/linux/exe/previewer.sh
|
|
18
|
+
set cleaner ~/.config/machineconfig/settings/lf/linux/exe/cleaner.sh
|
|
19
19
|
# set previewer pistol
|
|
20
20
|
|
|
21
21
|
# set sixels true
|
|
@@ -48,7 +48,7 @@ set ratios '1:2:3' # ratio of pane widths
|
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
# test image viewer
|
|
51
|
-
map Q
|
|
51
|
+
map Q !~/.config/machineconfig/settings/lf/linux/exe/previewer.sh "$f"
|
|
52
52
|
|
|
53
53
|
# key bindings
|
|
54
54
|
map vmap v # default is invert
|
|
@@ -70,7 +70,6 @@ map <c-u> # half-up
|
|
|
70
70
|
# e edit
|
|
71
71
|
map e # edit modal key.
|
|
72
72
|
map eh $hx $f
|
|
73
|
-
map eH !source ~/code/machineconfig/.venv/bin/activate;hx $f
|
|
74
73
|
map en $nano $f
|
|
75
74
|
map el $lvim $f
|
|
76
75
|
map ev $nvim $f
|
|
@@ -84,12 +83,12 @@ map <enter> open
|
|
|
84
83
|
map w
|
|
85
84
|
map ww bash
|
|
86
85
|
# map wp $powershell
|
|
87
|
-
map wr
|
|
86
|
+
map wr $croshell
|
|
88
87
|
# map wm $cmd
|
|
89
|
-
map i
|
|
88
|
+
map i !~/.config/machineconfig/settings/lf/linux/exe/previewer.sh $f
|
|
90
89
|
map I !cat $f | gum pager
|
|
91
|
-
map R
|
|
92
|
-
map O
|
|
90
|
+
map R $croshell $f
|
|
91
|
+
map O $croshell -j $f
|
|
93
92
|
|
|
94
93
|
|
|
95
94
|
# o file/folder Operations
|
|
@@ -118,8 +117,8 @@ map jD cd ~/Downloads
|
|
|
118
117
|
map jx cd ~/dotfiles
|
|
119
118
|
# map jm cd ~/code/machineconfig/src/machineconfig
|
|
120
119
|
map jh cd ~
|
|
121
|
-
map jj
|
|
122
|
-
# map jj $lvim
|
|
120
|
+
map jj $croshell -j --read $f
|
|
121
|
+
# map jj $lvim ~/.config/machineconfig/settings/lf/linux/lfrc
|
|
123
122
|
|
|
124
123
|
# from https://github.com/gokcehan/lf/wiki/Integrations#zoxide
|
|
125
124
|
cmd zi ${{
|
|
@@ -163,7 +162,7 @@ cmd fzf_jump ${{
|
|
|
163
162
|
}}
|
|
164
163
|
|
|
165
164
|
|
|
166
|
-
cmd fzf2g $(
|
|
165
|
+
cmd fzf2g $(fzf2g.sh $args[1])
|
|
167
166
|
# map F $nano fzf2g $args[1]
|
|
168
167
|
|
|
169
168
|
|
|
@@ -224,4 +223,3 @@ cmd chmod ${{
|
|
|
224
223
|
|
|
225
224
|
lf -remote 'send reload'
|
|
226
225
|
}}
|
|
227
|
-
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
2
|
+
nano.ps1 (fzfb) # space use for presedence in execution.
|
|
3
3
|
# fzf --ansi --preview-window 'right:60%' --preview 'bat --color=always --style=numbers,grid,header --line-range :300 {}'
|
|
4
4
|
# & "C:\Program Files\Git\usr\bin\nano.exe" (fzf --ansi --preview-window 'right:60%' --preview 'bat --color=always --style=numbers,grid,header --line-range :300 {}')
|
|
5
|
-
# fzf |
|
|
5
|
+
# fzf | nano.ps1
|
|
6
6
|
|
|
@@ -24,8 +24,6 @@ set ifs "\n"
|
|
|
24
24
|
# see this: https://github.com/ahrm/dotfiles/tree/main/lf-windows/lf_scripts
|
|
25
25
|
# https://github.com/NikitaIvanovV/ctpv
|
|
26
26
|
|
|
27
|
-
# set previewer ~/code/machineconfig/src/machineconfig/settings/lf/leftpane_previewer.ps1
|
|
28
|
-
# set previewer ~\AppData\Local\Microsoft\WindowsApps\bat.exe --color=always --theme=base16
|
|
29
27
|
# also see pistol file previewer.
|
|
30
28
|
# set shell pwsh # too slow.
|
|
31
29
|
# set ignorecase true
|
|
@@ -53,19 +51,19 @@ map x
|
|
|
53
51
|
map c
|
|
54
52
|
map v
|
|
55
53
|
map r
|
|
56
|
-
map D $diskonaut $
|
|
57
|
-
map K $kondo $
|
|
54
|
+
map D $diskonaut $f
|
|
55
|
+
map K $kondo $f
|
|
58
56
|
map r reload
|
|
59
57
|
|
|
60
58
|
|
|
61
59
|
# e edit
|
|
62
60
|
map e # edit modal key.
|
|
63
|
-
map en
|
|
64
|
-
map el $pwsh -File $env:USERPROFILE/.local/bin/lvim.ps1 -- $
|
|
65
|
-
map ev $nvim $
|
|
66
|
-
map ec $code $
|
|
61
|
+
map en $nano $f
|
|
62
|
+
map el $pwsh -File $env:USERPROFILE/.local/bin/lvim.ps1 -- $f
|
|
63
|
+
map ev $nvim $f
|
|
64
|
+
map ec $code $f
|
|
67
65
|
map ep $& 'C:\Program Files (x86)\JetBrains\PyCharm Community Edition 2022.2\bin\pycharm.exe' $f
|
|
68
|
-
map o $start $
|
|
66
|
+
map o $start $f
|
|
69
67
|
map <enter> open
|
|
70
68
|
|
|
71
69
|
|
|
@@ -73,29 +71,27 @@ map <enter> open
|
|
|
73
71
|
map w
|
|
74
72
|
map ww $powershell
|
|
75
73
|
map wp $pwsh
|
|
76
|
-
map wc
|
|
74
|
+
map wc $croshell.ps1
|
|
77
75
|
map wm $cmd
|
|
78
|
-
map i
|
|
79
|
-
map R $powershell $env:USERPROFILE/scripts/croshell.ps1 -r $
|
|
76
|
+
map i $~/.config/machineconfig/settings/lf/windows/previewer.ps1 $f
|
|
77
|
+
map R $powershell $env:USERPROFILE/scripts/croshell.ps1 -r $f
|
|
80
78
|
|
|
81
79
|
# o file/folder Operations
|
|
82
80
|
map o
|
|
83
81
|
map od cut
|
|
84
82
|
map op paste
|
|
85
83
|
map oy copy
|
|
86
|
-
map oc $Set-Clipboard -Value $
|
|
84
|
+
map oc $Set-Clipboard -Value $f
|
|
87
85
|
map c clear
|
|
88
86
|
map or rename
|
|
89
|
-
map <delete>
|
|
90
|
-
|
|
91
|
-
echo 'FINISHED DELETEING'
|
|
92
|
-
}}
|
|
87
|
+
map <delete> delete
|
|
88
|
+
map <del> delete
|
|
93
89
|
map of reload
|
|
94
90
|
map os mark-save
|
|
95
91
|
map ol mark-load
|
|
96
92
|
map oR mark-remove
|
|
97
|
-
map oD !ouch d $
|
|
98
|
-
map oC !ouch c $
|
|
93
|
+
map oD !ouch d $f
|
|
94
|
+
map oC !ouch c $f '$f'.zip
|
|
99
95
|
|
|
100
96
|
# j jump
|
|
101
97
|
map j
|
|
@@ -103,31 +99,15 @@ map jc cd ~/code
|
|
|
103
99
|
map jd cd ~/data
|
|
104
100
|
map jD cd ~/Downloads
|
|
105
101
|
map jx cd ~/dotfiles
|
|
106
|
-
map jm cd ~/code/machineconfig/src/machineconfig
|
|
107
102
|
map jh cd ~
|
|
108
103
|
map ja cd $env:LOCALAPPDATA
|
|
109
104
|
map jA cd $env:APPDATA
|
|
110
|
-
map jj $pwsh -File $env:USERPROFILE/.local/bin/lvim.ps1 -- $
|
|
105
|
+
map jj $pwsh -File $env:USERPROFILE/.local/bin/lvim.ps1 -- $HOME/.config/machineconfig/settings/lf/windows/lfrc
|
|
111
106
|
|
|
112
107
|
|
|
113
108
|
|
|
114
109
|
# m make
|
|
115
110
|
map m
|
|
116
|
-
map md
|
|
117
|
-
map mf
|
|
118
|
-
|
|
119
|
-
# =================== JUNK ======================
|
|
120
|
-
# Find and Jump
|
|
121
|
-
#cmd fzfg $~/scripts/fzfg.ps1 $args[0]
|
|
122
|
-
map J push :$~/scripts/fzfg<space>
|
|
123
|
-
map F $~/code/machineconfig/src/machineconfig/settings/lf/windows/fzf_edit.ps1
|
|
124
|
-
map S cd $~/code/machineconfig/src/machineconfig/settings/lf/windows/tst.ps1
|
|
125
|
-
map T $~/code/machineconfig/src/machineconfig/settings/lf/windows/cd_tere.ps1
|
|
126
|
-
map Z $~/code/machineconfig/src/machineconfig/settings/lf/windows/cd_zoxide2.ps1
|
|
127
|
-
|
|
128
|
-
cmd doc $lf -doc | bat
|
|
129
|
-
|
|
130
|
-
# cmd pre-cd $~/code/machineconfig/src/machineconfig/settings/lf/windows/precd.ps1
|
|
131
|
-
# cmd on-cd $~/code/machineconfig/src/machineconfig/settings/lf/windows/oncd.ps1
|
|
132
|
-
# cmd on-quit ~/code/machineconfig/src/machineconfig/settings/lf/windows/onquit.ps1
|
|
111
|
+
map md $~/.config/machineconfig/settings/lf/windows/mkdir.ps1
|
|
112
|
+
map mf $~/.config/machineconfig/settings/lf/windows/mkfile.ps1
|
|
133
113
|
|