Personal development environment for macOS using mise for tool/task management and Nix for packages. Features a custom Emacs build with native compilation.
Prerequisites: macOS, Xcode CLI tools (xcode-select --install).
curl -fsSL https://raw.githubusercontent.com/djgoku/dot-files/main/setup.sh | zshOr clone and run locally:
mkdir -p ~/dev/github/djgoku && cd "$_"
git clone https://github.com/djgoku/dot-files.git
cd dot-files && ./setup.shAfter setup, activate mise and install tools:
eval "$(~/.local/bin/mise activate zsh)"
mise install. ├── setup.sh # Idempotent bootstrap script ├── mise.toml # Tools and inline task definitions ├── mise-tasks/ # File-based mise tasks ├── emacs/ │ ├── init.el # Emacs init │ ├── main.el # Main configuration │ ├── early-init.el │ └── emacs-env/ # Environment selector ├── emacs-overlay/ # Custom Emacs Nix build overlay ├── macos/ │ └── com.apple.Terminal.plist ├── zsh/ # Shell configuration └── flake.nix # Nix flake
All tools and tasks are managed through mise. See mise tasks for the full list.
| Task | Description |
|---|---|
mise run emacs | Launch Emacs (--nw for terminal mode) |
mise run setup-gpg-agent | Generate ~/.gnupg/gpg-agent.conf |
mise run install-enchant | Install enchant spell-checking libraries |
mise run generate-macos-app | Create MiseEmacs.app in /Applications |
Run the full bootstrap and Emacs smoke tests in a single command (useful for CI or validating on a fresh machine):
zsh <<'SCRIPT'
export MISE_TASK_SKIP="setup:treesitter,setup:texlive"
curl -fsSL "https://raw.githubusercontent.com/djgoku/dot-files/main/setup.sh" |
MISE_VERSION=v2026.2.10 zsh
source /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
source ~/.zshrc
mise -C ~/dev/github/djgoku/dot-files run test-emacs
SCRIPTTo test a feature branch, set REPO_BRANCH:
zsh <<'SCRIPT'
export MISE_TASK_SKIP="setup:treesitter,setup:texlive"
BRANCH="chore/switch-completely-to-mise"
curl -fsSL "https://raw.githubusercontent.com/djgoku/dot-files/${BRANCH}/setup.sh" |
REPO_BRANCH="$BRANCH" MISE_VERSION=v2026.2.10 zsh
source /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh
source ~/.zshrc
mise -C ~/dev/github/djgoku/dot-files run test-emacs
SCRIPTmise doctor