latest config changes
This commit is contained in:
parent
86f31edec2
commit
a14e1172d9
5 changed files with 92 additions and 7 deletions
77
setup_mac.sh
Executable file
77
setup_mac.sh
Executable file
|
|
@ -0,0 +1,77 @@
|
|||
#!/bin/bash
|
||||
# Full macOS setup script.
|
||||
# Deploys dotfiles, sets up neovim config, and installs brew applications.
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
||||
|
||||
# --- SSH keygen ---
|
||||
SSH_KEY="$HOME/.ssh/id_ed25519"
|
||||
echo "=== Setting up SSH key ==="
|
||||
if [ -f "$SSH_KEY" ]; then
|
||||
echo "SSH key already exists at $SSH_KEY, skipping."
|
||||
else
|
||||
read -rp "Enter email for SSH key: " ssh_email
|
||||
ssh-keygen -t ed25519 -C "$ssh_email" -f "$SSH_KEY"
|
||||
eval "$(ssh-agent -s)"
|
||||
ssh-add "$SSH_KEY"
|
||||
echo "Public key:"
|
||||
cat "${SSH_KEY}.pub"
|
||||
fi
|
||||
echo
|
||||
|
||||
# --- Deploy dotfiles ---
|
||||
echo "=== Deploying dotfiles ==="
|
||||
"$SCRIPT_DIR/deploy.sh"
|
||||
|
||||
# --- Neovim config ---
|
||||
NVIM_CONFIG="$HOME/.config/nvim"
|
||||
NVIM_REPO="https://forge.alexselimov.com/aselimov/neovim.git"
|
||||
|
||||
echo "=== Setting up neovim config ==="
|
||||
if [ -d "$NVIM_CONFIG" ]; then
|
||||
if [ -L "$NVIM_CONFIG" ]; then
|
||||
echo "Removing existing symlink at $NVIM_CONFIG"
|
||||
rm "$NVIM_CONFIG"
|
||||
elif [ -d "$NVIM_CONFIG/.git" ]; then
|
||||
echo "Neovim config already cloned at $NVIM_CONFIG, pulling latest..."
|
||||
git -C "$NVIM_CONFIG" pull
|
||||
echo "Done."
|
||||
echo
|
||||
else
|
||||
echo "Backing up existing $NVIM_CONFIG -> ${NVIM_CONFIG}.bak"
|
||||
mv "$NVIM_CONFIG" "${NVIM_CONFIG}.bak"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -d "$NVIM_CONFIG/.git" ]; then
|
||||
echo "Cloning neovim config..."
|
||||
git clone "$NVIM_REPO" "$NVIM_CONFIG"
|
||||
echo "Done."
|
||||
echo
|
||||
fi
|
||||
|
||||
# --- Homebrew ---
|
||||
echo "=== Checking for Homebrew ==="
|
||||
if ! command -v brew &>/dev/null; then
|
||||
echo "Homebrew not found. Installing..."
|
||||
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
||||
fi
|
||||
|
||||
echo "=== Installing brew formulae ==="
|
||||
brew install neovim
|
||||
brew install coreutils
|
||||
brew install gnu-sed
|
||||
brew install starship
|
||||
brew install nvm
|
||||
brew install kubectl
|
||||
|
||||
echo "=== Installing brew casks ==="
|
||||
brew install --cask anytype
|
||||
brew install --cask ghostty
|
||||
brew install --cask helium
|
||||
brew install --cask flowvision
|
||||
|
||||
echo
|
||||
echo "macOS setup complete!"
|
||||
Loading…
Add table
Add a link
Reference in a new issue