Skip to content

asakin/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

A minimal, opinionated zsh environment for macOS.

What's included: zsh with a 10M-line history, Starship prompt, Antidote plugin manager, zoxide smart navigation, fzf fuzzy finder, and a tmux base config.

How it works: files live in the repo. Symlinks point from ~/ into the repo. Existing files are backed up before anything is replaced. Run ./uninstall.sh to undo.


Install

Clone wherever you keep your projects, then run from there:

git clone https://github.com/asakin/dotfiles.git ~/projects/dotfiles
~/projects/dotfiles/setup.sh
~/projects/dotfiles/install.sh
source ~/.zshrc

install.sh self-detects its own location, so the clone path can be anywhere — adjust the commands accordingly. (Recommended: ~/projects/dotfiles/.)


What gets installed

File Symlinked to
home/.zshrc ~/.zshrc
home/.zsh_plugins.txt ~/.zsh_plugins.txt
home/.config/starship.toml ~/.config/starship.toml
home/.tmux.conf ~/.tmux.conf

Tools installed by setup.sh: starship, zoxide, fzf. Antidote is bootstrapped automatically on first source ~/.zshrc.


Customization

Add plugins: edit ~/.zsh_plugins.txt (the symlink). Changes apply on next shell start.

Customize the prompt: edit ~/.config/starship.toml. See starship.rs/config.

Personal aliases / overrides: create ~/.zshrc.local. The base .zshrc already sources it on shell start ([ -f ~/.zshrc.local ] && source ~/.zshrc.local). The personal layer in asakin/sakinrc symlinks this file.


Update

cd ~/projects/dotfiles && git pull

Symlinks don't need re-creation after pulling. Files update in place.


Uninstall

~/projects/dotfiles/uninstall.sh

Removes symlinks and restores any backed-up originals. The repo itself is left in place — rm -rf ~/projects/dotfiles if you want a clean slate.


Personal layer

This repo is the generic base. Personal tools, aliases, hotkeys, AI integrations live in asakin/sakinrc, which builds on top. Install dotfiles first, then sakinrc.


What's not included

Stripped-down on purpose. No AWS, no cloud CLIs, no AI integrations. Those belong in your own layer on top.


License

MIT

Extensibility API

This repository is designed to be a foundation that can be extended by other configuration layers.

To facilitate this, it exports an environment variable defining an API contract: export DOTFILES_BASE_API_VERSION="1.0"

If you are building an extension on top of this repository, you should check for this version to ensure the required core infrastructure (Zsh, starship, zoxide, fzf, and the .zshrc.extension hook) is present and compatible.

If you fork this repository and modify these core dependencies, you must advance this version number to protect downstream extensions from breaking.

About

Minimal zsh setup for macOS: Starship prompt, Antidote plugins, fzf, zoxide

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages