Repository navigation
Installation
Homebrew or a one-line script on macOS, Scoop or a single .exe on Windows. Then one command sets up the whole stack.
- macOS 12 or newer, on Apple Silicon or Intel. The Xcode Command Line Tools are needed only to build PHP's LDAP extension.
- Windows 10 or 11, 64-bit. Setup installs the Microsoft VC++ runtime if it's missing.
- Administrator rights once during setup, to edit the hosts file and trust the local certificate.
$ brew tap anabiiil/tap
$ brew trust anabiiil/tap # newer Homebrew asks for this once for third-party taps
$ brew install mullion
$ mullion setupUpgrades arrive through brew upgrade. A copy of the binary in ~/.mullion/bin hands off to the Homebrew one, so an upgrade takes effect right away.
This downloads the right binary for your Mac from the latest release and starts setup:
$ curl -fsSL https://raw.githubusercontent.com/anabiiil/mullion/main/install.sh | shFrom Releases, download mullion-<version>-darwin-arm64.tar.gz (Apple Silicon) or -darwin-amd64.tar.gz (Intel), then run:
$ tar -xzf mullion-*-darwin-*.tar.gz
$ xattr -c ./mullion # clear the Gatekeeper quarantine flag
$ ./mullion setup> scoop bucket add mullion https://github.com/anabiiil/scoop-bucket
> scoop install mullion
> mullion setupDownload mullion.exe (or the windows-amd64.zip) from Releases. Then either:
- double-click
mullion.exeand answer Run setup now? with Y, or - run
mullion.exe setupin a terminal.
Setup asks for administrator rights once, with a single UAC prompt.
Note: Windows SmartScreen may warn about the unsigned exe the first time it runs. Click More info → Run anyway.
- Creates the install folder and puts
mullionon yourPATH. - Downloads Caddy.
- Installs the latest PHP and makes it the default, then installs Composer.
- Installs the latest Node LTS, with npm.
- Installs MySQL (8.4 LTS), initializes it, and starts it on
127.0.0.1:3306as userrootwith no password. - Serves phpMyAdmin at
https://phpmyadmin.test. - Trusts the local certificate authority, so browsers show a padlock.
- Installs Mullion.app into
/Applicationson macOS, or creates a desktop shortcut on Windows. - Asks whether Mullion should start when you sign in.
If setup finds another stack (Laragon, XAMPP, a Homebrew service) holding ports 80, 443 or 3306, it lists it and offers to take over. It imports that stack's databases before touching anything. Every finished step is skipped on a re-run, so running mullion setup again is always safe.
Mullion.app is a small native AppKit window around the control panel. It has real windows for terminals and projects, and they merge into macOS window tabs if you prefer tabs. Setup and self-updates install it. To reinstall it by hand:
$ mullion app- Run
mullion setuponce after upgrading. It's idempotent, and on macOS it installs Mullion.app. - Panel preferences (theme, open project tabs, terminal placement, favorite commands) now live in
config.jsonunderuiinstead of the browser's storage. The panel runs on a random local port each launch, and anything the browser saved for one launch was lost on the next. Your preferences start fresh once. - Sites, PHP and Node versions, and MySQL data carry over unchanged.
$ mullion uninstallThis stops every service and removes the install folder, the hosts-file entries, the PATH entries, the trusted root certificate, the autostart entry and Mullion.app. First it offers to export every database to a backup folder that is kept (--backup / --no-backup / --yes skip the questions). Your project folders are not touched. Finally, remove the package itself with brew uninstall mullion or scoop uninstall mullion.
← Previous: Getting Started · Next: Sites and Domains →
Start
Using Mullion
Reference