dotfiles/README.md

50 lines
3.7 KiB
Markdown
Raw Normal View History

# dotfiles Read-Me and Roadmap
2019-02-03 21:31:20 +00:00
2019-12-29 22:12:13 +00:00
## What's in these dotfiles
* [x] vim configuration for simple programming tasks (especially go/typescript/python/bash) and prose
* [x] academic workflow tools, to allow quick citation, pdf compilation, and preview
* [x] simple, efficient polybar with package update notification, and spotify integration
* [x] tmux session management through `tm` and `tl` tools
* [x] quick terminal-wide color management through `sd`/`sD`/`sl`/`sL` commands, allowing two light and dark color-schemes
* [x] many vim color-schemes with quick light/dark switching (`F8`) and theme switch (`<Space>+F8`)
* [x] quick directory jumping using z, with fzf integration
* [x] fzf integrations for bibtex citation, vim buffer management, most recently used switching, shell command history, and more
## Quick-Start
The dotfiles are based on a bare-repository residing in your home directory. To enable a faster usage of the dotfile git commands, a `dot` command is supplied which mirrors the usual `git` functionality, but solely applies it to your dotfiles.
To install you need git on your system; to effectively use the dotfiles you should be using zsh (`chsh -s /bin/zsh` to switch your current user to the shell).
Clone the bare repo, rename it and force a checkout with the following command - **NOTE** this WILL **OVERWRITE YOUR EXISTING FILES**, so have a look at what is contained beforehand.
`git clone https://gitlab.com/marty-oehme/dotfiles.git df && cp -rf df/.git ~/.dotfiles && rm -rf df && cd ~ && git --git-dir=$HOME/.dotfiles/ checkout -f master`
It will clone your dotfiles into the .dotfiles directory in your home directory and then force a checkout of the current master branch. Open a new terminal window and you should live in the dotfiles.
2020-01-06 16:39:05 +00:00
## Main Applications
* [`alacritty`](https://github.com/jwilm/alacritty) - Terminal emulator (GPU accelerated and customizable)
* [`gopass`](https://github.com/gopasspw/gopass) - Password management suite, building on (and largely compatible with) `pass` for unix
* [`i3`](https://i3wm.org/) - Tiling window manager
* [`nvim`](https://neovim.io/) - Neovim configuration
* [`pandoc`](https://pandoc.org) - Pandoc plaintext transformation options (mostly latex templates)
* [`picom`](https://github.com/yshui/picom) - X11 compositor (maintained fork from compton)
* [`polybar`](https://github.com/polybar/polybar) - Easy to customize statusbar
* [`qutebrowser`](https://github.com/qutebrowser/qutebrowser) - vim-key enabled web browser
* [`rofi`](https://github.com/davatorium/rofi) - Application launcher, dmenu replacement
* [`sxhkd`](https://github.com/baskerville/sxhkd) - X11 hotkey manager
* [`tmux`](https://github.com/tmux/tmux/) - terminal multiplexer
* [`vifm`](https://github.com/vifm/vifm) - vim-like file-manager
2019-12-29 22:12:13 +00:00
2020-01-06 16:40:56 +00:00
## Notes
2019-12-29 22:12:13 +00:00
* generally, most configuration for applications follows the XDG specifications, keeping configuration in .config directory and supplementary files in .local/share directory
* `.config/shell` contains all the general zsh/bash/sh configuration and environment variables usually contained in .zshrc/.zprofile/..; it is divided in login shell config (loginrc.d), general shell config (rc.d) and zsh specific (zsh.d)
* `.config/rofi` contains additional scripts and a simple theming framework for rofi and should probably be migrated into the correct directories at some point
* `.local/bin` contains most executable user scripts
* `.local/share/pandoc` contains configuration for academic latex (pandoc, really) writing and is of interest if you want to use this functionality
2020-01-06 16:39:05 +00:00
* `.xinitrc` is used for x initialization and program startup
2019-12-29 22:12:13 +00:00
* `.gitlab-ci.yml` is only used for simple CI code linting and static analysis on gitlab, can be deleted on individual deployments