This repository contains my personal dotfiles for various tools like Neovim, tmux, and zsh. It is designed to be easily deployable on new systems, primarily macOS and Linux.
- Automated Setup: Includes an installation script (
install.sh) to set up essential tools and dependencies using Homebrew on macOS andapton Ubuntu. - Symbolic/Hard Linking: The
deploy.shscript intelligently creates symbolic links (or hard links for specified files) from the repository to your home directory. - Cross-platform: Primarily supports macOS and Linux (Ubuntu).
- Customizable: Easily extendable and customizable by adding new configuration files or modifying existing ones.
-
Clone the repository:
git clone https://github.com/ingjieye/dotfile.git ~/.dotfiles cd ~/.dotfiles
-
Run the installation script:
This script will install necessary packages. It supports macOS and Ubuntu.
./install.sh
-
Deploy the dotfiles:
This will create symbolic links for your configuration files in your home directory.
./deploy.sh
install.sh: Installs dependencies like Neovim, tmux, fzf, etc.deploy.sh: Deploys the configuration files by creating symlinks..vimrc,.zshrc,.tmux.conf: Configuration files for Vim/Neovim, Zsh, and tmux..config/: Contains configurations for applications likenvim..dothardlink: A list of files to be hard-linked instead of soft-linked..dotignore: A list of files to be ignored by thedeploy.shscript.
To add your own configurations:
- Place your configuration file in the repository.
- If you don't want to deploy it, add its name to
.dotignore. - If you want it to be hard-linked, add its name to
.dothardlink. - Run
./deploy.shagain.
This configuration is deeply inspired by MaskRay/Config.