Skip to content

Instantly share code, notes, and snippets.

@pinedamg
Last active September 11, 2025 21:04
Show Gist options
  • Select an option

  • Save pinedamg/d74b763ea52f92552afe3562b63e6399 to your computer and use it in GitHub Desktop.

Select an option

Save pinedamg/d74b763ea52f92552afe3562b63e6399 to your computer and use it in GitHub Desktop.
My Setup

SOFTWARES

.. PDF editing

  • Xournal

.. DESIGN

  • PENCIL

.. PROGRAMMING

  • PHPSTORM
  • DOCKER
  • DOCKER-COMPOSE

.. OTHERS

.. CONFIGS

.. UTILS

.. MESSAGING

  • WHATDESK
  • ZOOM
  • SLACK
  • SKYPE
  • TEAMS
  • TELEGRAM

.. EMAIL

  • HIRI

.. CLOUD FILES

  • DROPBOX

SHORTCUT

  • screenshot: flameshot gui

GNOME EXTENSIONS

image

AMITOSAI MTSAUDIO PRO

Install PulseAudio and change profile

sudo apt install pavucontrol

image

ZSH

PLUGINS

plugins=(git ubuntu docker docker-compose extract universalarchive debian common-aliases jump)

THEME

ZSH_THEME="ys"

EXTRA CONFIG PHPSTORM & ANDROID

#!/bin/zsh

# starver mod
# Jetbrains uses jediterm as a java terminal emulator for all terminal uses.
# There are some apparent limits on use:
# - must use old-style shebang - not the #!/usr/bin/env zsh
# - must implement the startup file loading here
#
# Note: original contents are in lib/terminal.jar

# mappings for Ctrl-left-arrow and Ctrl-right-arrow for word moving
bindkey '^[^[[C' forward-word
bindkey '^[^[[D' backward-word

ZDOTDIR=$_OLD_ZDOTDIR

if [ -n "$JEDITERM_USER_RCFILE" ]
then
  source "$JEDITERM_USER_RCFILE"
  unset JEDITERM_USER_RCFILE
fi

if [ -n "$ZDOTDIR" ]
then
  DOTDIR=$ZDOTDIR
else
  DOTDIR=$HOME
fi

if [ -f "/etc/zshenv" ]; then
     source "/etc/zshenv"
fi

if [ -f "$DOTDIR/.zshenv" ]; then
     source "$DOTDIR/.zshenv"
fi

if [ -n $LOGIN_SHELL ]; then
  if [ -f "/etc/zprofile" ]; then
       source "/etc/zprofile"
  fi
  if [ -f "$DOTDIR/.zprofile" ]; then
       source "$DOTDIR/.zprofile"
  fi
fi

if [ -f "/etc/zshrc" ]; then
     source "/etc/zshrc"
fi

if [ -f "$DOTDIR/.zshrc" ]; then
     source "$DOTDIR/.zshrc"
fi

if [ -n $LOGIN_SHELL ]; then
  if [ -f "/etc/zlogin" ]; then
       source "/etc/zlogin"
  fi
  if [ -f "$DOTDIR/.zlogin" ]; then
       source "$DOTDIR/.zlogin"
  fi
fi

if [ -n "$JEDITERM_SOURCE" ]
then
  source $(echo $JEDITERM_SOURCE)
  unset JEDITERM_SOURCE
fi

function override_jb_variables {
  for VARIABLE in $(env)
  do
    NAME=${VARIABLE%%=*}
    if [[ $NAME = '_INTELLIJ_FORCE_SET_'* ]]
    then
      NEW_NAME=${NAME:20}
      if [ -n "$NEW_NAME" ] && [ "$NEW_NAME" != "PATH" ]
      then
        VALUE=${VARIABLE#*=}
        export "$NEW_NAME"="$VALUE"
      fi
    fi
  done
}
#!/bin/bash
# --- Configuración Inicial ---
echo "Iniciando script de post-instalación de Pop!_OS..."
# Función para verificar si un comando existe
command_exists () {
type "$1" &> /dev/null ;
}
# --- Configuración de Kernel para NVIDIA (Driver 470) ---
# ¡IMPORTANTE! Si estás usando una GPU NVIDIA antigua (ej. GTX 650) con el driver 470,
# es CRÍTICO que uses la ISO de Pop!_OS con drivers NVIDIA para la instalación.
# Este comando retiene el kernel actual para evitar actualizaciones que rompan la compatibilidad.
# ADVERTENCIA: Esto impide actualizaciones de seguridad del kernel. Libera manualmente si necesitas actualizar.
echo "ADVERTENCIA: Esto impide actualizaciones de seguridad del kernel. Libera manualmente si necesitas actualizar."
echo "# ¡IMPORTANTE! Si estás usando una GPU NVIDIA antigua (ej. GTX 650) con el driver 470"
sudo apt-mark hold linux-image-6.12.10-76061203-generic linux-headers-6.12.10-76061203-generic
# --- Actualizar e Instalar Paquetes Básicos ---
echo "Actualizando el sistema e instalando paquetes básicos..."
sudo apt-get update -y
echo "Instalando herramientas de desarrollo esenciales, utilidades del sistema y dependencias de lenguajes..."
sudo apt-get install -y \
build-essential \
curl \
zip \
unzip \
zsh \
git \
vim \
htop \
terminator \
flameshot \
cpu-checker \
network-manager-openvpn-gnome \
openvpn-systemd-resolved \
openvpn \
gnome-user-share \
meld \
jq \
ncdu \
bat \
tldr \
# Dependencias para pyenv y rbenv (compilación de Python/Ruby)
make \
libssl-dev \
zlib1g-dev \
libbz2-dev \
libreadline-dev \
libsqlite3-dev \
wget \
llvm \
libncursesw5-dev \
xz-utils \
tk-dev \
libxml2-dev \
libxmlsec1-dev \
libffi-dev \
liblzma-dev \
libyaml-dev \
libgmp-dev # Para algunas gemas de Ruby
# --- Instalar NVM (Node Version Manager) ---
echo "Instalando NVM..."
if [ ! -d "$HOME/.nvm" ]; then
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
else
echo "NVM ya está instalado. Saltando instalación."
fi
# --- Cambiar Shell por Defecto a Zsh ---
echo "Cambiando el shell por defecto a Zsh..."
if [ "$(basename "$SHELL")" != "zsh" ]; then
chsh -s "$(which zsh)"
echo "Shell cambiado a Zsh. Deberás cerrar sesión y volver a iniciarla para que el cambio surta efecto."
else
echo "Zsh ya es el shell por defecto."
fi
# --- Instalar Oh My Zsh ---
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
else
echo "Oh My Zsh ya está instalado. Saltando instalación."
fi
# --- Instalar SDKMAN! ---
echo "Instalando SDKMAN!"...
if [ ! -d "$HOME/.sdkman" ]; then
curl -s "https://get.sdkman.io" | bash
# Source SDKMAN! init script for immediate use in this shell
export SDKMAN_DIR="$HOME/.sdkman"
[ -s "$SDKMAN_DIR/bin/sdkman-init.sh" ] && \. "$SDKMAN_DIR/bin/sdkman-init.sh"
else
echo "SDKMAN! ya está instalado. Saltando instalación."
fi
# --- Instalar rbenv (Gestor de Versiones de Ruby) ---
echo "Instalando rbenv..."
if [ ! -d "$HOME/.rbenv" ]; then
git clone https://github.com/rbenv/rbenv.git "$HOME/.rbenv"
# Añadir rbenv a PATH y inicializar
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> "$HOME/.zshrc"
echo 'eval "$(rbenv init -)"' >> "$HOME/.zshrc"
# Instalar ruby-build (plugin para `rbenv install` comando)
git clone https://github.com/rbenv/ruby-build.git "$HOME/.rbenv/plugins/ruby-build"
else
echo "rbenv ya está instalado. Saltando instalación."
fi
# --- Instalar Chezmoi (Comentado por solicitud) ---
# echo "Instalando Chezmoi..."
# if ! command_exists chezmoi; then
# snap install chezmoi --classic
# else
# echo "Chezmoi ya está instalado. Saltando instalación."
# fi
# --- Inicializar Repositorio Chezmoi (Comentado por solicitud) ---
# # ¡¡¡ADVERTENCIA DE SEGURIDAD CRÍTICA!!!
# # NUNCA PONGAS TOKENS DE ACCESO PERSONAL DIRECTAMENTE EN UN SCRIPT.
# # Esta línea es un EJEMPLO y DEBE ser ejecutada manualmente por el usuario
# # o el token debe ser gestionado de forma segura (ej. variable de entorno, gestor de secretos).
# echo "--- ATENCIÓN: INICIALIZACIÓN DE CHEZMOI CON TOKEN ---"
# echo "Por motivos de seguridad, la inicialización de Chezmoi con tu token DEBE hacerse manualmente."
# echo "Ejecuta el siguiente comando en tu terminal, reemplazando <TU_TOKEN_GITLAB> con tu token real:"
# echo "chezmoi init https://personal:<TU_TOKEN_GITLAB>@gitlab.com/pinedamg/chezmoi-dot-secret-files.git"
# echo "Luego, ejecuta 'chezmoi apply' para aplicar tus dotfiles."
# # chezmoi init https://personal:[email protected]/pinedamg/chezmoi-dot-secret-files.git
# # chezmoi apply
# --- Instalar Homebrew ---
echo "Instalando Homebrew, un gestor de paquetes para macOS y Linux..."
if ! command_exists brew; then
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Configurar Homebrew para Zsh
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> "$HOME/.zshrc"
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
else
echo "Homebrew ya está instalado. Saltando instalación."
fi
# --- Instalar FVM (Flutter Version Manager) con Homebrew ---
echo "Instalando FVM (Flutter Version Manager)..."
if command_exists brew; then
if ! command_exists fvm; then
brew tap leoafarias/fvm
brew install fvm
else
echo "FVM ya está instalado. Saltando instalación."
fi
else
echo "Homebrew no está instalado. Considera instalar FVM manualmente si lo necesitas."
fi
# --- Instalar GitHub CLI con Homebrew ---
echo "Instalando GitHub CLI (gh)..."
if command_exists brew; then
if ! command_exists gh; then
brew install gh
else
echo "GitHub CLI ya está instalado. Saltando instalación."
fi
else
echo "Homebrew no está instalado. Saltando instalación de gh."
fi
# --- Instalar Pyenv (Gestor de Versiones de Python) ---
echo "Instalando Pyenv..."
if [ ! -d "$HOME/.pyenv" ]; then
curl https://pyenv.run | bash
# Añadir a .zshrc
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> "$HOME/.zshrc"
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> "$HOME/.zshrc"
echo 'eval "$(pyenv init -)"' >> "$HOME/.zshrc"
echo 'eval "$(pyenv virtualenv-init -)"' >> "$HOME/.zshrc"
else
echo "Pyenv ya está instalado. Saltando instalación."
fi
# --- Mejoras para Zsh (Plugins de Oh My Zsh) ---
echo "Instalando plugins para Zsh..."
# zsh-autosuggestions
if [ ! -d "${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions" ]; then
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
else
echo "zsh-autosuggestions ya está instalado."
fi
# zsh-syntax-highlighting
if [ ! - -d "${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting" ]; then
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
else
echo "zsh-syntax-highlighting ya está instalado."
fi
# --- Instalar Aplicaciones Snap (Consolidado) ---
echo "Instalando aplicaciones Snap (paquetes universales de Linux)..."
sudo snap install \
hiri \
brave \
rambox \
authy \
hplip-printer-app \
code --classic \
postman \
dbeaver-ce \
android-studio --classic \
flutter --classic \
bitwarden \
zoom-client \
spotify
# --- Instalar Dropbox (via .deb oficial) ---
echo "Instalando Dropbox (via .deb oficial)..."
if ! command_exists dropbox; then
echo "ADVERTENCIA: Se va a descargar e instalar Dropbox a través de un paquete .deb oficial."
# Descargar el paquete .deb para Ubuntu 22.04 (Jammy Jellyfish)
wget -O "$HOME/Downloads/dropbox.deb" "https://www.dropbox.com/download?plat=lnx.x86_64"
sudo dpkg -i "$HOME/Downloads/dropbox.deb"
sudo apt install -f # Para resolver dependencias
rm "$HOME/Downloads/dropbox.deb" # Limpiar el archivo descargado
else
echo "Dropbox ya está instalado. Saltando instalación."
fi
# --- Instalar Aplicaciones Flatpak (Consolidado) ---
echo "Configurando Flathub y instalando aplicaciones Flatpak..."
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# Solo instalamos Flatpaks que no tienen una alternativa mejor (APT/Snap/.deb)
# Si quieres instalar Meld via Flatpak, descomenta esta linea
flatpak install -y \
# org.gnome.meld # Ahora via APT, pero si quieres Flatpak, descomenta esta linea
# --- Instalar Docker ---
echo "Instalando Docker y sus componentes..."
# Añadir GPG key oficial de Docker
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg # Asegurar permisos de lectura
# Añadir repositorio de Docker a las fuentes de APT
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Actualizar índices de paquetes e instalar Docker
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# --- Post-Instalación de Docker ---
echo "Configurando permisos de Docker..."
if ! getent group docker > /dev/null; then
sudo groupadd docker
fi
sudo usermod -aG docker "$USER"
sudo chown "$USER":"$USER" "$HOME/.docker" -R
sudo chmod g+rwx "$HOME/.docker" -R
# --- Actualización Final del Sistema y Limpieza ---
echo "Realizando actualización final del sistema y limpieza..."
sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt-get autoremove -y
sudo apt-get clean
echo "Script de post-instalación finalizado."
echo ""
echo "================================================="
echo " ACCIONES MANUALES REQUERIDAS POST-INSTALACIÓN"
echo "================================================="
echo ""
echo "1. REINICIAR SESIÓN:"
echo " Debes CERRAR SESIÓN y VOLVER A INICIARLA (o reiniciar el sistema)."
echo " Esto es necesario para:"
echo " - Cambiar tu shell por defecto a Zsh."
echo " - Aplicar los permisos de grupo para poder usar Docker sin 'sudo'."
echo ""
echo "2. ACTIVAR PLUGINS DE ZSH:"
echo " Edita tu archivo de configuración de Zsh con: code ~/.zshrc"
echo " Busca la línea que empieza con 'plugins=(...)' y añade los nuevos plugins."
echo " Debería quedar así: plugins=(git zsh-autosuggestions zsh-syntax-highlighting)"
echo " Guarda el archivo y reinicia la terminal o ejecuta: source ~/.zshrc"
echo ""
echo "3. INICIAR SESIÓN EN GITHUB CLI:"
echo " Ejecuta el siguiente comando en tu nueva terminal Zsh:"
echo " gh auth login"
echo ""
echo "4. CONFIGURAR CHEZMOI (Opcional):"
echo " Si usas Chezmoi, ejecuta el comando de inicialización con tu token personal:"
echo " chezmoi init https://personal:<TU_TOKEN_GITLAB>@gitlab.com/pinedamg/chezmoi-dot-secret-files.git"
echo " Luego, aplica tus dotfiles con: chezmoi apply"
echo ""
echo "================================================="

Guía Detallada de Particionamiento y LVM para Pop!_OS

Esta guía te acompañará durante el proceso de instalación de Pop!_OS, centrándose en la configuración avanzada de tus discos para maximizar el rendimiento, la flexibilidad y la seguridad.

Recuerda:

  • Haz una copia de seguridad de todos tus datos importantes antes de comenzar.
  • Ten a mano las contraseñas que usarás para el cifrado.

Conceptos Clave de LVM (Recordatorio):

  • Volumen Físico (PV): Una partición de disco (o disco entero) preparada para LVM.
  • Grupo de Volúmenes (VG): Un "pool" de almacenamiento creado a partir de uno o más PVs.
  • Volumen Lógico (LV): Una "partición" flexible creada dentro de un VG, que puedes formatear y montar.

Paso a Paso durante la Instalación de Pop!_OS

  1. Arranca desde tu USB de instalación de Pop!_OS.
  2. Sigue los pasos iniciales del instalador (idioma, teclado, etc.).
  3. Cuando llegues a la pantalla de "Tipo de Instalación", selecciona "Instalación Personalizada (Avanzada)" o "Something else". Haz clic en "Continuar".

Configuración de Discos

Ahora verás una ventana con tus discos (/dev/sda, /dev/sdb, /dev/sdc). Procederemos disco por disco.

1. Configuración de SSD1 (/dev/sda - 111.8GB - KINGSTON SHSS37A)

Este disco albergará tu sistema operativo, /var (Docker, bases de datos) y swap.

  • 1.1. Crea la Partición /boot:

    • Selecciona el disco /dev/sda.
    • Haz clic en el botón + (o "Add") para crear una nueva partición.
    • Tamaño: 1 GB (1024 MB)
    • Tipo: Primary (Primaria)
    • Sistema de Archivos: Ext4 journaling file system
    • Punto de Montaje: /boot
    • Haz clic en "OK" (o "Add Partition").
  • 1.2. Crea la Partición para LVM Cifrado:

    • Selecciona el espacio libre restante en /dev/sda.
    • Haz clic en el botón + (o "Add").
    • Tamaño: Deja el valor por defecto (usará todo el espacio restante, aprox. 110 GB).
    • Tipo: Primary (Primaria)
    • Sistema de Archivos: Busca la opción que diga "Physical volume for encryption" (Volumen físico para cifrado).
    • Contraseña: Establece una contraseña fuerte y recuérdala. Esta será la contraseña que te pedirá al arrancar el sistema.
    • Haz clic en "OK".
  • 1.3. Configura LVM sobre la Partición Cifrada:

    • Después de crear la partición cifrada, el instalador te preguntará si quieres usarla como "Volumen Físico para LVM". Confirma que sí.
    • Se te pedirá crear un Grupo de Volúmenes (VG). Nómbralo: vg_system.
    • Haz clic en "OK".
  • 1.4. Crea los Volúmenes Lógicos (LVs) dentro de vg_system:

    • Ahora, selecciona el Grupo de Volúmenes vg_system que acabas de crear.
    • Haz clic en el botón + (o "Add") para crear un nuevo Volumen Lógico.
    • LV para / (Raíz):
      • Tamaño: 40 GB (40960 MB)
      • Sistema de Archivos: Ext4 journaling file system
      • Punto de Montaje: /
      • Haz clic en "OK".
    • LV para /var:
      • Tamaño: 50 GB (51200 MB)
      • Sistema de Archivos: Ext4 journaling file system
      • Punto de Montaje: /var
      • Haz clic en "OK".
    • LV para swap:
      • Tamaño: 16 GB (16384 MB)
      • Sistema de Archivos: swap area
      • Haz clic en "OK".
    • ¡Importante! Deja el espacio restante en vg_system sin asignar. Esto te dará flexibilidad para expandir tus LVs en el futuro.

2. Configuración de SSD2 (/dev/sdb - 223.6GB - KINGSTON SA400S3)

Este disco albergará tu /home y tus proyectos de desarrollo.

  • 2.1. Crea la Partición para LVM Cifrado:

    • Selecciona el disco /dev/sdb.
    • Haz clic en el botón + (o "Add").
    • Tamaño: Deja el valor por defecto (usará todo el disco, 223.6 GB).
    • Tipo: Primary (Primaria)
    • Sistema de Archivos: physical volume for encryption
    • Contraseña: Se te pedirá establecer una contraseña. ¡Usa una contraseña fuerte!
    • Haz clic en "OK".
  • 2.2. Configura LVM sobre la Partición Cifrada:

    • Confirma que quieres usarla como "Volumen Físico para LVM".
    • Crea un nuevo Grupo de Volúmenes (VG). Nómbralo: vg_data.
    • Haz clic en "OK".
  • 2.3. Crea los Volúmenes Lógicos (LVs) dentro de vg_data:

    • Selecciona el Grupo de Volúmenes vg_data.
    • Haz clic en el botón + (o "Add").
    • LV para /home:
      • Tamaño: 180 GB (184320 MB)
      • Sistema de Archivos: Ext4 journaling file system
      • Punto de Montaje: /home
      • Haz clic en "OK".
    • LV para /opt (o /srv/magento):
      • Tamaño: 40 GB (40960 MB)
      • Sistema de Archivos: Ext4 journaling file system
      • Punto de Montaje: /opt (si es para software general) o /srv/magento (si quieres un punto de montaje específico para tu instalación de Magento).
      • Haz clic en "OK".
    • ¡Importante! Deja el espacio restante en vg_data sin asignar.

3. Configuración de HDD (/dev/sdc - 1.8TB - WDC WD20EZRZ-22Z)

Este disco será para almacenamiento masivo de datos.

  • 3.1. Crea la Partición para LVM (Cifrado Opcional):

    • Selecciona el disco /dev/sdc.
    • Haz clic en el botón + (o "Add").
    • Tamaño: Deja el valor por defecto (usará todo el disco, 1.8 TB).
    • Tipo: Primary (Primaria)
    • Sistema de Archivos:
      • Si NO quieres cifrar: physical volume for LVM
      • Si SÍ quieres cifrar: physical volume for encryption (y establece una contraseña).
    • Haz clic en "OK".
  • 3.2. Configura LVM sobre la Partición:

    • Confirma que quieres usarla como "Volumen Físico para LVM".
    • Crea un nuevo Grupo de Volúmenes (VG). Nómbralo: vg_archive.
    • Haz clic en "OK".
  • 3.3. Crea el Volumen Lógico (LV) dentro de vg_archive:

    • Selecciona el Grupo de Volúmenes vg_archive.
    • Haz clic en el botón + (o "Add").
    • LV para /data (o /mnt/archive):
      • Tamaño: Deja el valor por defecto (usará casi todo el espacio del VG, aprox. 1.7 TB).
      • Sistema de Archivos: Ext4 journaling file system
      • Punto de Montaje: /data o /mnt/archive (elige el que prefieras para tus datos grandes).
      • Haz clic en "OK".
    • ¡Importante! Deja un pequeño espacio sin asignar en vg_archive para flexibilidad.

Revisión Final y Continuar

  1. Revisa el Resumen: Antes de continuar, el instalador te mostrará un resumen de todos los cambios que se realizarán en tus discos. ¡Revisa cuidadosamente que todo coincida con esta guía!
  2. Haz clic en "Instalar Ahora" (o "Continue").
  3. El instalador te pedirá que confirmes los cambios y comenzará el proceso de instalación.

Después de la Instalación (Acciones Post-Instalación)

Una vez que Pop!_OS esté instalado y hayas iniciado sesión:

  1. Ejecuta el Script de Post-Instalación:

    • Copia tu post_install_script.sh a tu nueva instalación.
    • Abre una terminal y ejecuta:
      chmod +x post_install_script.sh
      ./post_install_script.sh
    • Este script instalará la mayoría de tus herramientas de forma automatizada.
  2. Realiza las "ACCIONES MANUALES REQUERIDAS":

    • El script te indicará los pasos manuales finales (reiniciar sesión, configurar plugins de Zsh, iniciar sesión en GitHub CLI, etc.).
  3. Configura el SSD Externo:

    • Conéctalo. Puedes montarlo manualmente cuando lo necesites o configurar una entrada en /etc/fstab para que se monte automáticamente en un punto de montaje específico (ej. /mnt/external_ssd).
  4. Consideraciones Adicionales:

    • Limpieza de Docker: Acostúmbrate a usar docker system prune regularmente para limpiar imágenes y volúmenes antiguos y liberar espacio en /var/lib/docker.
    • Monitorización: Usa df -h, ncdu, htop para monitorear el uso de tus discos y recursos.

¡Con esta guía, tu nueva instalación de Pop!_OS estará optimizada para tus necesidades de desarrollo!

#!/bin/sh
## UPDATE AFTER FRESH INSTALL
sudo apt-get update -y
## INSTALL BASIC
sudo apt-get install -y \
snapd \
zsh \
git \
vim \
htop \
cpu-checker \
openvpn-systemd-resolved \
openvpn \
ca-certificates \
curl \
gnupg \
lsb-release
## INSTALL NVM
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
## INSTALL GITPROMPT
git clone https://github.com/magicmonty/bash-git-prompt.git ~/.bash-git-prompt --depth=1
chsh -s $(which zsh)
## INSTALL OHMYZSH
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
## INSTALL HOMEBREW
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
(echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/mpineda/.bashrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
sudo apt-get install build-essential -y
brew install gcc
## INSTSALL CHEZMOI
brew install chezmoi
## CHEZMOI INIT REPO
chezmoi init https://personal:[email protected]/pinedamg/chezmoi-dot-secret-files.git
chezmoi apply
brew cleanup totp-cli
## INSTALL GITHUB CLI WITH BREW
# brew install gh
## INIT GH
# gh auth login
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment