My personal dotfiles and the successor to my "home" repository
Go to file
Salt 006aa36b1c Remove "dot" alias
Kinda don't need that anymore
2021-01-19 02:19:47 -06:00
base Remove "dot" alias 2021-01-19 02:19:47 -06:00
bin Add my custom scripts and binaries 2021-01-19 01:35:10 -06:00
desktop-common Revert "Add backup configuration" 2021-01-19 01:56:33 -06:00
desktop-gruvbox Add gtkrc-2.0 to desktop-gruvbox 2021-01-19 01:48:36 -06:00
firestarter Add Firestarter, my custom DE script suite 2021-01-19 01:32:29 -06:00
git Add git config 2021-01-19 01:37:28 -06:00
mac/.config Move Mac configs over 2021-01-19 02:00:56 -06:00
ssh/.ssh Revert "Add backup configuration" 2021-01-19 01:56:33 -06:00
vim Port over Vim configuration 2021-01-19 01:19:52 -06:00
.gitignore Add .gitignore 2021-01-19 01:12:47 -06:00
.gitmodules Add Minetest stuff to desktop-common 2021-01-19 01:51:10 -06:00
deploy-all.sh Add a deploy-all script 2021-01-19 02:19:05 -06:00
README.md Add a deploy-all script 2021-01-19 02:19:05 -06:00
submodule-checkout-masters-and-update.sh Add a script for updating submodules, make README nicer 2021-01-19 02:16:17 -06:00

Salt's Dotfiles

GNU Stow Edition

Installation

Clone the repository and stow in configs that you want, like so:

cd
git clone git@git.desu.ltd:salt/dotfiles .dotfiles
cd .dotfiles
git submodule update --recursive --remote
stow vim # Or whatever config set you want

I would highly recommend using this repository only as a reference and building your own dotfile solution from scratch.

However, I would also highly recommend using this stow-based approach instead of putting a bare repo in your home directory. Been there, done that. It sucks, especially if you're the type to diverge configs between machines or just want a subset installed.

Overview

This stash contains a number of packages for numerous situations:

package description
base The base package contains shell and core utility configuration. Other packages do not depend on it; it merely contains basic configuration that I find necessary in every case.
bin My custom binaries, plonked at ~/.bin.
desktop-common Common configuration shared across all possible rices. This contains things such as keybindings for applications, Quake configs, Redshift, etc. Configuration files with themes are avoided where possible.
desktop-gruvbox My current rice and its accompanying configs. A nice and simple one with Rofi, bspwm, Dunst, Compton, and Polybar.
firestarter A custom set of desktop environment scripts that I threw together to manage my environment without worrying about the fine details all the time. See the Firestarter repo for more info.
git My personal git configuration. Separated from base because sometimes I don't want cockmail on all my commits.
mac MacOS-specific configs. Very sparse; I hardly ever have to use one.
ssh SSH configuration for my desktop machines.
vim Configuration for Vim, everybody*'s favorite text editor. Contains a fair few plugins and a mildly flabby .vimrc.

Included within are also a handful of management scripts.

script description
deploy-all.sh Deploys all packages. Note that I reserve the right to produce packages with conflicting contents, so in the future this may be refined to only deploy a specific subset of packages (base, vim, etc.).
submodule-checkout-masters-and-update.sh For every submodule in the repo, checks out its master branch (instead of the exact commit specified in the base repo) and then pulls from upstream. Effectively, this updates any submodules in the repo, such as Vim plugins, themes, etc.