Skip to content

alecigne/dotfiles

Repository files navigation

Dotfiles

My dotfiles (see definition below), managed using the GNU Stow symlink farm manager.

This repo is used in conjunction with my Ansible-based Debian configuration to document/automate the setup/configuration of my personal workstations.

Table of contents

Dotfiles?

The idea of dotfiles is explained here.

User-specific application configuration is traditionally stored in so called dotfiles (files whose filename starts with a dot). It is common practice to track dotfiles with a version control system such as Git to keep track of changes and synchronize dotfiles across various hosts.

About GNU Stow

I use GNU Stow to manage symbolic links to my dotfiles. You can read a short GNU Stow tutorial in my public notes (also available on Github as a “source” Org file).

The stow.bash script automatically stows the packages in the home directory.

Packages

Alacritty

Alacritty is a cross-platform, OpenGL terminal emulator.

cmus

cmus is a small, fast and powerful console music player for Unix-like operating systems.

Common Lisp

My Common Lisp (SBCL) configuration.

ASDF

Another System Definition Facility, a build system for Common Lisp.

This includes the configuration for ASDF’s source-registry. More info here.

SBCL

SBCL, a high performance Common Lisp compiler.

cVim

cVim, an extension adding Vim-like bindings to Google Chrome.

Just load this once in Chrome:

set localconfig
let configpath = '/path/to/.cvimrc'

Dunst

Dunst is a lightweight notification daemon.

Emacs

My Emacs configuration, included as a submodule.

Git

My Git configuration.

Aliases were originally inspired from the gitalias repo and were then tailored to my usage. .gitalias.org uses org-babel for more readability, and is tangled into the .gitalias file.

GnuPG

My GnuPG config files.

Gradle

Gradle settings.

i3

My config for the i3 window manager, including my i3status configuration.

Irssi

Irssi is a modular text mode chat client. A good occasional alternative to ERC :)

Ledger

My Ledger configuration.

Maven

Settings for Apache Maven.

Pass

My passwords, managed with pass, the standard unix password manager. This is a private submodule pointing to a repository hosted on my local network. Although passwords are safely encrypted with GnuPG, I prefer not to make these files public.

Polybar

Polybar, a fast and easy-to-use status bar. Not used at the moment.

Rclone

My rclone configuration file (encrypted).

Rofi

Rofi, a window switcher, application launcher and dmenu replacement. Used in combination with greenclip.

StumpWM

My StumpWM config, included as a submodule. For when I’m in the mood to experiment.

tmux

tmux, a terminal multiplexer.

urxvt

urxvt, a lightweight terminal emulator. Not used at the moment, replaced by Alacritty.

VSCode

My VSCode config. I keep $HOME/.config/Code/User/settings.json under version control and a list of extensions. A script will install them automatically; I can get them through code --list-extensions.

Wallpapers

Good resources:

Xmodmap

My Xmodmap config.

Zsh

A great shell.