{"id":18293481,"url":"https://github.com/nwaywood/dotfiles","last_synced_at":"2025-09-07T01:38:31.288Z","repository":{"id":51098963,"uuid":"43045409","full_name":"nwaywood/dotfiles","owner":"nwaywood","description":"My dotfiles environment, inspired heavily by Nick Nisi","archived":false,"fork":false,"pushed_at":"2025-05-21T03:40:47.000Z","size":919,"stargazers_count":13,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-21T04:34:57.474Z","etag":null,"topics":["atom","dotfiles","neovim","tmux","vim","zsh"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nwaywood.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-09-24T04:48:28.000Z","updated_at":"2025-05-21T03:40:51.000Z","dependencies_parsed_at":"2023-10-11T06:19:06.400Z","dependency_job_id":"8850d6a6-cfb6-41e6-a1a9-24a3d5aba3b8","html_url":"https://github.com/nwaywood/dotfiles","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/nwaywood/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwaywood%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwaywood%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwaywood%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwaywood%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nwaywood","download_url":"https://codeload.github.com/nwaywood/dotfiles/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nwaywood%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273986613,"owners_count":25202704,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-06T02:00:13.247Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["atom","dotfiles","neovim","tmux","vim","zsh"],"created_at":"2024-11-05T14:24:42.508Z","updated_at":"2025-09-07T01:38:31.236Z","avatar_url":"https://github.com/nwaywood.png","language":"Lua","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Dotfiles\n\nThis repo is a collection of my Neovim, tmux, zsh, etc. configurations. This dotfile project is heavily inspired by [Nick Nisi's dotfile project](https://github.com/nicknisi/dotfiles). See his talk [vim + tmux - OMG!](https://www.youtube.com/watch?v=5r6yzFEXajQ) if you want to be inspired.\n\n## Install\n\n1. `git clone https://github.com/nwaywood/dotfiles.git ~/.dotfiles`\n1. `cd ~/.dotfiles`\n1. `bash install.sh`\n\nThis `install.sh` script will start by installing all symbolic links into your home directory. Every file with a `.symlink` extension will be symlinked to the home directory with a `.` in front of it. As an example, `zshrc.symlink` will be symlinked in the home directory as `~/.zshrc`. Then, all files in the `$DOTFILES/config` directory will be symlinked to the `~/.config/` directory for applications that follow the [XDG base directory specification](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html), such as Neovim.\n\nNext, the script will check to see if the OS is MacOS. If so, it will install Homebrew (if its not already installed) and will install all the packages listed in `install/brew.sh`. Then, `install/osx.sh` will run and change some OSX configurations. Finally, `zsh` is configured and `oh-my-zsh` is installed.\n\nIn `install/` folder there are other scripts for installing `go`, `atom`, and `npm` packages which are not automatated. If you want to install any of these packages, manually run the file (e.g. `bash install/atom.sh`).\n\n## VSCode Setup\n\nNeed to symlink files into VSCode folder. See readme in vscode folder for details\n\n## Neovim Setup\n\n[Neovim](https://neovim.io/) config is symlinked to `~/.config/nvim` directory by the `install/link.sh` script. Inside of [`.zshrc`](zsh/zshrc.symlink), the `EDITOR` shell variable is set to `nvim`, defaulting to Neovim for editor tasks, such as git commit messages. Additionally, I have aliased `vim` to `nvim` in [`aliases.zsh`](zsh/aliases.zsh) You can remove this if you would rather not alias the `vim` command to `nvim`.\n\n### Installation\n\nNeovim plugins are managed with [vim-plug](https://github.com/junegunn/vim-plug). To install plugins, run:\n\n`nvim +PlugInstall`\n\n## ZSH Setup\n\nZSH is configured in the `zshrc.symlink` file, which will be symlinked to the home directory. The following occurs in this file:\n\n- set the EDITOR to nvim\n- Recursively search the $DOTFILES/zsh directory for files ending in .zsh and source them\n- Setup `oh-my-zsh` and install plugins\n- Add the ~/bin and $DOTFILES/bin directories to the path\n- And more...\n\n`nick-pure.zsh-theme` contains my custom terminal prompt. If you would like to use it, manually symlink it into `~/.oh-my-zsh/custom/themes` or change `ZSH_THEME` in `zshrc.symlink` from `nick` to one of the built-in themes (e.g. `robbyrussell`). My `zshrc` config also relies on a custom plugin `my-vi-mode` which should be copied into `~/.oh-my-zsh/custom/plugins`\n\nFor example:\n```\nln -s /Users/nick.waywood/.dotfiles/oh-my-zsh/custom/themes/nick_pure.zsh-theme /Users/nick.waywood/.oh-my-zsh/custom/themes/nick_pure.zsh-theme\nln -s /Users/nick.waywood/.dotfiles/oh-my-zsh/custom/plugins/my-vi-mode /Users/nick.waywood/.oh-my-zsh/custom/plugins/my-vi-mode\n```\n\n## Tmux Setup\n\nTmux is a terminal multiplexor which lets you create windows and splits in the terminal that you can attach and detach from. I use it to keep multiple projects open in separate windows and sessions and to create an IDE-like environment to work in where I can have my code open in Neovim and a shell open to run tests/scripts. Tmux is configured in ~/.tmux.conf, and in tmux/theme.sh, which defines the colors used, the layout of the tmux bar, and what what will be displayed, including the time and date, open windows, tmux session name, computer name. If not running on macOS, this configuration should be removed.\n\n### Installation\n\nTmux plugins are managed with [tpm](https://github.com/tmux-plugins/tpm). To install plugins, run:\n\n`\u003cprefix\u003e - I`\n\nfrom within tmux. This installs the `tmux-resurrect` plugin which lets tmux sessions/windows/panes be persisted across OS reboots. `prefix - ^s` to save the tmux environment and `prefix - ^r` to restore the tmux environent.\n\n## Font\n\nMy neovim and zsh setups both make use patched [nerd fonts](https://github.com/ryanoasis/nerd-fonts). \nIt is recommended to use one, otherwise some characters will look funky. I personally use `Fira Mono Nerd Font`. It can be installed with:\n\n```bash\nbrew tap homebrew/cask-fonts\nbrew install font-fira-mono-nerd-font\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnwaywood%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnwaywood%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnwaywood%2Fdotfiles/lists"}