mirror of
https://github.com/marcogll/mac_vntySet.git
synced 2026-01-13 13:25:15 +00:00
feat: Add an update option to the script and ensure Homebrew packages are installed only if missing.
This commit is contained in:
@@ -28,6 +28,7 @@ Ejecuta el instalador directamente desde la terminal (usa bash, no zsh):
|
|||||||
curl -fsSL https://raw.githubusercontent.com/marcogll/mac_vntySet/main/vanity_setup.sh | bash
|
curl -fsSL https://raw.githubusercontent.com/marcogll/mac_vntySet/main/vanity_setup.sh | bash
|
||||||
```
|
```
|
||||||
El script muestra un menú para elegir qué componentes instalar.
|
El script muestra un menú para elegir qué componentes instalar.
|
||||||
|
También puedes volver a ejecutarlo más adelante y elegir la opción `U` para actualizar todos los componentes provisionados por VanityOS Shell.
|
||||||
|
|
||||||
## 💻 Ejecución local
|
## 💻 Ejecución local
|
||||||
También puedes clonar este repositorio y ejecutar el instalador de forma local:
|
También puedes clonar este repositorio y ejecutar el instalador de forma local:
|
||||||
@@ -45,6 +46,7 @@ Cada ejecución genera un registro detallado en `.logs/vanity-YYYYmmdd-HHMMSS.lo
|
|||||||
| `A` | Instalación completa (recomendada). | Homebrew + stack Zsh + Docker CLI/Portainer/Lazydocker. |
|
| `A` | Instalación completa (recomendada). | Homebrew + stack Zsh + Docker CLI/Portainer/Lazydocker. |
|
||||||
| `C` | Solo configura la terminal. | Homebrew + Zsh, Oh My Zsh, Oh My Posh, utilidades CLI. |
|
| `C` | Solo configura la terminal. | Homebrew + Zsh, Oh My Zsh, Oh My Posh, utilidades CLI. |
|
||||||
| `D` | Solo herramientas de contenedores. | Homebrew + Docker CLI, Portainer, Lazydocker. |
|
| `D` | Solo herramientas de contenedores. | Homebrew + Docker CLI, Portainer, Lazydocker. |
|
||||||
|
| `U` | Actualiza la instalación existente. | Repite la instalación completa para asegurar versiones recientes. |
|
||||||
| `Q` | Salir. | — |
|
| `Q` | Salir. | — |
|
||||||
|
|
||||||
## 🔧 Detalles de la configuración Zsh
|
## 🔧 Detalles de la configuración Zsh
|
||||||
|
|||||||
@@ -65,14 +65,55 @@ install_homebrew() {
|
|||||||
brew update
|
brew update
|
||||||
}
|
}
|
||||||
|
|
||||||
|
brew_ensure_formula() {
|
||||||
|
local formula="$1"
|
||||||
|
if brew list --formula "$formula" >/dev/null 2>&1; then
|
||||||
|
echo "✔︎ ${formula} ya está instalado. Omitiendo."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "➜ Instalando ${formula}…"
|
||||||
|
brew install "$formula"
|
||||||
|
}
|
||||||
|
|
||||||
|
brew_ensure_cask() {
|
||||||
|
local cask="$1"
|
||||||
|
if brew list --cask "$cask" >/dev/null 2>&1; then
|
||||||
|
echo "✔︎ ${cask} ya está instalado. Omitiendo."
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "➜ Instalando ${cask}…"
|
||||||
|
brew install --cask "$cask"
|
||||||
|
}
|
||||||
|
|
||||||
install_cli_dependencies() {
|
install_cli_dependencies() {
|
||||||
echo "Instalando herramientas base de desarrollo…"
|
echo "Instalando herramientas base de desarrollo…"
|
||||||
brew install zsh curl wget git jq yq node python go direnv yt-dlp ffmpeg zerotier-one speedtest-cli
|
local formulas=(
|
||||||
|
zsh
|
||||||
|
curl
|
||||||
|
wget
|
||||||
|
git
|
||||||
|
jq
|
||||||
|
yq
|
||||||
|
node
|
||||||
|
python
|
||||||
|
go
|
||||||
|
direnv
|
||||||
|
yt-dlp
|
||||||
|
ffmpeg
|
||||||
|
speedtest-cli
|
||||||
|
jandedobbeleer/oh-my-posh/oh-my-posh
|
||||||
|
)
|
||||||
|
|
||||||
|
for formula in "${formulas[@]}"; do
|
||||||
|
brew_ensure_formula "$formula"
|
||||||
|
done
|
||||||
|
|
||||||
echo "Instalando Oh My Posh y fuentes Nerd Font…"
|
echo "Instalando Oh My Posh y fuentes Nerd Font…"
|
||||||
brew tap homebrew/cask-fonts >/dev/null 2>&1 || true
|
brew tap homebrew/cask-fonts >/dev/null 2>&1 || true
|
||||||
brew install --cask --force font-meslo-lg-nerd-font
|
brew_ensure_cask font-meslo-lg-nerd-font
|
||||||
brew install jandedobbeleer/oh-my-posh/oh-my-posh
|
brew_ensure_cask zerotier-one
|
||||||
}
|
}
|
||||||
|
|
||||||
setup_media_dirs() {
|
setup_media_dirs() {
|
||||||
@@ -294,6 +335,7 @@ main_menu() {
|
|||||||
echo " A) Instalar TODO (recomendado)"
|
echo " A) Instalar TODO (recomendado)"
|
||||||
echo " C) Instalar solo configuración ZSH"
|
echo " C) Instalar solo configuración ZSH"
|
||||||
echo " D) Instalar Docker + Portainer + Lazydocker"
|
echo " D) Instalar Docker + Portainer + Lazydocker"
|
||||||
|
echo " U) Actualizar componentes instalados"
|
||||||
echo " Q) Salir"
|
echo " Q) Salir"
|
||||||
echo ""
|
echo ""
|
||||||
local choice=""
|
local choice=""
|
||||||
@@ -318,6 +360,12 @@ main_menu() {
|
|||||||
install_homebrew
|
install_homebrew
|
||||||
install_docker_stack
|
install_docker_stack
|
||||||
;;
|
;;
|
||||||
|
U|u)
|
||||||
|
echo "Actualizando la instalación existente…"
|
||||||
|
install_homebrew
|
||||||
|
install_zsh_config
|
||||||
|
install_docker_stack
|
||||||
|
;;
|
||||||
Q|q)
|
Q|q)
|
||||||
echo "Saliendo…"
|
echo "Saliendo…"
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
Reference in New Issue
Block a user