UNPKG

@sebastienrousseau/dotfiles

Version:

The Trusted Shell Platform — Universal dotfiles managed by Chezmoi. Features Bash & Zsh for macOS, Linux & WSL. Rust modern tooling & enterprise-grade security.

177 lines (116 loc) 5.06 kB
--- render_with_liquid: false --- # Troubleshooting Quick checks for common issues. ## Install and update **Problem:** Install script fails immediately - Verify that `git` and `curl` are installed. - Check internet connectivity. - Try running with verbose output: `bash -x install.sh` **Problem:** Chezmoi apply fails - Re-run `chezmoi apply` to re-sync state. - Check for merge conflicts: `chezmoi diff` - If hooks fail, check `~/.local/share/dotfiles.log` for details. - For non-interactive sessions, force apply to avoid TTY prompts: `DOTFILES_NONINTERACTIVE=1 dot apply --force` **Problem:** Packages fail to install - macOS: Verify Homebrew is installed and up to date (`brew update`) - Linux: Run `sudo apt-get update` first - Verify you have sufficient permissions ## Shell startup **Problem:** Shell is slow to start - Run `dot benchmark` to measure startup time - Profile with `zsh -x` to trace startup - Check for slow plugins or large history files **Problem:** Aliases or functions not available - Run `chezmoi apply` to regenerate config files - Source your shell config: `source ~/.zshrc` - Verify the relevant tool is installed **Problem:** `dot doctor` prints a directory listing instead of diagnostics - This usually means `dot` was shadowed by a navigation alias in the current shell session. - Check resolution: `type -a dot` - Fix current session: `unalias dot 2>/dev/null || true && exec zsh` - Validate after reload: `dot doctor` **Problem:** Zsh reports it cannot write `.zwc` files - Cause: stale read-only zsh cache files after an upgrade. - Remove stale caches: - `find ~/.config/shell ~/.config/zsh -type f -name '*.zwc' -delete` - Reload shell: `exec zsh` - Re-run health checks: `dot doctor` **Problem:** Shell crashes on startup - Temporarily move `~/.zshrc` and retry to isolate the fault - Check for syntax errors: `zsh -n ~/.zshrc` - Review recent changes: `chezmoi diff` ## Secrets and encryption **Problem:** Encrypted files fail to decrypt - Confirm `~/.config/chezmoi/key.txt` exists. - Verify the key matches the one used for encryption. - Re-initialize with `dot secrets-init` if needed. **Problem:** Age encryption not working - Verify `age` is installed: `command -v age` - Check key permissions: `ls -la ~/.config/chezmoi/key.txt` (should be 600) ## Neovim **Problem:** Plugins fail to load - Run `:checkhealth` in Neovim - Update plugins: `:Lazy sync` - Check for missing dependencies (node, python, etc.) **Problem:** LSP not working - Install required language servers - Check `:LspInfo` for status - Review `:LspLog` for errors ## Git **Problem:** Git aliases not working - Check if Git config is applied: `git config --list` - Re-apply dotfiles: `chezmoi apply` **Problem:** Delta (diff pager) not showing colors - Verify `delta` is installed - Confirm your terminal supports 256 colors ## Kubernetes tools **Problem:** kubectl context issues - List contexts: `kubectl config get-contexts` - Switch context: `kubectx <context-name>` - Check kubeconfig: `echo $KUBECONFIG` **Problem:** Minikube won't start - Verify Docker is running - Try: `minikube delete && minikube start` - Check logs: `minikube logs` ## Performance **Problem:** High memory usage - Look for runaway processes: `htop` or `btop` - Review shell history size in atuin config - Disable unused plugins ## Common infrastructure failures **Problem:** Nix isn't installed or commands not found - Ensure you have followed the installation guide: `curl -L https://nixos.org/nix/install | sh` - On Linux, you might need to enable experimental features in `~/.config/nix/nix.conf`: `experimental-features = nix-command flakes` - Verify the daemon is running: `ps aux | grep nix-daemon` **Problem:** Systemd isn't available (mostly WSL2) - Dotfiles functions that rely on systemd (like `pueue` management) will fallback to direct execution. - To enable systemd in WSL2, add this to `/etc/wsl.conf` (requires Windows 11 or latest WSL): ```ini [boot] systemd=true ``` - Restart WSL: `wsl.exe --shutdown` **Problem:** GPG or SSH signing fails - Check if your key is present: `gpg --list-secret-keys` or `ssh-add -l` - Ensure `GPG_TTY` is set (dotfiles does this automatically in `rc.d`). - For hardware keys (Yubikey), ensure `pcscd` is running on Linux. ## Advanced Troubleshooting ### WSL2 and Nix Integration Issues For complex WSL2 edge cases, Nix integration problems, and recovery procedures, see the comprehensive guide: **[WSL2 & Nix Troubleshooting Guide](WSL2_NIX_TROUBLESHOOTING.md)** This guide covers: - WSL2 filesystem and networking edge cases - Nix installation and flake management issues - Complete system recovery procedures - Performance optimization for WSL2/Nix environments - Cross-platform migration scenarios ## Still stuck Open an issue with: - OS + version - Output of `dot doctor` (if available) - Relevant log snippets from `~/.local/share/dotfiles.log` - Steps to reproduce the issue - For WSL2/Nix issues: Include diagnostic report from the advanced guide