bd78fd9fbe
Modulos de restauracion: - bootstrap: instala yq, age y dependencias base (curl, wget, git, nano, gpg) - ssh: descifra e instala claves SSH desde secrets/sshKeys.tar.gz.age - registry: aplica paquetes apt/snap/flatpak, dotfiles, servicios y configs Docker - thunderbird: instala Thunderbird snap y restaura perfil desde ZIP - claudeCode: configura repositorio apt de Anthropic e instala claude-code - easyEffects: restaura configuracion y presets desde ZIP - wireplumber: restaura dispositivo Bluetooth por defecto y perfiles de audio - cups: restaura impresoras y drivers PPD desde ZIP Scripts de captura (correr antes de push): - scripts/encryptSsh.sh: cifra ~/.ssh con age - scripts/thunderbird/capture.sh: captura perfil de Thunderbird snap - scripts/easyEffects/capture.sh: captura config de EasyEffects flatpak - scripts/wireplumber/capture.sh: captura estado de WirePlumber - scripts/cups/capture.sh: captura impresoras CUPS y PPDs (requiere sudo) Registro de aplicaciones (config/registry.yaml): - 9 paquetes apt, 1 snap (dbeaver-ce), 22 flatpaks incluyendo VSCodium, Bitwarden, Inkscape, LibreOffice, OBS Studio, Nextcloud Desktop, entre otros Secretos incluidos: - secrets/sshKeys.tar.gz.age: claves SSH cifradas con age - secrets/thunderbirdProfile.zip: perfil de Thunderbird sin emails ni cache - secrets/easyEffectsConfig.zip: ajustes y presets de salida de audio - secrets/wireplumberState.zip: estado de audio incluyendo auriculares Bluetooth - secrets/cupsConfig.zip: 5 impresoras configuradas con sus drivers Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
41 lines
1.1 KiB
Bash
Executable File
41 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Corré esto en una máquina nueva. Clona el repo STP y lanza stp.sh.
|
|
#
|
|
# Uso:
|
|
# bash <(curl -fsSL https://gitea.mateosaldain.uy/mateo/stp/raw/branch/main/bootstrap.sh)
|
|
#
|
|
# O descargá y ejecutá manualmente:
|
|
# curl -fsSLo bootstrap.sh https://gitea.mateosaldain.uy/mateo/stp/raw/branch/main/bootstrap.sh
|
|
# bash bootstrap.sh
|
|
|
|
set -euo pipefail
|
|
|
|
readonly giteaHost="gitea.mateosaldain.uy"
|
|
readonly giteaUser="mateo"
|
|
readonly repoName="stp"
|
|
readonly cloneUrl="https://${giteaHost}/${giteaUser}/${repoName}.git"
|
|
cloneDir="${stpDir:-$HOME/.stp}"
|
|
|
|
echo "=== Sistema de Transferencia Personal ==="
|
|
echo ""
|
|
|
|
if ! command -v git &>/dev/null || ! command -v curl &>/dev/null; then
|
|
echo "-> Instalando git y curl..."
|
|
sudo apt-get update -qq
|
|
sudo apt-get install -y git curl
|
|
fi
|
|
|
|
if [[ -d "$cloneDir/.git" ]]; then
|
|
echo "-> Actualizando repositorio STP en $cloneDir..."
|
|
git -C "$cloneDir" pull --ff-only
|
|
else
|
|
echo "-> Clonando repositorio STP en $cloneDir..."
|
|
git clone "$cloneUrl" "$cloneDir"
|
|
fi
|
|
|
|
chmod +x "$cloneDir/stp.sh"
|
|
|
|
echo ""
|
|
echo "-> Lanzando STP..."
|
|
exec bash "$cloneDir/stp.sh" "$@"
|