A comprehensive dotfiles and system configuration framework.
For detailed information about how set-me-up works, see the documentation.
For information about the setup and update scripts, see scripts/SCRIPTS.md. For the generated repository, route, capability, and validator index, see REPOSITORIES.md.
For a headless Ubuntu/Debian VPS such as a DigitalOcean Droplet, use the first-class VPS path documented in scripts/VPS.md.
The release-readiness workflow checks installer, blueprint, and scenario-test
compatibility on a schedule. It also gates provisioning preflight drift by
requiring the installer JSON contract example and blueprint GitHub Actions
preflight steps to stay in sync. It calls the installer-owned smu contract validate rules for provisioning preflight, adapter capabilities, and blueprint
CI readiness so schema drift is checked through the same CLI contract users
consume. The readiness artifact includes each validated contract name, version,
validator command, schema file, and source payload path. It publishes a
release-readiness.json artifact, writes a run summary, opens or updates an
issue when readiness fails, and closes that issue when readiness is green again.
A separate install canary runs the public one-liner on a schedule.
Local maintainers can run:
scripts/release-install-update.sh --check --json
scripts/release-install-update.sh --candidate-check --json
scripts/release-install-update.sh --push --dry-run --tag vX.Y.Z --github-releaseSee CONTRIBUTING.md for development setup and how to run validation locally.
To clone all repositories and recreate the complete directory structure:
git clone https://github.com/dotbrains/set-me-up.git
cd set-me-up
chmod +x scripts/setup.sh
./scripts/setup.shAgents and maintainers can route VPS or DigitalOcean work through the
vps-server-setup intent:
scripts/agent-intake.sh --plan vpsThe supported headless path installs a blueprint with platform-scoped
submodules, then runs smu --setup-profile vps instead of the
workstation-oriented Debian module set.
To update all repositories to their latest versions:
cd set-me-up
./scripts/update.shThe update script will automatically skip repositories with uncommitted changes.
See scripts/SCRIPTS.md for detailed documentation on both scripts.
set-me-up/
├── blueprint/ # Blueprint configuration
├── docs/ # Documentation
├── installer/ # Installation scripts
├── tests/ # Docker-based provisioning test scenarios
├── utilities/ # Utility scripts
├── shared/
│ └── ai-config/ # Shared AI agent/skill definitions
├── modules/
│ ├── colorschemes/ # Color scheme configurations
│ ├── debian/ # Debian/Linux modules
│ ├── macos/ # macOS/Homebrew modules
│ ├── macports/ # MacPorts module
│ ├── preferences/ # Preferences module
│ ├── template-module/ # Template for new modules
│ ├── universal/ # Universal modules
│ └── xcode/ # Xcode module
└── home/
├── codex/ # Codex CLI configuration
├── claude/ # Claude Code configuration
├── pi/ # pi coding agent configuration
└── .config/
├── alacritty/ # Alacritty terminal config
├── bash/ # Bash configuration
├── fish/ # Fish shell configuration
├── gh-dash/ # GitHub dashboard configuration
├── nushell/ # Nushell configuration
├── nvim/ # Neovim configuration
├── opencode/ # OpenCode configuration
├── television/ # Television (tv) configuration
├── tmux/ # Tmux configuration
├── zed/ # Zed configuration
└── zsh/ # Zsh configuration
- colorscheme-module
- set-me-up-debian-modules
- set-me-up-macos-modules
- macports-module
- preferences-module
- template-module
- set-me-up-universal-modules
- xcode-module
Licensed under PolyForm Shield 1.0.0. See LICENSE for details.