Changelog
Changelog
Every change to these dotfiles since the first commit in June 2014, newest first. Versions are dates (YYYY.MM.DD). Older years are grouped into one release each.
Jump to: 2026.10.13 · 2026.09.23 · 2026.08.26 · 2026.05.25 · 2026.05.21 · 2026.05.08 · 2026.05.05 · 2026.04.27 · 2026.04.25 · 2026.04.24 · 2026.04.14 · 2020–2023 · 2019 · 2018 · 2015–2016 · 2014.08.24 · 2014.06.21
2026.10.13
October 13, 2026 · Compare changes
The installer grew up. It now asks two questions (your login shell and your locale), shows a plan before touching anything, and installs what the configs need, on Ubuntu, Debian, Fedora, Arch, openSUSE and Alpine. Everything is documented on a new docs site with search and a high-contrast mode.
- Added
install.shasks for your login shell (zsh by default, bash, or keep your current one) and runschshfor you. - Added
install.shasks for your locale (en_US.UTF-8by default) and generates it if it’s missing. Your choice is saved to~/.config/locale.conf. - Added
-yskips all questions.--shell=and--locale=answer them up front. With no terminal (Docker builds, CI) the defaults are used automatically. - AddedThe installer shows a plan and asks
Proceed? [Y/n]before changing anything. - AddedOn desktops the installer asks for a Nerd Font (Hasklug by default; JetBrains Mono, Fira Code, Meslo, Caskaydia Cove or Hack) and installs it for you, so prompt and tmux icons show instead of boxes.
--font=picks one up front; kitty’s config follows your choice. - Addedkitty’s theme files (Lasik and Catppuccin Mocha) are installed with
kitty.conf, so kitty starts with the Lasik colours. - AddedMissing tools are installed: zsh,
less,bash-completion,notify-send(desktops only) and kitty’s terminfo (servers, so SSH from kitty works). - AddedBash support:
install.shinstalls.bash_profile,.inputrcand a small.bashrcthat loads.bash_profile, so new terminal tabs get your aliases too. - AddedUbuntu’s useful defaults in both shells:
lesspipe(read archives and PDFs withless),dircolors, coloured zsh completion, bash-completion and thealertalias. - Added
~/.bash_profile.localfor machine-specific lines in bash (like~/.zshenv.localfor zsh). - AddedBash adds
~/binand~/.local/bintoPATH, as Ubuntu’s~/.profilewould. - Addedzsh completion is case-insensitive and matches anywhere in a name.
source <Tab>only offers files in the current folder. - AddedGit defaults: new repos start on
main, Windows line endings are converted on commit, andgit pullrebases. - AddedA 6-pane tmuxp layout with a clock (
peaclock) and the weather. - AddedA docs site with one page per config, search, troubleshooting, known issues, and Light / Dark / High contrast themes.
- AddedThe changelog is on the docs site too, with a coloured tag on every change: Changelog.
- AddedText size buttons on the docs site (A− / 100% / A+, from 87.5% to 150%), next to the theme menu. Your choice is remembered, and text grows a little on wider screens.
- ChangedVim, Neovim and nano all indent with tabs, shown 4 wide (Vim used 2 spaces, nano 4 spaces). YAML files get spaces in Vim and Neovim, because YAML doesn’t allow tabs.
- ChangedThe installer also installs
.vimrc, the tmuxp layout, the peaclock config and.gitignore_global. - ChangedThe installer adds the Git defaults and aliases to your own git settings, one at a time. Your
~/.gitconfigisn’t replaced, and settings you already have are kept. - Changedbash loads
~/.zsh_secretstoo, so your API keys work in both shells. - ChangedThe Android SDK is only added to
PATHwhen it’s installed. - Changed
.zshrc.local.exampleis a short, up-to-date template. - ChangedThe README is now a short intro that links to the docs site.
- ChangedThe docs home page and README say up front that the defaults are opinionated, with how to change each one.
- ChangedScreenshots on the docs site for peaclock, Vim, Neovim and
git lg. - ChangedThe “kitty not found” warning only appears on desktops. On a server kitty isn’t needed.
- ChangedRemote installs use the
mainbranch. - ChangedThe Claude Code alias is now
cinstead ofcc, so the C compilerccworks again. - Changed
myipshows all your IP addresses: the local one and the public one from both ifconfig.me and OpenDNS, with an IPv6 column when IPv6 is available. It replaces theipandlocalipaliases, so Linux’s ownipcommand works again. - ChangedThe local IP in
myipandiicomes from the interface that actually leads to the internet, so it also works on Arch, Alpine and Macs on Ethernet.
- Fixed
install.shfailed because it looked for.nanorcin its old place. - FixedBash printed
setlocale: cannot change localewarnings on systems without theen_USlocale. The shells now fall back toC.UTF-8. - FixedInstalling on a fresh Arch system failed with “target not found”.
- FixedA cut-off download of
install.shthroughcurl | bashcould run half an install. Now nothing runs until the whole script has arrived. - FixedOn Fedora the login shell was set to an odd path (
/usr/sbin/zsh). - FixedSome “is it installed?” checks could wrongly answer no on systems with a lot of output (many fonts or locales).
- FixedOne failed step (for example no network while installing starship) no longer stops the whole installer. The other steps still run, and the failed ones are listed at the end.
- FixedVim’s colour scheme, Sublime Monokai, is now included and installed, so Vim no longer shows an error at start-up. If it’s ever missing, Vim uses a built-in scheme instead.
- Fixedkitty’s Catppuccin theme file had a typo in its name (
catppucin), so switching to it failed. - FixedThe tmux comment about installing plugins now says the right key: Prefix + Shift+I.
- Themekitty (Lasik): softer tab text colours.
- KnownThe installer hasn’t been tested as a normal user with
sudo, or on macOS since these changes. - KnownMore on the docs site’s Known issues page.
2026.09.23
September 23, 2026 · Compare changes
- Addedzsh tab completion matches anywhere in a file name, and ignores case.
- Added
source <Tab>only completes files in the current folder.
2026.08.26
August 26, 2026 · Compare changes
- AddedInside kitty,
sshuseskitty +kitten ssh, which copies kitty’s terminfo to the server so programs there work properly.
2026.05.25
May 25, 2026 · Compare changes
- Addedkitty: tmux-style splits (Ctrl+Shift+\ side by side, Ctrl+Shift+- top and bottom), opened in the current folder.
- Addedkitty: move between splits with Ctrl+Shift+H / J / K / L, like Vim.
2026.05.21
May 21, 2026 · Compare changes
- ChangedThe nano config moved to
.config/nano/nanorcin the repo. It’s still installed as~/.nanorc.
- Themekitty (Lasik): new colours for active and inactive tabs and windows.
- Themenano: darker status bar.
- Themepeaclock: new colours for the active and inactive blocks.
- ThemeNew screenshots of kitty and nano.
2026.05.08
May 8, 2026 · Compare changes
- AddedNeovim: sensible defaults (relative line numbers, system clipboard, rulers, split directions, a blinking cursor), each explained in a comment.
- Addednano: spell check with
aspell(Ctrl+T twice).
2026.05.05
May 5, 2026 · Compare changes
- AddedThe prompt shows the hostname when you’re connected over SSH.
- AddedA global gitignore (
.gitignore_global) for OS and editor clutter. - AddedAn example
~/.zshrc.localfor machine-specific settings.
- ChangedAliases and functions are one shared file each (
.aliases,.functions), used by both bash and zsh, instead of a copy per shell. - Changedzsh starts faster: environment setup moved to
.zshenv, nvm loads only when first used, and Homebrew’s setup is cached.
- RemovedMachine-specific paths and code, so the configs work on any computer.
2026.04.27
April 27, 2026 · Compare changes
- Addedtmux shows a title and number on top of each pane.
- Themekitty: Lasik and Catppuccin Mocha themes.
2026.04.25
April 25, 2026 · Compare changes
- AddedA peaclock config (a big clock for the terminal).
- AddedA tmuxp default layout, used by the new
tfunction.
- ChangedEvery alias was checked to work on both Linux and macOS, and in both bash and zsh.
- Changed
iirewritten as a compact system summary with coloured usage bars for memory and disk. - Changed
getwebsiteandspyimproved.tworks in bash too. - ChangedThe tmux config is split into theme files (Lasik, Catppuccin, and a reset) and lives in
~/.config/tmux/.
- Removedkitty’s audio bell.
- ThemeThe Starship prompt uses the Lasik palette, matching the Lasik VS Code theme.
2026.04.24
April 24, 2026 · Compare changes
A fresh start after a few quiet years: zsh joins bash, and there’s an installer.
- Addedzsh configs:
.zshrc,.zshenvand.zprofile. - Added
install.sh: copies the configs into place and backs up what it replaces.--remoteinstalls straight from GitHub without cloning. - AddedConfigs for kitty, Neovim and the Starship prompt.
- AddedThe Starship prompt in bash too.
- ChangedOh My Zsh replaced by a lean zsh setup with Starship.
- ChangedEvery file got the same header (description, compatibility, version, dates).
- Changedtmux uses the Lasik theme, and the status bar is left-aligned.
- Removed
.bash_colors,.dev,.yarnrc.ymland functions nobody used any more.
2026.04.14
April 14, 2026 · Compare changes
- Changednano: new settings and colour definitions.
2020–2023
July 2020 – February 2023 · Compare changes
- AddedAliases for common folders and the SSH agent.
- AddedAndroid and Genymotion folders on
PATH. - AddedA Yarn config (removed again in 2026).
- AddedCache folders in
.gitignore.
- Themenano: updated colours.
2019
2019 · Compare changes
- AddedA nano config, with coloured line numbers.
- AddedGit aliases:
git lg(a pretty history graph) andgit s(git status). - AddedTimestamps in bash history.
- AddedThe prompt shows the git branch, and
$is colour-coded. - AddedA
ydlalias for downloading videos.
- Changed
ducksshows sizes in human-readable form. - ChangedUpdated
lsflags and bash history settings. - ChangedColoured
grepthrough an alias instead of the outdatedGREP_OPTIONS.
2018
2018 · Compare changes
- AddedConfigs for Vim, tmux, Git and readline (
.inputrc: case-insensitive Tab completion). - AddedA
.gitignore.
- Changed
.aliasesrenamed to.bash_aliases, and.colorsto.bash_colors. - ChangedA new default prompt, and unused items removed from
.bash_profile.
2015–2016
January 2015 – December 2016 · Compare changes
- Added
getwebsiteto download a whole site for offline reading. - Added
flushandflushdnsto clear the DNS cache. - Added
bellto ring when a command finishes (removed in 2026). - AddedAliases
tandtf, andtodo.txttweaks. - AddedA
.devfile for development settings (removed in 2026). - AddedA screenshot of the coloured command line.
- ChangedSynced with the setup on the Mac.
- Changed
authmecopies your RSA key instead of the DSA one.
2014.08.24
August 24, 2014 · Compare changes
- Added
ii: useful information about the host. - Added
extract: unpack most archive types with one command (removed in 2026). - Added
authme: copy your SSH key to a server. - AddedSecurity aliases:
spy,sniffandnetlisteners. - AddedMore aliases, many from alias.sh, and a detailed
lsllisting. - AddedColour for
ls,treeandgrepmatches, and a shared.colorsfile. - AddedA README explaining each file.
2014.06.21
June 21, 2014 · First commit
The first version, copied from a Mac.
- Added
.bash_profilewith a coloured prompt: green for normal users, red for root. - AddedCase-insensitive globbing, appending to history, and autocorrect for typos in
cd. - Added
.aliases, some borrowed from Mathias Bynens’ dotfiles. - Added
.functionswithtake: make a folder and go into it.