This repository contains my dotfiles!
A few things I haven't bothered to automate.
Create ~/.gitconfig_local
like:
[user]
email = paul@foo.com
name = Paul Ewing
If using wpr
, create ~/.config/wpr/config.json
like:
{
"WallpaperDir": "/home/username/Pictures/Wallpapers",
"DisplayCount": 1,
"Interval":120
}
If dual booting with Windows, set hardware clock to local time:
timedatectl set-local-rtc 1
Without this, clock time in Windows will be off.
The following aren't in apt and need to be installed manually:
- Chrome
- Beyond Compare
- Insync
- Discord
- RuneLite
Alacritty is not yet in the default Ubuntu apt repositories:
sudo add-apt-repository ppa:mmstick76/alacritty
sudo apt update
To make it easier to re-theme everything at once, I use base16 and flavours. See:
The tl;dr of base16
is that it is a system for designing color schemes.
base16
schemes consists of a palette of 16 colors - 8 shades and 8 accents.
Templates can then be created to render the base16 scheme into various config
formats for different applications.
Due to some turbulence in
the base16
project, I've added my most used schemes directly to my dotfiles
to avoid things breaking if repositories are ever moved or taken down. I've
also created my own templates rather than using the defaults.
Using the flavours
application, these templates are rendered directly into my
dotfiles based on the flavours
config:
To apply a new color scheme, download and install flavours.
The first time running, update sources. Even if using schemes/templates committed to my dotfiles, this still appears to be necessary:
flavours update all
Note: We should add flavours installation to the provision script.
Once flavours is installed, set the theme using the
set-theme script. This not only executes flavours
but also
reloads config across various applications to smoothly transition themes.
set-theme <theme-name>
The name should match the corresponding base16 scheme yaml file without the extension. For example:
flavours apply outrun-dark
The official lists of templates and schemes supported by flavours live here:
- https://github.com/chriskempson/base16-schemes-source/blob/main/list.yaml
- https://github.com/chriskempson/base16-templates-source/blob/master/list.yaml
Manual steps after changing themes:
- Reload tmux config
:source-file ~/.tmux.conf
- We should figure out how to automate this
Some remaining items to tackle in regards to theming:
- Add templates for
- sway
For setup steps on Windows 10, see:
Some useful things to add to .localrc
in WSL.
Remove the background highlighting of folders in ls:
LS_COLORS=$LS_COLORS:'ow=1;34:' ; export LS_COLORS
WezTerm shell integration; this adds some useful features like having new tabs open in the same directory as the previous:
if [ "$TERM_PROGRAM" = "WezTerm" ] && [ -f "$HOME/wezterm.sh" ]; then
source "$HOME/wezterm.sh"
fi
For now just manually create and copy the wezterm.sh
file from here:
https://raw.githubusercontent.com/wez/wezterm/main/assets/shell-integration/wezterm.sh
We could make this a bit nicer by automatically downloading it.