Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/benknoble/dotfiles
dotfiles for configuration
https://github.com/benknoble/dotfiles
bash bashrc dotfiles profile tmux vim vimrc
Last synced: 3 months ago
JSON representation
dotfiles for configuration
- Host: GitHub
- URL: https://github.com/benknoble/dotfiles
- Owner: benknoble
- License: mit
- Created: 2016-10-19T19:51:29.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-04-06T19:43:34.000Z (10 months ago)
- Last Synced: 2024-04-06T20:35:07.519Z (10 months ago)
- Topics: bash, bashrc, dotfiles, profile, tmux, vim, vimrc
- Language: Vim Script
- Size: 1.91 MB
- Stars: 22
- Watchers: 4
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# dotfiles
[![This project is personal](https://img.shields.io/badge/status-personal-important.svg)](https://benknoble.github.io/status/personal/)
My Dotfiles for configuration of different software and command-line programs
[See also: my workflow](https://gist.github.com/07052655c9b6ef75071a285102c61c93)
:warning:**WARNING**:warning: Dotfiles are _not_ meant to be forked: they are
personal castles that you should construct yourself. That said, feel free to
peruse mine and steal whatever you like.In spite of the above warning, I have tried to make this repo relatively easy to
fork and play with. Sourcing local files, such as `~/.gitconfig.local`, is a
large part of that.## Installing
First, clone the repo into your dotfiles directory (the name of the directory
doesn't matter). If your git supports it, `--jobs ...` might be a good idea. You
can skip the submodules if you choose, but you *must* have the zuo submodule or
a [zuo](https://docs.racket-lang.org/zuo/index.html) installation to execute
build instructions used for installation and maintenance. The submodule is the
easiest route.```bash
mkdir ~/Dotfiles
git clone --recurse-submodules https://github.com/benknoble/Dotfiles.git ~/Dotfiles
cd ~/Dotfiles
```Next, run `./compile-zuo` to kick things off:
```bash
./compile-zuo
zuo . install
```This will do several things:
1. Build [zuo](https://docs.racket-lang.org/zuo/index.html).
1. Install symlinks with `zuo . symlink`, which removes old files and creates
the symlinks. :warning:**No backups are made. Create your own prior to
installing if you wish.**:warning:
2. (Optional) Run `zuo . $(FEATURES)`. See the [zuo script](main.zuo) for
supported options and the defaults. Setting `FEATURES` to an empty string can
be used to skip this.At this point, you may want to setup brew, so do
```bash
# Linux
eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
# macOS
command -v brewzuo . brew-setup
```The next time you start a shell (probably homebrewed `zsh`, since that's what
`zuo . brew-setup` sets it to), your new config files will load, giving you
access to a whole host of new command-line fu.`reload` is a helpful alias (defined for both `bash` and `zsh`) for when changes
have been made to shell dotfiles: it essentially loads those changes into the
environment. `:Reload` exists for `vim`, and there are reload bindings for both
`tmux` and `readline` as well.### Keeping Up-to-date
`zuo . update` should be all you need.
### Other `zuo` things
The build script is _only_ guaranteed to work if run from the top-level of this
repo. It does use zuo-isms to try to work elsewhere, but I haven't really tested
it.Several useful targets are supported. `zuo .` prints a list.
## Documentation & Full Feature List
Check the code—this is where you should probably *not* use something until you
understand what it is doing. Feel free to ask me questions.The old docs have been eliminated. They can be found in the git history.
## Misc
### Theme
I am now using the Dracula themes for all my software. You can find some of them
under the Dracula directory and some in a Vim package. Some are hand-coded and
not official. Additionally, if Dracula Pro is available, I'm using that instead.
I usually use the Van Helsing variant, though the regular variant is also nice.I'm using Victor Mono as a font. Cursive italics have grown on me; ligatures
have not.### Code of Conduct
Note that we also have a [Code of Conduct](/CODE_OF_CONDUCT.md) that governs the
behavioral expectations of the Dotfiles.## License
This project is licensed under the MIT License--see [LICENSE](/LICENSE) for more
information.© 2016 David Ben Knoble
## Acknowledgments
This project was inspired by a [blog
post](http://blog.smalleycreative.com/tutorials/using-git-and-github-to-manage-your-dotfiles/)
from [this guy](https://github.com/michaeljsmalley).I've also grabbed code from a number of places over the development of the
project. I've tried to attribute you in the code where possible, but I can't hit
everybody.Thanks to [Steve Losh](http://stevelosh.com/blog/2010/09/coming-home-to-vim/)
for some Vim help and [teaching](http://learnvimscriptthehardway.stevelosh.com).Thanks further to the kind Internet for providing a wealth of resources when
things go wonky.[drac-term]: https://github.com/dracula/terminal-app