diff --git a/programas/biome/setup.sh b/programas/biome/setup.sh index 58e4db6..40fd850 100755 --- a/programas/biome/setup.sh +++ b/programas/biome/setup.sh @@ -1,6 +1,9 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Biome...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing Biome...${r}" curl -L https://github.com/biomejs/biome/releases/download/v1.9.4/biome-linux-x64 -o biome chmod +x biome sudo mv biome /usr/local/bin/biome \ No newline at end of file diff --git a/programas/broot/setup.sh b/programas/broot/setup.sh index c1369f5..d0f865d 100755 --- a/programas/broot/setup.sh +++ b/programas/broot/setup.sh @@ -1,8 +1,10 @@ #!/usr/bin/env bash set -euo pipefail +c="\033[1;36m" +r="\033[0m" SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo -e "\e[32mInstalling broot...\e[0m" +echo -e "${c}Installing broot...${r}" install_cargo_crate broot if command -v broot &> /dev/null; then broot --install diff --git a/programas/cli-tools/setup.sh b/programas/cli-tools/setup.sh index 583f232..534ee3a 100755 --- a/programas/cli-tools/setup.sh +++ b/programas/cli-tools/setup.sh @@ -94,12 +94,6 @@ else sudo snap install btop fi -# Tealdeer (Fast tldr in Rust) -install_cargo_crate tealdeer tldr -if command -v tldr &> /dev/null; then - tldr --update &> /dev/null & -fi - # --- NEW TOOLS (2026 Apps) --- # Uv (Extremely fast Python package manager) @@ -151,18 +145,6 @@ else echo -e "${c}gum already installed.${r}" fi -# Mods (AI on the command line) -if ! command -v mods &> /dev/null; then - echo -e "${c}Installing mods...${r}" - if command -v go &> /dev/null; then - go install github.com/charmbracelet/mods@latest - else - echo -e "${c}Go not found, skipping mods installation.${r}" - fi -else - echo -e "${c}mods already installed.${r}" -fi - # Dust (Disk Usage) install_cargo_crate du-dust dust @@ -184,12 +166,6 @@ install_cargo_crate git-delta delta # Navi (Interactive Cheatsheet) install_cargo_crate navi -# Procs (Modern ps) -install_cargo_crate procs - -# Hyperfine (Benchmarking) -install_cargo_crate hyperfine - # The Fuck (Command Corrector) if ! command -v thefuck &> /dev/null; then echo -e "${c}Installing thefuck...${r}" @@ -227,11 +203,9 @@ fi # Pueue (Command Queue Manager) install_cargo_crate pueue - # Presenterm (Terminal Slideshows) install_cargo_crate presenterm - # Ollama (Local AI) if ! command -v ollama &> /dev/null; then echo -e "${c}Installing ollama...${r}" @@ -240,7 +214,6 @@ else echo -e "${c}ollama already installed.${r}" fi - # Glow (Markdown Renderer) if ! command -v glow &> /dev/null; then echo -e "${c}Installing glow...${r}" @@ -294,7 +267,6 @@ else echo -e "${c}lnav already installed.${r}" fi - # Binsider (Binary Analysis TUI) install_cargo_crate binsider @@ -303,27 +275,6 @@ install_cargo_crate serpl # --- MORE 2026 APPS --- -# Ruff (Fast Python Linter/Formatter) -if ! command -v ruff &> /dev/null; then - echo -e "${c}Installing ruff...${r}" - pip3 install ruff --break-system-packages 2>/dev/null || pip3 install ruff -else - echo -e "${c}ruff already installed.${r}" -fi - -# Biome (Fast JS/TS Toolchain) -if ! command -v biome &> /dev/null; then - echo -e "${c}Installing biome...${r}" - curl -L https://github.com/biomejs/biome/releases/download/v1.9.4/biome-linux-x64 -o biome - chmod +x biome - sudo mv biome /usr/local/bin/biome -else - echo -e "${c}biome already installed.${r}" -fi - -# Helix (Modern Editor) -install_cargo_crate helix-term hx - # Websocat (Netcat for WebSockets) install_cargo_crate websocat @@ -408,9 +359,6 @@ fi # --- ULTIMATE 2026 APPS --- -# Just (Command Runner) -install_cargo_crate just - # Dive (Docker Image Explorer) if ! command -v dive &> /dev/null; then echo -e "${c}Installing dive...${r}" @@ -572,14 +520,6 @@ install_go_package github.com/noahgorstein/jqp@latest jqp # --- THE FUTURE IS NOW (New 2026 Apps) --- -# Deno (Modern JS/TS Runtime) -if ! command -v deno &> /dev/null; then - echo -e "${c}Installing Deno...${r}" - curl -fsSL https://deno.land/x/install/install.sh | sh -else - echo -e "${c}deno already installed.${r}" -fi - # Nap (Snippets Manager) install_go_package github.com/charmbracelet/nap@latest nap @@ -600,7 +540,6 @@ install_go_package github.com/wtfutil/wtf@latest wtf # --- 2026 APPS PART II --- - # D2 (Declarative Diagramming) if ! command -v d2 &> /dev/null; then echo -e "${c}Installing d2...${r}" @@ -624,7 +563,6 @@ install_cargo_crate erdtree erd # Dua-cli (Disk Usage Analyzer) install_cargo_crate dua-cli dua - # --- EXTRA 2026 APPS --- # Serie (Git commit graph) @@ -639,20 +577,6 @@ install_cargo_crate mdcat # Code2prompt (Convert codebase to AI prompt) install_cargo_crate code2prompt -# Llm (CLI for Large Language Models) -if ! command -v llm &> /dev/null; then - echo -e "${c}Installing llm...${r}" - if command -v uv &> /dev/null; then - uv tool install llm - elif command -v pip3 &> /dev/null; then - pip3 install llm --break-system-packages 2>/dev/null || pip3 install llm - else - echo -e "${c}Neither uv nor pip3 found, skipping llm installation.${r}" - fi -else - echo -e "${c}llm already installed.${r}" -fi - # Oxlint (Fast JS/TS linter) install_cargo_crate oxlint @@ -665,7 +589,6 @@ install_go_package github.com/stern/stern@latest stern # Difftastic (Structural diff) install_cargo_crate difftastic difft - # Direnv (Environment variable manager) if ! command -v direnv &> /dev/null; then echo -e "${c}Installing direnv...${r}" @@ -805,11 +728,9 @@ install_go_package github.com/aandrew-me/tgpt/v2@latest tgpt install_go_package github.com/mr-karan/doggo/cmd/doggo@latest doggo - # Tenv (OpenTofu/Terraform version manager) install_go_package github.com/tofuutils/tenv/v3@latest tenv - # --- 2026 EXPERIMENTAL APPS --- # Dotenvx (Better dotenv) @@ -839,7 +760,6 @@ fi # Charm (The Charm Tool) install_go_package github.com/charmbracelet/charm@latest charm - # Miller (Data processing) install_go_package github.com/johnkerl/miller/cmd/mlr@latest mlr @@ -1143,7 +1063,6 @@ else fi fi - # Configure Btop echo -e "${c}Configuring Btop...${r}" BTOP_THEMES_DIR="$HOME/.config/btop/themes" @@ -1383,7 +1302,6 @@ else echo -e "${c}bat-extras already installed.${r}" fi - # --- 2026 NEXT-GEN CLOUD & DEV TOOLS --- # GHQ (Remote repository manager) @@ -1552,7 +1470,6 @@ install_go_package github.com/itchyny/gojq/cmd/gojq@latest gojq # xsv (High performance CSV command line toolkit) install_cargo_crate xsv - # Typst (A new markup-based typesetting system that is powerful and easy to learn) install_cargo_crate typst-cli typst diff --git a/programas/cline/setup.sh b/programas/cline/setup.sh index bdf0191..e9a8957 100755 --- a/programas/cline/setup.sh +++ b/programas/cline/setup.sh @@ -1,8 +1,11 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Cline...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing cline...${r}" if command -v npm &> /dev/null; then sudo npm install -g @cline/cli else - echo "npm not found. Skipping." + echo -e "${c}npm not found, skipping cline installation.${r}" fi \ No newline at end of file diff --git a/programas/deno/setup.sh b/programas/deno/setup.sh index ebd7210..d210e06 100755 --- a/programas/deno/setup.sh +++ b/programas/deno/setup.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Deno...\e[0m" -curl -fsSL https://deno.land/x/install/install.sh | /usr/bin/env sh \ No newline at end of file +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing deno...${r}" +curl -fsSL https://deno.land/x/install/install.sh | bash \ No newline at end of file diff --git a/programas/devenv/setup.sh b/programas/devenv/setup.sh index 5bad959..fa7cf65 100755 --- a/programas/devenv/setup.sh +++ b/programas/devenv/setup.sh @@ -1,7 +1,12 @@ -#!/bin/sh -echo -e "\e[32mInstalling devenv...\e[0m" +#!/usr/bin/env bash +set -e +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing devenv...${r}" + if command -v nix > /dev/null 2>&1; then nix profile install --accept-flake-config github:cachix/devenv/latest else - echo "Nix not found. Devenv requires Nix to be installed." -fi + curl -fsS https://devenv.sh/install.sh | bash +fi \ No newline at end of file diff --git a/programas/distrobox/setup.sh b/programas/distrobox/setup.sh index 3254dfe..cca9605 100755 --- a/programas/distrobox/setup.sh +++ b/programas/distrobox/setup.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Distrobox...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing distrobox...${r}" curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo /usr/bin/env sh \ No newline at end of file diff --git a/programas/flox/setup.sh b/programas/flox/setup.sh index be1a220..72c6fb5 100755 --- a/programas/flox/setup.sh +++ b/programas/flox/setup.sh @@ -1,3 +1,5 @@ #!/bin/sh +set -e echo -e "\e[32mInstalling flox...\e[0m" -curl -fsSL https://install.flox.dev/ | sh +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +curl -fsSL https://install.flox.dev/ | sh \ No newline at end of file diff --git a/programas/hyperfine/setup.sh b/programas/hyperfine/setup.sh index 085171c..6bcbd9a 100755 --- a/programas/hyperfine/setup.sh +++ b/programas/hyperfine/setup.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash set -euo pipefail +c="\033[1;36m" +r="\033[0m" SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo -e "\e[32mInstalling Hyperfine...\e[0m" +echo -e "${c}Installing hyperfine...${r}" install_cargo_crate hyperfine \ No newline at end of file diff --git a/programas/just/setup.sh b/programas/just/setup.sh index ff13de9..9552a3a 100755 --- a/programas/just/setup.sh +++ b/programas/just/setup.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash set -euo pipefail +c="\033[1;36m" +r="\033[0m" SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo "Installing just..." +echo -e "${c}Installing just...${r}" install_cargo_crate just \ No newline at end of file diff --git a/programas/llm/setup.sh b/programas/llm/setup.sh index 8e13a25..05055f5 100755 --- a/programas/llm/setup.sh +++ b/programas/llm/setup.sh @@ -1,8 +1,13 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling LLM...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing llm...${r}" if command -v uv > /dev/null 2>&1; then uv tool install llm +elif command -v pip3 > /dev/null 2>&1; then + pip3 install llm --break-system-packages 2>/dev/null || pip3 install llm else - pip3 install llm --break-system-packages + echo -e "${c}Neither uv nor pip3 found, skipping llm installation.${r}" fi \ No newline at end of file diff --git a/programas/mods/setup.sh b/programas/mods/setup.sh index 81dd01d..2386f7b 100755 --- a/programas/mods/setup.sh +++ b/programas/mods/setup.sh @@ -1,5 +1,11 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Mods...\e[0m" -source "$PWD/programas/common/cargo_helper.sh" -install_go_package github.com/charmbracelet/mods@latest \ No newline at end of file +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing mods...${r}" +if command -v go &> /dev/null; then + install_go_package github.com/charmbracelet/mods@latest +else + echo -e "${c}Go not found, skipping mods installation.${r}" +fi \ No newline at end of file diff --git a/programas/moon/setup.sh b/programas/moon/setup.sh index 5536ace..1d38afe 100755 --- a/programas/moon/setup.sh +++ b/programas/moon/setup.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Moon...\e[0m" -curl -fsSL https://moonrepo.dev/install/moon.sh | /usr/bin/env sh \ No newline at end of file +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing moon...${r}" +curl -fsSL https://moonrepo.dev/install/moon.sh | bash \ No newline at end of file diff --git a/programas/opentofu/setup.sh b/programas/opentofu/setup.sh index 64f948c..f5772b3 100755 --- a/programas/opentofu/setup.sh +++ b/programas/opentofu/setup.sh @@ -1,6 +1,9 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling OpenTofu...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing OpenTofu...${r}" curl --proto '=https' --tlsv1.2 -fsSL https://get.opentofu.org/install-opentofu.sh -o install-opentofu.sh chmod +x install-opentofu.sh ./install-opentofu.sh --install-method standalone diff --git a/programas/pkgx/setup.sh b/programas/pkgx/setup.sh index d9f3dc7..01148a5 100755 --- a/programas/pkgx/setup.sh +++ b/programas/pkgx/setup.sh @@ -1,4 +1,7 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling pkgx...\e[0m" +c="\033[1;32m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing pkgx...${r}" curl -fsS https://pkgx.sh | /usr/bin/env sh \ No newline at end of file diff --git a/programas/procs/setup.sh b/programas/procs/setup.sh index c83fc5d..4571033 100755 --- a/programas/procs/setup.sh +++ b/programas/procs/setup.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash set -euo pipefail +c="\033[1;36m" +r="\033[0m" SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo -e "\e[32mInstalling Procs...\e[0m" +echo -e "${c}Installing procs...${r}" install_cargo_crate procs \ No newline at end of file diff --git a/programas/pueue/setup.sh b/programas/pueue/setup.sh index 1d7f222..c5e3d31 100755 --- a/programas/pueue/setup.sh +++ b/programas/pueue/setup.sh @@ -1,6 +1,8 @@ #!/usr/bin/env bash set -euo pipefail +c="\033[1;36m" +r="\033[0m" SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo -e "\e[32mInstalling Pueue...\e[0m" +echo -e "${c}Installing pueue...${r}" install_cargo_crate pueue \ No newline at end of file diff --git a/programas/ruff/setup.sh b/programas/ruff/setup.sh index e27b9c9..42aa95c 100755 --- a/programas/ruff/setup.sh +++ b/programas/ruff/setup.sh @@ -1,6 +1,9 @@ #!/usr/bin/env bash set -euo pipefail -echo -e "\e[32mInstalling Ruff...\e[0m" +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing ruff...${r}" if command -v uv > /dev/null 2>&1; then uv tool install ruff else diff --git a/programas/rye/setup.sh b/programas/rye/setup.sh index 147eac8..85ed2bb 100755 --- a/programas/rye/setup.sh +++ b/programas/rye/setup.sh @@ -1,3 +1,7 @@ -#!/bin/sh -echo -e "\e[32mInstalling Rye...\e[0m" -curl -sSf https://rye-up.com/get | sh +#!/usr/bin/env bash +set -e +c="\033[1;36m" +r="\033[0m" +source "$ROOT_DIR/programas/common/cargo_helper.sh" 2>/dev/null || true +echo -e "${c}Installing Rye...${r}" +curl -sSf https://rye.astral.sh/get | bash \ No newline at end of file diff --git a/programas/tealdeer/setup.sh b/programas/tealdeer/setup.sh index 5233294..672e9b7 100755 --- a/programas/tealdeer/setup.sh +++ b/programas/tealdeer/setup.sh @@ -1,6 +1,11 @@ #!/usr/bin/env bash set -euo pipefail SCRIPT_DIR="$(dirname "$(readlink -f "$0")")" +c="\033[1;36m" +r="\033[0m" source "$SCRIPT_DIR/../common/cargo_helper.sh" 2>/dev/null || { install_cargo_crate() { cargo install "$1"; }; } -echo -e "\e[32mInstalling Tealdeer...\e[0m" -install_cargo_crate tealdeer \ No newline at end of file +echo -e "${c}Installing tealdeer...${r}" +install_cargo_crate tealdeer +if command -v tldr &> /dev/null; then + tldr --update &> /dev/null & +fi \ No newline at end of file diff --git a/setup-2026.sh b/setup-2026.sh index 90a019e..4ed5d1a 100755 --- a/setup-2026.sh +++ b/setup-2026.sh @@ -198,10 +198,10 @@ case "$PROFILE" in DEFAULT_MODULES=(cli-tools zsh starship bun mysql lazygit lazydocker vscode zellij yazi neovim docker uv mise atuin devbox dagger deno biome ruff broot procs pueue) ;; full) - DEFAULT_MODULES=(cli-tools zsh starship bun mysql lazygit lazydocker vscode zellij yazi firefox slack android neovim docker brave discord ghostty obsidian uv zen-browser bruno wezterm dbeaver mise atuin devbox dagger jo k6 television code2prompt jan chatbox inshellisense podman devpod daytona just helix nushell distrobox moon pkgx tealdeer hyperfine opentofu deno biome ruff broot procs pueue) + DEFAULT_MODULES=(cli-tools zsh starship bun mysql lazygit lazydocker vscode zellij yazi firefox slack android neovim docker brave discord ghostty obsidian uv zen-browser bruno wezterm dbeaver mise atuin devbox dagger deno biome ruff broot procs pueue jo k6 television code2prompt jan chatbox inshellisense podman devpod daytona just helix nushell distrobox moon pkgx tealdeer hyperfine opentofu) ;; ai-dev) - DEFAULT_MODULES=(cli-tools zsh starship bun cursor zed warp lazygit lazydocker zellij yazi neovim docker uv ollama claude-code zen-browser lmstudio bruno wezterm dbeaver windsurf k9s posting superfile aider plandex open-interpreter duckdb harlequin fastfetch lazysql gitingest repomix shell-gpt atac dsq t-rec cbonsai pipes-sh mprocs mise atuin devbox dagger broot doggo tokei jless oha curlie k8sgpt fabric aichat tgpt jo k6 television code2prompt jan chatbox inshellisense podman devpod daytona mods llm cline deno biome ruff procs pueue) + DEFAULT_MODULES=(cli-tools zsh starship bun cursor zed warp lazygit lazydocker zellij yazi neovim docker uv ollama claude-code zen-browser lmstudio bruno wezterm dbeaver windsurf k9s posting superfile aider plandex open-interpreter duckdb harlequin fastfetch lazysql gitingest repomix shell-gpt atac dsq t-rec cbonsai pipes-sh mprocs mise atuin devbox dagger deno biome ruff broot doggo tokei jless oha curlie procs pueue aichat fabric k8sgpt tgpt jo k6 television code2prompt jan chatbox inshellisense podman devpod daytona mods llm cline) ;; *) log "Perfil inválido: $PROFILE"