This repository stores my personal configuration files for applications and tools that I use, and it's meant to be used alongside GNU Stow for ease of reproducibility.
Make sure the following tools are installed on your system and available for your user:
sudo pacman -Sy --needed git stowsudo apt update && sudo apt install git stowCheck the official package repositories for installation instructions.
First, clone this repository locally on your machine using Git. For ease of use, prefer cloning the repo directly onto your home directory.
cd $HOME
# Clone via SSH (recommended)
git clone [email protected]:fabberr/.dotfiles.git
# Alternatively, clone via HTTPS when SSH is not set up
git clone https://github.com/fabberr/.dotfiles.gitOnce cloned, you can navigate into the repo and start using Stow to install configuration packages. For a full list of packages available on this repo, see the Available Packages section below.
cd $HOME/.dotfilesstow package is the first to be stowed on fresh installs to avoid issues with unwanted files being symlinked to the target directory when the Global Ignore List is not present while stowing other packages.
I also recommended to stow the git package next.
stow stow
stow gitThe following packages are available. For more details, check each package's corresponding README.md file.
- atuin
- bash-preexec
- bash
- bat
- delta
- dust
- fastfetch
- fd
- gamemode
- ghostty
- git
- nvim
- ripgrep
- spotify-player
- starship
- stow
- yazi
The following commands assume that:
- The Stow directory is located within your home directory (i.e. The directory where you cloned this repo into is a subdirectory of
$HOME); - The current working directory is the Stow directory (i.e.
$HOME/.dotfiles).
These commands will create a new Stow package named <pkgname> from an existing configuration present in the <configroot> directory.
# Create the package directory.
mkdir <pkgname>
# Optional:
# Add any required subdirectories, typically `.config/<pkgname>`
# or `.local/share/<pkgname>` (i.e. `.config/ghostty`).
mkdir -p <pkgname>/additional/nested/directories
# Optional:
# Move any existing configuration directories/files into the new package
mv <configroot> <pgkname>To install a package, simply run the stow command (default -S/--stow action), passing the name of the package. This creates all the necessary symbolic links to install the specified package into the target directory.
stow <pkgname>Similarly, to uninstall a package, run the stow command with the -D/--delete flag. This will remove any symbolic links that Stow has previously created for the specified package from the target directory.
stow -D <pkgname>NEVER lose dotfiles again with GNU Stow by typecraft.
Stow has forever changed the way I manage my dotfiles by Dreams of Autonomy.
Using GNU Stow to manage your dotfiles by Brandon Invergo.
GNU Stow manual by the GNU Project.
- Add
vscodepackage- Settings
- Extensions (?)
- Setup shell script
- Add
bash-preexecas a Git Submodule. Setup a Local Ignore List for it.