From 052024d06c3fec0f33f60edc126906f1788868a6 Mon Sep 17 00:00:00 2001 From: Marco Gallegos Date: Wed, 19 Nov 2025 19:10:09 -0600 Subject: [PATCH] Update vanity_setup.sh --- vanity_setup.sh | 149 ++++++++++++++++++++++++++++++++++-------------- 1 file changed, 107 insertions(+), 42 deletions(-) diff --git a/vanity_setup.sh b/vanity_setup.sh index 976eef8..ca4d524 100644 --- a/vanity_setup.sh +++ b/vanity_setup.sh @@ -2,76 +2,141 @@ set -e -ZSHRC_URL="https://raw.githubusercontent.com/marcogll/mac_vntySet/refs/heads/main/.zshrc.example" -DOWNLOAD_DIR="$HOME/downloads/youtube" -VIDEO_DIR="$DOWNLOAD_DIR/video" -AUDIO_DIR="$DOWNLOAD_DIR/audio" - -echo "[+] Verificando Homebrew..." -if ! command -v brew &>/dev/null; then - echo "[+] Instalando Homebrew..." +echo ">>> Actualizando Homebrew / instalando si no existe..." +if ! command -v brew &> /dev/null; then /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" fi -eval "$(/opt/homebrew/bin/brew shellenv 2>/dev/null)" +brew update -echo "[+] Instalando paquetes base (zsh, curl, wget, python, node, docker, yt-dlp)..." -brew install zsh curl wget python node docker docker-compose yt-dlp +####################################### +# ZSH + OH-MY-ZSH + PLUGINS + OMP +####################################### -echo "[+] Instalando Oh My Zsh..." -if [[ ! -d "$HOME/.oh-my-zsh" ]]; then +echo ">>> Instalando Zsh..." +brew install zsh + +echo ">>> Instalando wget y curl..." +brew install wget curl + +echo ">>> Instalando Oh My Zsh..." +if [ ! -d "$HOME/.oh-my-zsh" ]; then sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended fi -echo "[+] Instalando plugins de Zsh..." -brew install zsh-autosuggestions zsh-syntax-highlighting +echo ">>> Instalando plugins zsh..." +brew install zsh-autosuggestions zsh-syntax-highlighting zsh-history-substring-search -echo "[+] Instalando Oh My Posh..." +echo ">>> Instalando Oh My Posh..." brew install jandedobbeleer/oh-my-posh/oh-my-posh -echo "[+] Instalando fuente Nerd Font para el tema..." +echo ">>> Instalando fuente de Oh My Posh..." oh-my-posh font install Meslo -echo "[+] Descargando tema Catppuccin para Oh My Posh..." +echo ">>> Descargando tema Catppuccin para OMP..." mkdir -p ~/.poshthemes -curl -fsSL \ - https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/catppuccin.omp.json \ - -o ~/.poshthemes/catppuccin.omp.json +wget -O ~/.poshthemes/catppuccin.omp.json \ + https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/catppuccin.omp.json -chmod +r ~/.poshthemes/*.json +####################################### +# Python + Node +####################################### -echo "[+] Descargando tu .zshrc desde GitHub..." -curl -fsSL "$ZSHRC_URL" -o ~/.zshrc +echo ">>> Instalando Python..." +brew install python -echo "[+] Creando carpetas para yt-dlp..." -mkdir -p "$VIDEO_DIR" "$AUDIO_DIR" +echo ">>> Instalando Node..." +brew install node + +####################################### +# yt-dlp + alias +####################################### + +echo ">>> Instalando yt-dlp..." +brew install yt-dlp ffmpeg + +# Crear carpetas +mkdir -p ~/downloads/youtube/video +mkdir -p ~/downloads/youtube/audio + +####################################### +# LazyDocker +####################################### + +echo ">>> Instalando LazyDocker..." +brew install jesseduffield/lazydocker/lazydocker + +####################################### +# Docker CLI + Compose + Portainer +####################################### + +echo ">>> Instalando Docker CLI + Docker Compose..." +brew install docker docker-compose + +echo ">>> Ejecutando Portainer..." +docker volume create portainer_data + +docker run -d \ + -p 8000:8000 \ + -p 9443:9443 \ + --name portainer \ + --restart=always \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -v portainer_data:/data \ + portainer/portainer-ce:latest + +####################################### +# Descargar .zshrc custom desde tu repo +####################################### + +echo ">>> Descargando tu .zshrc personalizado..." +wget -O ~/.zshrc \ + https://raw.githubusercontent.com/marcogll/mac_vntySet/refs/heads/main/.zshrc.example + +####################################### +# Agregar Aliases y ajustes extra +####################################### -echo "[+] Agregando alias ytv / ytm / help..." cat <<'EOF' >> ~/.zshrc -# --- Vanity additions (auto) --- +# ------------------------- +# VANITY CUSTOM ALIASES +# ------------------------- -alias ytv='yt-dlp -o "'"$VIDEO_DIR"'/%(title)s.%(ext)s"' -alias ytm='yt-dlp -x --audio-format mp3 -o "'"$AUDIO_DIR"'/%(title)s.%(ext)s"' +alias cls="clear" -alias help="echo '\ +# yt-dlp video +alias ytv='yt-dlp -f "bestvideo+bestaudio" -o "~/downloads/youtube/video/%(title)s.%(ext)s"' + +# yt-dlp música (mp3) +alias ytm='yt-dlp -x --audio-format mp3 -o "~/downloads/youtube/audio/%(title)s.%(ext)s"' + +# LazyDocker +alias lzd="lazydocker" + +# Docker compose corto +alias dcu="docker compose up -d" +alias dcd="docker compose down" + +# Help command +alias vanity-help="echo ' Comandos disponibles: - ytv URL - Descarga video en $VIDEO_DIR - ytm URL - Descarga música (MP3) en $AUDIO_DIR - cls - Limpiar pantalla - brew - Gestor de paquetes - python, node, docker, compose disponibles tras instalación + ytv URL → Descargar video en ~/downloads/youtube/video + ytm URL → Descargar audio/mp3 en ~/downloads/youtube/audio + lzd → Abrir LazyDocker + dcu → docker compose up -d + dcd → docker compose down + cls → clear '" -# Plugins Zsh +# ZSH plugins source /opt/homebrew/share/zsh-autosuggestions/zsh-autosuggestions.zsh source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /opt/homebrew/share/zsh-history-substring-search/zsh-history-substring-search.zsh -# Oh My Posh -eval \"$(oh-my-posh init zsh --config ~/.poshthemes/catppuccin.omp.json)\" +# Oh My Posh prompt +eval "$(oh-my-posh init zsh --config ~/.poshthemes/catppuccin.omp.json)" -# --- EOF -echo "[+] Aplicando configuración..." -exec zsh +echo ">>> Instalación completa. Reinicia la terminal."