Skip to content

nickgerace/dotfiles

Repository files navigation

Dotfiles

zsh helix

A collection of dotfiles, scripts and configurations from @nickgerace.

Quickstart

Before starting, ensure that bash and zsh are installed on your macOS or Linux system. You will also need to ensure that this repository resides in the $HOME/src/ directory. You may need to create it by executing mkdir $HOME/src.

Once everything looks good, execute the following:

Warning

Running the make target may overwrite files if you are coming from an existing configuration. Please read the source code, starting from the Makefile, before executing the target.

make

The invoked make target runs an idempotent-ish bootstrap script, so you should be able to execute it multiple times. That being said: caution is advised.

Updating

Once the initial make target is ran, you can update packages and more using the update target.

make update

Alternatively, if you run sz or reload your shell, you can run the update function.

update

Note

The above commands only update packages with the current dotfiles in place. If you'd like to re-link dotfiles, run the default make target again.

Q&A

This section contains questions and answers regarding these dotfiles.

What interactive shell do the dotfiles rely on?

These dotfiles rely on zsh as the interactive shell.

What about oh-my-zsh and starship?

These dotfiles require neither oh-my-zsh nor starship to be installed. Only zsh needs to be installed as all shell-based dotfiles are custom and configured manually.

Does the make target do more than setup dotfiles?

The script only sets up dotfiles by default. However, for certain Linux distributions and macOS, you can optionally install packages and setup the base system (e.g. install an opinionated set of base packages with a package manager). This is referred to "bootstrapping" in the script.

Is WSL2 supported?

WSL2 is supported for dotfiles setup, but packages will not be installed for supported distros when running the installer.

Disclaimer

Files not recently in use may be out of date. This is a "living" repository, meaning that scripts and dotfiles more frequently in use will be more likely to be kept up to date. Anything not recently or frequently in use will be removed from the repository (eventually).