Skip to content
Projects

jessfraz/dotfiles has 3,562 GitHub stars and 505 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 17:34 UTC. Last push 2026-10-30.

How these counts are measured

My dotfiles. Buyer beware ;)

Measured star growth

in 24h
0
in 7 days
Collecting history
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

dotfiles

make test

Table of Contents

About

Installing

For Nix, import homeManagerModules.default from this flake through Home Manager. The host configuration supplies the username, home directory, and state version. global-nix also enables Bash completion and installs the Zoo and rustup completion files used by the .nixbash startup fragment.

For the legacy Linux installation:

$ make

This will create symlinks from this repo to your home folder.

Customizing

Save env vars, etc in a .extra file, that looks something like this:

###
### Git credentials
###

GIT_AUTHOR_NAME="Your Name"
GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
git config --global user.name "$GIT_AUTHOR_NAME"
GIT_AUTHOR_EMAIL="[email protected]"
GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
git config --global user.email "$GIT_AUTHOR_EMAIL"
GH_USER="nickname"
git config --global github.user "$GH_USER"

###
### Gmail credentials for mutt
###
export [email protected]
export GMAIL_NAME="Your Name"
export [email protected]

Resources

.vim

For my .vimrc and .vim dotfiles see github.com/jessfraz/.vim.

Contributing

Switchboard keeps Google account identities in the private runtime file ~/.config/switchboard/accounts.toml, with owner-only permissions:

[google]
personal = "[email protected]"
work = "[email protected]"

Provision the real values locally before activation. Nix contains only their aliases; activation validates the resolved configuration before replacing the live file. Missing bindings or failed validation preserve the current config.

Running the tests

Run the native Nix checks, including a complete Home Manager fixture and an editor smoke test:

$ nix flake check --no-update-lock-file

CI builds these checks on x86-64 Linux, ARM Linux, and ARM macOS. The homeConfigurations outputs are test fixtures, not host profiles; do not activate them.

The shell scripts are also checked with shellcheck in a container:

$ make test

The account-binding tests use the installed Switchboard for native validation:

$ python3 -B -m unittest discover -s tests -p 'test_switchboard_config.py'

Explore related projects