{"id":35451648,"url":"https://github.com/southpawriter02/circus","last_synced_at":"2026-02-04T19:03:28.374Z","repository":{"id":323423170,"uuid":"1038880164","full_name":"southpawriter02/circus","owner":"southpawriter02","description":"Transform a fresh Mac into a fully configured powerhouse with one command. Features 30+ CLI commands, 45+ macOS defaults scripts, multiple backup backends (GPG/Restic/Borg), secrets management (1Password/Keychain/Vault), and role-based setup for developer, work, or personal machines.","archived":false,"fork":false,"pushed_at":"2026-02-04T04:59:51.000Z","size":2790,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-04T13:54:08.609Z","etag":null,"topics":["automation","bash","bash-profile","bashrc","cli","dotfiles","homebrew","macos","macos-defaults","macos-dotfiles","oh-my-zsh","privacy","security","shell","shell-scripts","zsh","zsh-profile","zshrc"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/southpawriter02.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"security/firewall_and_gatekeeper.sh","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-16T02:08:14.000Z","updated_at":"2026-02-04T04:59:54.000Z","dependencies_parsed_at":"2026-01-03T11:02:20.637Z","dependency_job_id":"7969af90-ea2d-443b-9928-73a9b9c1d4fc","html_url":"https://github.com/southpawriter02/circus","commit_stats":null,"previous_names":["southpawriter02/circus"],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/southpawriter02/circus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpawriter02%2Fcircus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpawriter02%2Fcircus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpawriter02%2Fcircus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpawriter02%2Fcircus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/southpawriter02","download_url":"https://codeload.github.com/southpawriter02/circus/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/southpawriter02%2Fcircus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29092991,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-04T03:31:03.593Z","status":"ssl_error","status_checked_at":"2026-02-04T03:29:50.742Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","bash","bash-profile","bashrc","cli","dotfiles","homebrew","macos","macos-defaults","macos-dotfiles","oh-my-zsh","privacy","security","shell","shell-scripts","zsh","zsh-profile","zshrc"],"created_at":"2026-01-03T03:23:11.428Z","updated_at":"2026-02-04T19:03:28.367Z","avatar_url":"https://github.com/southpawriter02.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🎪 Dotfiles Flying Circus\n\n### *Your Mac, Automated.*\n\n**Transform a fresh Mac into a fully configured powerhouse with one command.**\n\n[![Version](https://img.shields.io/badge/Version-1.1.0-blue)](CHANGELOG.md)\n[![macOS](https://img.shields.io/badge/macOS-Sequoia%20%7C%20Sonoma%20%7C%20Ventura-blue?logo=apple\u0026logoColor=white)](https://www.apple.com/macos)\n[![Shell](https://img.shields.io/badge/Shell-Zsh%20%2B%20Oh%20My%20Zsh-4EAA25?logo=gnu-bash\u0026logoColor=white)](https://ohmyz.sh/)\n[![License](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)\n\n---\n\n[**Features**](#-features) •\n[**Quick Start**](#-quick-start) •\n[**Commands**](#-the-fc-command) •\n[**Documentation**](#-documentation) •\n[**Contributing**](#-contributing)\n\n\u003c/div\u003e\n\n---\n\n## 🚀 What Is This?\n\nThe **Dotfiles Flying Circus** is a comprehensive macOS automation framework that:\n\n- 🔧 **Configures everything** — 45+ defaults scripts covering system, interface, accessibility, and apps\n- 🔐 **Hardens your Mac** — Firewall, FileVault, privacy permissions, and security audits\n- 📦 **Installs your tools** — Homebrew packages, casks, and App Store apps\n- 🎯 **Role-based setup** — Different configs for `developer`, `personal`, or `work` machines\n- 💾 **Encrypted backups** — Multiple backends: GPG, Restic, Borg with remote sync via rclone\n- 🔑 **Secrets management** — 1Password, macOS Keychain, and HashiCorp Vault integration\n\n```\n┌─────────────────────────────────────────────────────────────────────────┐\n│                                                                         │\n│   $ ./install.sh --role developer --privacy-profile lockdown            │\n│                                                                         │\n│   ✓ Homebrew installed                                                  │\n│   ✓ 47 packages installed                                               │\n│   ✓ System preferences configured                                       │\n│   ✓ Security hardening complete                                         │\n│   ✓ Shell environment ready                                             │\n│                                                                         │\n│   🎉 Your Mac is ready!                                                 │\n│                                                                         │\n└─────────────────────────────────────────────────────────────────────────┘\n```\n\n---\n\n## 🆕 What's New in v1.1\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eClick to expand v1.1 highlights\u003c/strong\u003e\u003c/summary\u003e\n\n### Alfred Workflow Integration (NEW!)\n- **`fc alfred` command** to install/uninstall the Flying Circus workflow\n- **12 Alfred keywords** for quick access to common commands\n- Type `wifi`, `bluetooth`, `lock`, `caffeine`, `dns`, `airdrop` and more\n- Script filters with dynamic JSON results for Alfred\n\n### Available Alfred Keywords\n| Keyword | Description |\n|---------|-------------|\n| `fc` | Browse all commands |\n| `wifi` / `bluetooth` | Toggle network adapters |\n| `lock` | Lock screen instantly |\n| `caffeine` | Prevent sleep |\n| `dns` | Switch DNS (Cloudflare, Google, Quad9) |\n| `fcinfo` / `healthcheck` | System diagnostics |\n| `disk` / `sshkey` / `keychain` / `clip` | Utilities |\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003cstrong\u003eClick to expand v1.0 highlights\u003c/strong\u003e\u003c/summary\u003e\n\n### Shell Environment\n- **21 environment files** covering security, telemetry, languages (Python, Node, Go, Rust, Java), DevOps tools (Docker, K8s, AWS/GCP/Azure), and XDG directories\n- Enhanced shell profiles with proper Homebrew PATH, credential cleanup on logout\n- Centralized PATH management with `path_prepend()` and `path_append()` helpers\n\n### macOS Defaults (45+ scripts)\n- **System**: Privacy, Gatekeeper, energy management, sound, Bluetooth, login window\n- **Interface**: Menu bar, notifications, desktop, Control Center\n- **Applications**: Mail, Messages, Photos, Notes, Warp, JetBrains IDEs\n- **Accessibility**: Display, pointer, zoom settings\n\n### Role-Specific Settings\n- **Developer role**: 100+ git aliases, development env, debugging helpers, Xcode defaults\n- **Work role**: Corporate proxy/VPN settings, stricter security, work-specific aliases\n- **Personal role**: Media aliases, relaxed security, entertainment tools\n\n### Commands \u0026 Features\n- **30+ fc commands** including `bootstrap`, `secrets`, `vscode-sync`, `maintenance`, `healthcheck`\n- **Multiple backup backends**: GPG, Restic, Borg with remote sync via rclone\n- **Secrets management**: 1Password, macOS Keychain, HashiCorp Vault integration\n- **Bootstrap wizard**: Complete new machine setup with interactive or automated modes\n\n\u003c/details\u003e\n\n---\n\n## ✨ Features\n\n\u003ctable\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 🛠️ System Configuration (45+ Scripts)\n- **System**: Privacy, energy, sound, Bluetooth, login\n- **Interface**: Dock, Finder, menu bar, Control Center\n- **Input**: Keyboard, trackpad, gestures\n- **Accessibility**: Display, pointer, zoom\n- **Apps**: Safari, Mail, Photos, Notes, and more\n\n\u003c/td\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 🔐 Security \u0026 Privacy\n- Firewall configuration with stealth mode\n- FileVault encryption management\n- Privacy permission auditing\n- Gatekeeper and quarantine settings\n- Screen lock \u0026 password policies\n- Telemetry and analytics blocking\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 📦 Package Management\n- Homebrew formulae \u0026 casks\n- Mac App Store apps (via `mas`)\n- Role-specific Brewfiles\n- Automatic dependency updates\n- Orphaned package cleanup\n\n\u003c/td\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 🐚 Shell Environment (21 env files)\n- Oh My Zsh with custom `circus` plugin\n- Language configs: Python, Node, Go, Rust, Java\n- DevOps: Docker, Kubernetes, AWS/GCP/Azure\n- XDG directory compliance\n- 100+ role-based aliases\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 💾 Backup \u0026 Sync\n- **3 backends**: GPG, Restic, Borg\n- Remote sync via rclone (40+ providers)\n- Scheduled automatic backups\n- VS Code settings sync\n- Dotfile timestamped snapshots\n\n\u003c/td\u003e\n\u003ctd width=\"50%\"\u003e\n\n### 🎯 Role-Based Setup\n- **Developer**: Git aliases, debugging, Xcode\n- **Personal**: Media tools, relaxed security\n- **Work**: Corporate proxy/VPN, strict security\n- **Secrets**: 1Password, Keychain, Vault\n\n\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n## 🏃 Quick Start\n\n### One-Line Install\n\n```bash\ngit clone https://github.com/southpawriter02/circus.git \u0026\u0026 cd circus \u0026\u0026 ./install.sh\n```\n\n### With Options\n\n```bash\n# Developer setup with enhanced privacy\n./install.sh --role developer --privacy-profile privacy\n\n# Personal machine with maximum security\n./install.sh --role personal --privacy-profile lockdown\n\n# Work machine with standard settings\n./install.sh --role work\n```\n\n---\n\n## 🎮 The `fc` Command\n\nThe heart of the project is the `fc` (Flying Circus) command-line utility — **30+ commands** to control every aspect of your Mac:\n\n```\n┌──────────────────────────────────────────────────────────────────────────┐\n│  fc \u003ccommand\u003e [action]                                                   │\n├──────────────────────────────────────────────────────────────────────────┤\n│                                                                          │\n│  NETWORK          SECURITY          SYSTEM           PRODUCTIVITY       │\n│  ───────          ────────          ──────           ────────────        │\n│  wifi             audit             disk             caffeine            │\n│  bluetooth        firewall          info             clipboard           │\n│  dns              lock              update           backup              │\n│  airdrop          encrypt           maintenance      sync                │\n│                   keychain          healthcheck      schedule            │\n│                   privacy                            vscode-sync         │\n│                                                                          │\n│  DEVELOPMENT      MANAGEMENT        BOOTSTRAP                            │\n│  ───────────      ──────────        ─────────                            │\n│  gpg-setup        dotfiles          bootstrap                            │\n│  ssh              apps              secrets                              │\n│  redis            profile           clean                                │\n│                                                                          │\n└──────────────────────────────────────────────────────────────────────────┘\n```\n\n### Command Highlights\n\n```bash\n# 🔒 Run a security audit\nfc audit run\n# Output: Checks SIP, FileVault, Gatekeeper, Firewall... gives you a score!\n\n# 📊 Analyze disk usage\nfc disk usage ~/Downloads\nfc disk cleanup  # Interactive cleanup wizard\n\n# 🔑 Generate SSH key (auto-adds to keychain, copies to clipboard)\nfc ssh generate\n\n# ☕ Keep Mac awake\nfc caffeine on           # Indefinitely\nfc caffeine for 60       # For 60 minutes\n\n# 🌐 Switch DNS servers\nfc dns set 1.1.1.1 1.0.0.1  # Cloudflare\nfc dns set 8.8.8.8 8.8.4.4  # Google\n\n# 💾 Encrypted backup with multiple backends\nfc sync backup              # GPG-encrypted backup (default)\nfc sync backup --backend restic  # Deduplicating backup\nfc sync push                # Push to remote (S3, Dropbox, etc.)\n\n# 🚀 Bootstrap a new machine\nfc bootstrap                # Interactive setup wizard\nfc bootstrap --phases all   # Full automated setup\n\n# 🔑 Secrets management\nfc secrets sync             # Sync secrets from 1Password/Keychain\nfc secrets get op://vault/item/password  # Get specific secret\n```\n\n---\n\n## 🏗️ Architecture\n\n```mermaid\ngraph TB\n    subgraph \"Installation\"\n        A[install.sh] --\u003e B[Role Selection]\n        B --\u003e C[Homebrew Setup]\n        C --\u003e D[System Defaults]\n        D --\u003e E[Security Hardening]\n        E --\u003e F[Shell Configuration]\n    end\n\n    subgraph \"Daily Usage\"\n        G[fc command] --\u003e H[30+ Plugins]\n        H --\u003e I[System Control]\n        H --\u003e J[Security Management]\n        H --\u003e K[Backup \u0026 Sync]\n        H --\u003e L[Secrets Management]\n    end\n\n    subgraph \"Shell Environment\"\n        M[Oh My Zsh] --\u003e N[circus plugin]\n        N --\u003e O[21 env files]\n        N --\u003e P[Role-based config]\n    end\n\n    subgraph \"macOS Defaults\"\n        Q[45+ scripts] --\u003e R[System]\n        Q --\u003e S[Interface]\n        Q --\u003e T[Apps]\n        Q --\u003e U[Accessibility]\n    end\n```\n\n---\n\n## 📚 Documentation\n\n| Guide | Description |\n|-------|-------------|\n| [📖 Commands Reference](COMMANDS.md) | Complete `fc` command documentation (30+ commands) |\n| [🏛️ Architecture](ARCHITECTURE.md) | System design and philosophy |\n| [👥 Roles Guide](ROLES.md) | Role-based installation explained |\n| [🔐 Privacy Profiles](defaults/profiles/README.md) | Security profile options |\n| [🔧 macOS Defaults](defaults/README.md) | 45+ defaults scripts documented |\n| [💾 Backup Backends](docs/BACKUP_BACKENDS.md) | GPG, Restic, and Borg options |\n| [🔑 Secrets Management](docs/SECRETS.md) | 1Password, Keychain, Vault integration |\n| [🚀 Bootstrap Guide](docs/BOOTSTRAP.md) | New machine setup automation |\n| [🎩 Alfred Workflow](docs/ALFRED.md) | Alfred integration for quick access |\n| [🔌 Creating Plugins](docs/CREATING_PLUGINS.md) | Extend `fc` with your own commands |\n| [🍎 macOS Commands](docs/MACOS_COMMANDS.md) | Terminal commands reference |\n| [🎨 Customization](docs/CUSTOMIZATION.md) | Make it your own |\n| [📋 All Documentation](docs/README.md) | Full documentation index |\n\n---\n\n## 🔒 Privacy Profiles\n\nChoose your security level:\n\n| Profile | Firewall | FileVault | Analytics | Siri | Location |\n|---------|----------|-----------|-----------|------|----------|\n| **Standard** | ✅ On | ✅ Enabled | ⚡ Limited | ✅ On | ⚡ Apps |\n| **Privacy** | ✅ Stealth | ✅ Enabled | ❌ Off | ❌ Off | ⚡ System Only |\n| **Lockdown** | ✅ Block All | ✅ Required | ❌ Off | ❌ Off | ❌ Off |\n\n---\n\n## 🔄 Machine Migration\n\nMoving to a new Mac? Use the bootstrap command for a complete setup:\n\n```bash\n# On your OLD Mac\nfc sync backup\nfc sync push  # Push to cloud storage (optional)\n\n# On your NEW Mac - Full automated setup\ngit clone https://github.com/southpawriter02/circus.git \u0026\u0026 cd circus\nfc bootstrap  # Interactive wizard guides you through everything!\n\n# Or step-by-step:\n./install.sh --role developer\nfc sync restore\n# 🎉 You're back in business!\n```\n\n---\n\n## 🤝 Contributing\n\nContributions are welcome! This project uses automated quality checks:\n\n```bash\n# Set up development environment\nbin/setup-dev\n\n# Pre-commit hooks run automatically:\n# ✓ shellcheck - Lint shell scripts\n# ✓ shfmt - Format shell scripts  \n# ✓ bats - Run test suite\n```\n\nSee the [Contributing Guide](CONTRIBUTING.md) for details.\n\n---\n\n## 🙏 Inspiration\n\nStanding on the shoulders of giants:\n\n- [Oh My Zsh](https://ohmyz.sh/) — Shell framework\n- [Mathias Bynens' dotfiles](https://github.com/mathiasbynens/dotfiles) — macOS defaults\n- [Zach Holman's dotfiles](https://github.com/holman/dotfiles) — Modular approach\n- [pre-commit](https://pre-commit.com/) — Git hooks framework\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**🎪 The Dotfiles Flying Circus**\n\n*Because setting up a Mac should be fun, not work.*\n\nMade with ☕ and 🎲 by [@southpawriter02](https://github.com/southpawriter02)\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsouthpawriter02%2Fcircus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsouthpawriter02%2Fcircus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsouthpawriter02%2Fcircus/lists"}