Below is a list of my dotfiles and scripts that I sync across devices and append from time to time. I hope you’ll find something you can use for enhanced laziness efficiency.

I use zsh as my daily driver but also bash from time to time, so both are included. I also keep scripts for automating configurations and application manifests.

Dotfiles Layout

├── .initscripts/
│   ├──
│   ├── desktopinit-scoop.bat
│   ├──
│   └──
├── .peppermint/
│   ├── .zsh_custom/
│   │   └── aliases.zsh
│   ├── .bash_aliases
│   ├── .zshrc
│   └── sakura.conf
└── .windows/
    └── alacritty.yml — Linux shell script installer for Debian packages
desktopinit-scoop.bat — Windows batch script installer for Scoop packages — Linux shell script installer for Snapcraft packages — Linux shell script installer for general packages on an Ubuntu VPS
aliases.zsh — Custom aliases and shell functions for ZSH
.bash_aliases — A few POSIX-compliant bash aliases
.zshrc — General config for Oh My Zsh!
sakura.conf — Configuration for Sakura terminal on Linux
alacritty — Configuration for Alacritty terminal on Windows

Dotfiles Usage

Run git clone in your home directory, this will place the repo in a dotfiles folder where you can edit/tweak to your liking.

Storing dotfiles in their own folder is a best practice in my opinion. To update the actual files after making changes (especially across machines), I use a shell function zupdate() — to copy configuration files to their actual location after doing a git pull on the repo.

The zupdate function looks like this:

zupdate() {
    cp /home/paramdeo/GitHub/dotfiles/.peppermint/.zshrc ~/.zshrc;
    cp /home/paramdeo/GitHub/dotfiles/.peppermint/.zsh_custom/aliases.zsh ~/.zsh_custom/aliases.zsh;
    cp /home/paramdeo/GitHub/dotfiles/.peppermint/.bash_aliases ~/.bash_aliases;
    cp /home/paramdeo/GitHub/dotfiles/.peppermint/sakura.conf ~/.config/sakura/sakura.conf;

Dotfiles Content

GitHub Repository

The repo can be found here: