✨ Stuff I need to do all the things ✨
git clone git@github.com:lukeify/dotfiles.git
cd dotfiles
./dotfiles.sh
./dotfiles.sh
expects that arguments will be provided to determine which aspects of the system should be configured. This explicitly requires you to read the documentation under ./dotfiles.sh --help
to gain an understanding of the implications of each aspect to be configured. These aspects can be enabled with the following flags:
APPS=1
will install brew, associated apps, packages, and casks.DEFAULTS=1
will set system-wide defaults usingdefaults write
.DOCK=1
will configure the dock usingdockutil
.HOME=1
configures many services in your home directory (zsh, vim, ssh, etc).TEXT_REPLACEMENTS=1
will generate aText Substitutions.plist
file that can be manully dropped into theSystem Settings.app
> Keyboard > Text pane.
Thanks to the following people for inspiration and configuration ideas:
- mathiabynens, for everyone's favourite dotfiles repository.
- carrlos0
Text replacements in macOS are backed by CloudKit and synced across your iCloud account. These are written out to NSGlobalDomain
under preference NSUserDictionaryReplacementItems
; however CloudKit will not sync any changes you make to this preference, instead, you must write a row to the ZTEXTREPLACEMENTSENTRY
table in the ~/Library/KeyboardServices/TextReplacements.db
SQLite database, setting ZNEEDSSAVETOCLOUD
to 1
, while also defining the ZPHRASE
and ZSHORTCUT
.
These changes are not synced to iCloud immediately and may require a system restart.
- Implement both
Terminal.app
andiTerm2.app
themes (andiTerm2.app
configures). - Create application shortcut adjustements.
- Properly implement text replacements.
- Configure the Finder sidebar.
- Configure Transmission properly.
- Set the desktop background, even.
- Configure
pmset
. - Remove prerequisites for both
yarn
andnode
existing on the system to rundotfiles.sh
, by migrating to Rust. - Try to follow the patterns set out by dotfiles.github.io.
- Configure ~/.ssh/config and ~/.git/config.
- Configure vim config.
- Investigate hushlogin.
- Investigate neofetch configuration.