@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.
145 lines (98 loc) • 2.71 kB
Markdown
render_with_liquid: false
# Install
Set up on macOS, Linux, or WSL in 3 to 5 minutes.
**You will need:** `git` and `curl`.
**Default shell:** Fish. You can change it after you install.
## Install
```bash
bash -c "$(
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/master/install.sh
)"
```
Then restart your terminal or run `exec $SHELL`.
## Verify
```bash
dot --version # Confirm installation
dot doctor # Check shell, git, and tools
dot help # Browse available commands
```
## Choose a shell
Fish is the default shell. To switch to Zsh or Nushell, edit `~/.dotfiles/.chezmoidata.toml`:
```toml
default_shell = "zsh"
```
Supported values: `zsh`, `fish`, `nushell`.
Then apply the change:
```bash
dot apply
```
## Feature flags
Turn optional tools on or off after setup. Edit `.chezmoidata.toml`:
```toml
[features]
zsh = true # Zsh shell configuration
fish = true # Fish shell configuration
nushell = true # Nushell configuration
nvim = true # Neovim IDE configuration
tmux = true # Terminal multiplexer
nix = true # Nix package manager integration
```
## Update
```bash
dot update
```
## Next steps
1. Run `dot learn` to take a guided tour.
2. Add your own tweaks in `~/.config/shell/custom/`.
3. Read the [Utilities and `dot` CLI](../reference/UTILS.md) reference.
## Advanced
### Local source install
Clone the repo first, then run the installer from your local copy:
```bash
git clone https://github.com/sebastienrousseau/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
./install.sh
```
### Minimal install
Install only shells and core tools. This skips editor and terminal extras:
```bash
./install.sh --minimal
```
### Non-interactive install
Use this mode for CI or scripts that run without user input:
```bash
DOTFILES_SILENT=1 DOTFILES_NONINTERACTIVE=1 \
bash -c "$(
curl -fsSL https://raw.githubusercontent.com/sebastienrousseau/dotfiles/master/install.sh
)"
```
### Nix
```bash
nix develop ~/.dotfiles/nix
nix profile install ~/.dotfiles/nix#dot-utils
```
### Offline bundle
On a machine with internet access, create a bundle:
```bash
dot bundle ~/Downloads
```
Copy the archive to the target machine. Then unpack and install:
```bash
tar --zstd -xf dotfiles_offline_bundle_*.tar.zst -P
cd ~/.dotfiles
./install.sh --force
```
### Uninstall
```bash
chezmoi purge
rm -rf ~/.dotfiles
rm -rf ~/.local/share/chezmoi ~/.local/share/dotfiles.log
```
### Signed contributions
All commits must be signed. See [Contributing](../../CONTRIBUTING.md) for details.
- [Troubleshooting](TROUBLESHOOTING.md)
- [Support matrix](../reference/SUPPORT_MATRIX.md)