# 1. install dotfiles
cd $HOME
curl -o "https://raw.githubusercontent.com/scottyeck/dotfiles/tree/master/core/install" | bash
# 2. bootstrap system
./core/bootstrap
…
...
- Dock
- Shrink size so it's tolerable.
- Check "Automatically hide and show the Dock"
- While at it, audit and remove anything unnecessary.
- Trackpad
- Tap to click
- Accessibility
- Set up three-finger drag
- Pointer Control > Trackpad Options > Enable Dragging - Select "three finger drag"
- (In older versions, the Pointer Control section was titled Mouse & Trackpad)
- Set up three-finger drag
- Displays
- Increase resolution: Display > Scaled - Choose "More space"
- Bluetooth
- Check Show Bluetooth in menu bar
- Add external trackpad
- Add headphones
- Security & Privacy
- Privacy > Screen Recording
- Add videoconferencing apps (Zoom, Slack, Meet via Chrome) to allow perms for screen-sharing.
- Privacy > Accessibility
- Add window management apps (Divvy)
- Privacy > Full Disk Access
- Grant to apps that are running terminal emulators (Alacritty, VSCode).
- Grant to apps that allow search (Raycast).
- Privacy > Screen Recording
These are applications whose installations I don't currently automate because manual installation is simpler.
I've played around with various automated installation mechanisms for nvim
- nvenv is written in v and thus requires an esoteric toolchain, while bob doesn't currently support M1 macs. Ultimately this isn't that complicated so I'll script up a tool that does this, but in the meantime...
Visit the neovim releases page on GitHub and download the latest universal macos release. Then...
# (to avoid "unknown developer" warning)
$ xattr -c ./nvim-macos.tar.gz
$ tar xzvf nvim-macos.tar.gz
$ mv nvim-macos ./local/share/nvim-versions/{version-name}
$ ln -s ~/.local/share/nvim-versions/{version-name}/bin/nvim ~/.local/bin/nvim
These are settings that I don't currently automate.
I use a local RC file containing env settings that should differ across machines and not live in source control. See .localrc.template
I use at
to power the job scheduling behind pomox
, a very utility that I use to enforce focus during pomodoros. When switching to a new machine, this setup doesn't work out of the box. We need to tell the machine that we wish for at
to be available and enabled I guess? Unclear.
Regardless, most recently with Sequoia, simply running the following resolved my issues:
sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.atrun.plist
(It's possible that I may need to call unload
similarly prior to load
, though I truly have not bothered to investigate this at all, so who knows. All I care about is that it works and I can use pomox
.)
In order to properly use true color, we need to install tmux-256color
so we can specify it as our TERM
in tmux
. This is non-trivial so even though others have written about this (extensively), steps are consolidated below.
(Via bbqtd)
First, ensure ncurses tic
is installed.
$ which tic
/usr/bin/tic
Download and unpack the latest nucurses terminal descriptions:
$ curl -LO https://invisible-island.net/datafiles/current/terminfo.src.gz && gunzip terminfo.src.gz
And compile tmux-256color
terminal info. (This will place its result into ~/.terminfo
):
$ /usr/bin/tic -xe tmux-256color terminfo.src
Then verify
$ infocmp tmux-256color
Settings in .zshrc
/ tmux.conf
will now work as intended.
(Via Niing, self-proclaimed "Neovim master" but hey this is helpful so maybe the proclamation is valid.)
Assuming alacritty was installed using Homebrew, clone alacritty/alacritty
and place it anywhere. Then...
$ cd path/to/cloned-alacritty-repo
$ sudo tic -xe alacritty,alacritty-direct extra/alacritty.info
Again, TERM
settings in .zshrc
will now work as intended.