This repository contains my no-frills modular dotfiles. I use these dotfiles on the latest version of macOS and Ubuntu. WSL and Codespaces are supported too.
This repository includes an automated installer script that uses homebrew to install packages on macOS and various Linux distributions.
The following software packages are required to run the setup script.
Dependency | Purpose |
---|---|
git | Required for cloning this repository |
curl | Used for downloading files from the web |
bash | Required for running the installer script |
brew | Required for installing packages on macOS or Linux |
sudo | Required by the installer script to run some commands as root |
Make sure the dependencies are installed, and clone the repository:
git clone https://github.com/fardjad/dotfiles.git ~/.dotfiles
You can choose to install all of the modules by running the following command:
~/.dotfiles/script/setup
If you don’t want to install everything, you can run the installer script of
each module individually. For example, to install the nodejs
module, you can
run:
~/.dotfiles/nodejs/install.sh
Keep in mind that these dotfiles are designed to work with zsh
, so it’s highly
recommended to have the zsh module installed anyways:
~/.dotfiles/zsh/install.sh
Running the installer scripts multiple times is safe. In most cases it will update the installed packages to the latest version.
-
(macOS only, optional) In order to set macOS defaults run the following:
[ -d ~/.dotfiles ] && ~/.dotfiles/macos/setup-macos.sh || echo >&2 'You must clone the repository first!'
-
(macOS only, optional) Configure iTerm2 to load preferences from
~/.dotfiles/macos/iterm2
directory. -
(macOS only, Apple Silicon) Run the following to enable Rosetta:
softwareupdate --install-rosetta
The directory structure of this repository is inspired by carlos' dotfiles