This repository provides a Homebrew tap for installing Express Engine (eengine) on macOS and Linux systems.
Express Engine is an open-source EXPRESS language parser and interpreter implemented in Steel Bank Common Lisp (SBCL).
The formula supports the following platforms:
-
macOS (Apple Silicon)
-
macOS (Intel)
-
Linux (x86-64)
-
Linux (ARM64)
The formula automatically detects your platform and installs the appropriate binary.
This tap is automatically updated when new eengine releases are published:
-
A new release is created in eengine-releases
-
The release workflow triggers a
repository_dispatchevent to this repository -
The
update-formula.ymlworkflow runsgenerate-formula.rbto:-
Download all platform binaries from the release
-
Calculate SHA256 checksums
-
Update
formula-metadata.json -
Generate
Formula/eengine.rbfrom the ERB template
-
-
A pull request is created with the updated formula
-
After review and merge, the new version is available via Homebrew
To manually update the formula (for testing or maintenance):
# Install dependencies
bundle install
# Generate formula for a specific version
bundle exec ruby generate-formula.rb --version eeng-5.2.7
# Dry run (preview changes without writing files)
bundle exec ruby generate-formula.rb --version eeng-5.2.7 --dry-runhomebrew-eengine/
├── .github/workflows/
│ └── update-formula.yml # Automated formula update workflow
├── Formula/
│ └── eengine.rb # Generated Homebrew formula
├── templates/
│ └── eengine.rb.erb # ERB template for formula
├── formula-metadata.json # Version and SHA256 metadata
├── generate-formula.rb # Formula generator script
├── Gemfile # Ruby dependencies
└── README.adoc # This file# Install dependencies
bundle install
# Set GitHub token for testing (optional)
export GITHUB_TOKEN=your_token_hereThis repository is primarily maintained through automated workflows. Manual updates should only be necessary for:
-
Updating the formula template (
templates/eengine.rb.erb) -
Modifying the generator script (
generate-formula.rb) -
Fixing workflow issues
This tap is provided as-is for distributing eengine via Homebrew. Refer to the eengine-releases repository for license information about eengine itself.