35 lines
1018 B
Bash
Executable File
35 lines
1018 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Purpose : Install Claude Code using the official native installer
|
|
|
|
set -euo pipefail
|
|
|
|
# Check if Claude Code is already installed
|
|
if command -v claude &>/dev/null; then
|
|
echo "Claude Code is already installed: $(claude --version)"
|
|
else
|
|
echo "Installing Claude Code..."
|
|
curl -fsSL https://claude.ai/install.sh | bash
|
|
fi
|
|
|
|
# The native installer places the binary in ~/.local/bin
|
|
LINE='export PATH="$HOME/.local/bin:$PATH"'
|
|
if grep -qF "$LINE" ~/.bashrc; then
|
|
echo "~/.local/bin already on PATH in .bashrc"
|
|
else
|
|
echo "$LINE" >> ~/.bashrc
|
|
echo "~/.local/bin added to PATH in .bashrc"
|
|
fi
|
|
|
|
# sandbox/setup.sh turns on Claude Code's sandbox in this file, so it must exist
|
|
SETTINGS_FILE="$HOME/.claude/settings.json"
|
|
if [ -f "$SETTINGS_FILE" ]; then
|
|
echo "Claude Code settings already exist at $SETTINGS_FILE"
|
|
else
|
|
echo "Writing Claude Code settings to $SETTINGS_FILE..."
|
|
mkdir -p "$(dirname "$SETTINGS_FILE")"
|
|
echo '{}' > "$SETTINGS_FILE"
|
|
fi
|
|
|
|
echo "Done. Run 'configure claude' to log in."
|