diff --git a/CLAUDE.md b/CLAUDE.md index 3ee3819..2d2e165 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -145,6 +145,11 @@ die Setup-Skripte nicht heruntergeladen werden. - gitcheck Alias funktioniert in interaktiver Shell (nicht via `zsh -l -c`, das ist normal) - Powerlevel10k Instant Prompt: `POWERLEVEL9K_INSTANT_PROMPT=quiet` muss VOR dem source stehen, nicht in .p10k.zsh (wird sonst ueberschrieben) +### Claude Code Installation +- Installer: `curl -fsSL https://claude.ai/install.sh | bash` (native Binary, kein npm mehr) +- npm-Installation ist deprecated seit ~April 2026 +- Binary landet in `~/.local/bin/claude` (bereits im PATH) + ### Claude Code Multi-Profile - Zwei Profile: `claude-priv` (mail@motocamp.de) und `claude-work` (rene@rm202.de) - Config-Dirs: `~/.claude-priv` und `~/.claude-work` diff --git a/diagnose-claude-profiles.sh b/diagnose-claude-profiles.sh index 32c8901..f209ee2 100755 --- a/diagnose-claude-profiles.sh +++ b/diagnose-claude-profiles.sh @@ -28,24 +28,26 @@ if [[ -n "$CLAUDE_BIN" ]]; then else issue "claude Binary nicht gefunden" info "PATH: $PATH" - # npm global bin pruefen - NPM_BIN=$(npm bin -g 2>/dev/null || npm root -g 2>/dev/null | sed 's|/node_modules||') - if [[ -n "$NPM_BIN" ]]; then - info "npm global bin: $NPM_BIN" - if [[ -f "$NPM_BIN/claude" ]]; then - warn "claude liegt in $NPM_BIN aber ist nicht im PATH" + # Neue Installationsorte pruefen (~/.local/bin, /usr/local/bin) + for loc in "$HOME/.local/bin/claude" "/usr/local/bin/claude"; do + if [[ -f "$loc" ]]; then + warn "claude liegt in $loc aber ist nicht im PATH" fi - fi + done + info "Fix: curl -fsSL https://claude.ai/install.sh | bash" fi -# ── 2. npm Paket ─────────────────────────────────────────────────────── -echo -e "\n=== 2. npm Paket ===" -if npm list -g @anthropic-ai/claude-code --depth=0 2>/dev/null | grep -q claude-code; then +# ── 2. Installation ──────────────────────────────────────────────────── +echo -e "\n=== 2. Installation ===" +if [[ -n "$CLAUDE_BIN" ]]; then + ok "Binary vorhanden: $CLAUDE_BIN" +elif npm list -g @anthropic-ai/claude-code --depth=0 2>/dev/null | grep -q claude-code; then PKG=$(npm list -g @anthropic-ai/claude-code --depth=0 2>/dev/null | grep claude-code) - ok "Paket installiert: $PKG" + warn "Veraltete npm-Installation gefunden: $PKG" + info "Migration: curl -fsSL https://claude.ai/install.sh | bash" else - issue "@anthropic-ai/claude-code nicht als npm-Globalpaket installiert" - info "Fix: npm install -g @anthropic-ai/claude-code" + issue "claude nicht installiert" + info "Fix: curl -fsSL https://claude.ai/install.sh | bash" fi # ── 3. Config-Verzeichnisse ──────────────────────────────────────────── diff --git a/setup-desktop-asahi.sh b/setup-desktop-asahi.sh index 7b24bac..77bc33c 100644 --- a/setup-desktop-asahi.sh +++ b/setup-desktop-asahi.sh @@ -63,12 +63,9 @@ done fc-cache -f "$FONT_DIR" 2>/dev/null || true ok "MesloLGS NF Fonts installiert" -# ── 4. npm global + Claude Code ───────────────────────────────────────── +# ── 4. Claude Code ────────────────────────────────────────────────────── echo -e "\n=== 4/8 Claude Code ===" -mkdir -p ~/.npm-global -npm config set prefix '~/.npm-global' -export PATH="$HOME/.npm-global/bin:$PATH" -npm install -g @anthropic-ai/claude-code +curl -fsSL https://claude.ai/install.sh | bash ok "Claude Code installiert" # ── 5. Flatpak-Apps (Brave + ggf. weitere) ────────────────────────────── diff --git a/setup-desktop.sh b/setup-desktop.sh index 5cf9fc2..ca0c0c0 100755 --- a/setup-desktop.sh +++ b/setup-desktop.sh @@ -63,12 +63,9 @@ done fc-cache -f "$FONT_DIR" 2>/dev/null || true ok "MesloLGS NF Fonts installiert" -# ── 4. npm global + Claude Code ───────────────────────────────────────── +# ── 4. Claude Code ────────────────────────────────────────────────────── echo -e "\n=== 4/8 Claude Code ===" -mkdir -p ~/.npm-global -npm config set prefix '~/.npm-global' -export PATH="$HOME/.npm-global/bin:$PATH" -npm install -g @anthropic-ai/claude-code +curl -fsSL https://claude.ai/install.sh | bash ok "Claude Code installiert" # ── 5. Flatpak-Apps (PrusaSlicer) ──────────────────────────────────────