Skip to content
/ dotfiles Public

My dotfiles, built to work with GNU stow in a ~/.dotfiles directory

License

Notifications You must be signed in to change notification settings

fnune/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Install on Arch Install on Debian

My dotfiles, built to work with GNU stow in a ~/.dotfiles directory.

Installation

The main dependency is GNU stow. Install it using your distribution's package manager.

sudo pacman -S stow curl wget desktop-file-utils
sudo apt-get install stow curl wget build-essential desktop-file-utils

Then clone this repository into a directory that's directly under ~, for example:

git clone git@github.com:fnune/dotfiles.git ~/.dotfiles

Then symlink the packages you need:

cd ~/.dotfiles
stow zsh fzf git tmux

Finally, you can run the install script, which will bootstrap dependencies for stowed packages only. For example, it will install fzf and tmux if you've stowed their packages.

~/.dotfiles/install

Requirements of the install script: git and other basics such as bash, sudo and wget.

Interaction between packages

Some packages source files in drop-in directories, inspired by systemd drop-in units. Here's a summary of them:

  • The zsh package creates a ~/.zsh/includes directory in which other packages can add files. They are sourced at the end of ~/.zshrc.
  • The dependencies package creates a ~/.dependencies/includes directory. Files in it are run from the install script and should be executable.

For example, after stowing some packages, these directories look like this:

~ ls ~/.zsh/includes
fzf  fzf-theme  volta
➜  ~ ls ~/.dependencies/includes
antigen  arch  base16-fzf  base16-shell  fzf  tpm  debian  volta

For example, the fzf package adds files to both the zsh and dependencies drop-in directories:

fzf
├── .dependencies
│   └── includes
│       ├── base16-fzf
│       └── fzf
└── .zsh
    └── includes
        ├── fzf
        └── fzf-theme

GNU stow will take care of symlinking partially without overwriting the .dependencies and .zsh directories with those from other packages.

About

My dotfiles, built to work with GNU stow in a ~/.dotfiles directory

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages