These are my dotfiles. Take anything you want, but at your own risk.
They are largely adapted from https://github.com/webpro/dotfiles with many of the web development components swapped out for more data science-oriented ones.
It mainly targets macOS systems, but it works on at least Ubuntu as well.
- Minimal efforts to install everything, using a Makefile
- Mostly based around Homebrew, Caskroom and Node.js, latest Bash + GNU Utils
- Fast and colored prompt, including git repo and conda environment information
- Updated macOS defaults
- Well-organized and easy to customize
- Supports both Apple Silicon (M1) and Intel chips
- Homebrew (packages: Brewfile)
- homebrew-cask (packages: Caskfile)
- Latest Git, Bash, Python 3, GNU coreutils, curl
- Mamba (Conda) installed from miniforge
$EDITOR
(and Git editor) is GNU Emacs
On a sparkling fresh installation of macOS:
sudo softwareupdate -i -a
xcode-select --install
The Xcode Command Line Tools includes git
and make
(not available on stock macOS). Now there are two options:
- Install this repo with
curl
available:
bash -c "`curl -fsSL https://raw.githubusercontent.com/jayrobwilliams/dotfiles/master/remote-install.sh`"
This will clone or download, this repo to ~/.dotfiles
depending on the availability of git
, curl
or wget
.
- Alternatively, clone manually into the desired location:
git clone https://github.com/jayrobwilliams/dotfiles.git ~/.dotfiles
Use the Makefile to install everything listed above, and symlink runcom and config (using stow):
cd ~/.dotfiles
make
The installation process in the Makefile is tested on every push and every week in this GitHub Action.
dotfiles dock
(set Dock items)dotfiles macos
(set macOS defaults)- Mackup
- Log in to Dropbox (and wait until synced)
ln -s ~/.config/mackup/.mackup.cfg ~
(until #632 is fixed)mackup restore
$ dotfiles help
Usage: dotfiles <command>
Commands:
clean Clean up caches (brew, npm, gem, rvm)
dock Apply macOS Dock settings
edit Open dotfiles in IDE (code) and Git GUI (stree)
help This help message
macos Apply macOS system defaults
test Run tests
update Update packages and pkg managers (OS, brew, npm, gem)
You can put your custom settings, such as Git credentials in the system/.custom
file which will be sourced from
.bash_profile
automatically. This file is in .gitignore
.
Alternatively, you can have an additional, personal dotfiles repo at ~/.extra
. The runcom .bash_profile
sources all
~/.extra/runcom/*.sh
files.
Many thanks to the dotfiles community.