3.7 KiB
dotfiles Read-Me and Roadmap
What's in these dotfiles
- vim configuration for simple programming tasks (especially go/typescript/python/bash) and prose
- academic workflow tools, to allow quick citation, pdf compilation, and preview
- simple, efficient polybar with package update notification, and spotify integration
- tmux session management through
tm
andtl
tools - quick terminal-wide color management through
sd
/sD
/sl
/sL
commands, allowing two light and dark color-schemes - many vim color-schemes with quick light/dark switching (
F8
) and theme switch (<Space>+F8
) - quick directory jumping using z, with fzf integration
- 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.
Main Applications
alacritty
- Terminal emulator (GPU accelerated and customizable)gopass
- Password management suite, building on (and largely compatible with)pass
for unixi3
- Tiling window managernvim
- Neovim configurationpandoc
- Pandoc plaintext transformation options (mostly latex templates)picom
- X11 compositor (maintained fork from compton)polybar
- Easy to customize statusbarqutebrowser
- vim-key enabled web browserrofi
- Application launcher, dmenu replacementsxhkd
- X11 hotkey managertmux
- terminal multiplexervifm
- vim-like file-manager
Notes
- 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.xinitrc
is used for x initialization and program startup.gitlab-ci.yml
is only used for simple CI code linting and static analysis on gitlab, can be deleted on individual deployments