My personal configuration files.
Find a file
Marty Oehme b702158b7c Add central variable setting bootstrap directory
Prepare for moving bootstrap directory to conform to new ignore pattern
of autostow.sh script. Bootstrap directory can be overwritten through
environment variable BOOTSTRAP_DIRECTORY, however for now it still
rigidly requires the existence of an install_packages.sh file and an
autostow.sh file which it wants to execute.
2020-01-30 13:18:36 +01:00
alacritty/.config/alacritty Switch to GNU stow 2019-12-29 23:12:13 +01:00
bootstrap Add autostow.sh ignore pattern to underscore dirs 2020-01-30 12:51:48 +01:00
fontconfig/.config/fontconfig Switch to GNU stow 2019-12-29 23:12:13 +01:00
gopass/.config/gopass Switch to GNU stow 2019-12-29 23:12:13 +01:00
home Switch to GNU stow 2019-12-29 23:12:13 +01:00
i3/.config/i3 Switch to GNU stow 2019-12-29 23:12:13 +01:00
libinput-gestures/.config Switch to GNU stow 2019-12-29 23:12:13 +01:00
nvim/.config/nvim [nvim] Add keymap to rg through hidden files 2020-01-30 11:44:44 +01:00
pandoc/.local/share/pandoc/templates Add personalized pandoc latex template 2020-01-03 10:29:44 +01:00
picom/.config/picom Switch to GNU stow 2019-12-29 23:12:13 +01:00
polybar/.config/polybar Switch to GNU stow 2019-12-29 23:12:13 +01:00
qutebrowser Switch to legacy gmail quickmark 2020-01-28 21:20:29 +01:00
rofi/.config/rofi Switch to GNU stow 2019-12-29 23:12:13 +01:00
rofi-surfraw/.config/rofi-surfraw Switch to GNU stow 2019-12-29 23:12:13 +01:00
scripts/.local/bin Flatten script file hierarchy 2020-01-04 12:19:39 +01:00
shell/.config/shell Remove dot command from shell 2019-12-30 10:27:20 +01:00
sxhkd/.config/sxhkd Switch to GNU stow 2019-12-29 23:12:13 +01:00
tmux/.config/tmux Fix tmux dot session to work with stow dotfiles 2020-01-03 10:10:58 +01:00
vifm/.config/vifm Switch to GNU stow 2019-12-29 23:12:13 +01:00
xdg-user-dirs/.config Switch to GNU stow 2019-12-29 23:12:13 +01:00
xresources/.config/xresources Switch to GNU stow 2019-12-29 23:12:13 +01:00
.gitignore Add gitignore file 2020-01-06 17:21:11 +01:00
install.sh Add central variable setting bootstrap directory 2020-01-30 13:18:36 +01:00
LICENSE Add LICENSE 2019-06-07 08:33:58 +00:00
README.md Fix headings in README.md 2020-01-06 16:40:56 +00:00

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 and tl 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 unix
  • i3 - Tiling window manager
  • nvim - Neovim configuration
  • pandoc - Pandoc plaintext transformation options (mostly latex templates)
  • picom - X11 compositor (maintained fork from compton)
  • polybar - Easy to customize statusbar
  • qutebrowser - vim-key enabled web browser
  • rofi - Application launcher, dmenu replacement
  • sxhkd - X11 hotkey manager
  • tmux - terminal multiplexer
  • vifm - 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