Skip to content

noroute/portable-environment

Repository files navigation

portable-environment

Portable minimal, opinionated dotfiles for Mac, managed with rcm.

What's included

Shell (zsh + antidote)

Antidote plugin manager, with a configuration approach based on zdotdir. Plugins are declared in a single .zsh_plugins.txt file and organized by category:

  • Completionsfzf-tab for fuzzy Tab completion, zsh-completions for extra definitions, ez-compinit for fast init
  • Editing — sensible keybindings (Home/End/Delete just work), emacs and vi mode support
  • History — shared across sessions, deduplication, substring search with Up/Down
  • Utilities — macOS helpers (cdf, flushdns), safe rm/mv/cp, extract for any archive, git aliases (gst, gco, gl, gp, etc.)
  • Fish-like features — syntax highlighting, autosuggestions (right-arrow to accept), history substring search

Prompt

Starship cross-shell prompt. Zsh starship prompt

Directory navigation

Zoxidez to jump to frecent directories.

Editors

Spacemacs configuration. Shell aliases: et (terminal) and e (GUI Emacs.app).

Terminal multiplexer

tmux configuration.

Git

Aliases (via oh-my-zsh git plugin), global gitignore.

macOS

Emacs keybindings system-wide (Library/KeyBindings). macos-defaults.sh configures system preferences: standard function keys, fast key repeat, list-view Finder, tap-to-click, auto-hiding Dock, screen saver hot corner, and immediate lock-screen password.

Homebrew packages

Brewfile tracks shell dependencies and daily-driver tools.

Claude Code

Custom settings and Starship integration via cship (claude/). cship starship pass-through

Setup

# Install rcm
brew install rcm

# Clone this repo
git clone <repo-url> ~/git/portable-environment

# Install Homebrew packages
brew bundle --file=~/git/portable-environment/Brewfile

# Link all dotfiles
rcup -d ~/git/portable-environment

# Apply macOS system preferences (keyboard, trackpad, Finder, Dock, etc.)
bash ~/git/portable-environment/macos-defaults.sh

For Claude Code config, remove any existing files before running rcup so rcm can place its symlinks:

rm -f ~/.claude/settings.json
rcup -d ~/git/portable-environment

Attribution

The zsh configuration approach is inspired by zdotdir.

About

a minimal Mac shell environment config (zsh, antidote, Emacs, claude, tmux)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors