Special Morpheus formulae of the recent release for the Homebrew package manager.
Warning
This Tap does not contain the official stable release of Morpheus! Please refer to the Morpheus download page for this.
Note
For alternate unstable or outdated versions of Morpheus, see homebrew-morpheus-versions
.
Homebrew is a free and open-source package manager for macOS that lets you easily install Morpheus and keep it up-to-date.
If not already done, install Homebrew first.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
If you have never used this Homebrew Tap to install special versions of Morpheus before, add this Morpheus Tap first:
brew tap morpheus-lab/morpheus
Simply install Morpheus from this Tap with:
brew install morpheus-lab/morpheus/morpheus
And follow possibly emerging instructions from Homebrew.
Start morpheus from the command line by typing:
morpheus-gui
First, update the formulae and Homebrew itself:
brew update
Find out what is outdated with:
brew outdated
Upgrade everything with:
brew upgrade
Or upgrade only Morpheus with:
brew upgrade morpheus-lab/morpheus/morpheus
More information about updating and, if desired, how to prevent Morpheus from being automatically updated by Homebrew, etc. can be found in the Homebrew FAQ.
To install a specific version of Morpheus, you can append the desired version number with @<VERSION>
:
brew install morpheus@<VERSION>
An example would be: brew install [email protected]
.
To list all versions available online, you can simply do a brew search
:
brew search morpheus
Delete Morpheus with:
brew uninstall morpheus-lab/morpheus/morpheus
Forcibly remove Morpheus along with deleting all it's versions:
brew uninstall --force morpheus-lab/morpheus/morpheus
brew tap-new morpheus-lab/morpheus
- read the Formula Cookbook or:
brew create $URL
and make edits brew install --build-from-source foo
brew audit --new-formula foo
git commit
with message formattedfoo 2.3.4 (new formula)
- open a pull request and fix any failing tests
When a pull request making changes to a formula (or formulae) becomes green (all checks passed), then you can publish the built bottles. To do so, label your PR as pr-pull
and the workflow will be triggered.
The latest available GitHub workflows created with the brew tap-new
command can be found in the Homebrew project under Homebrew/brew/Library/Homebrew/dev-cmd/tap-new.rb
. The two required GitHub workflow files publish.yml
and tests.yml
are embedded in tap-new.rb
and should from time to time be copied from there and updated in the Morpheus Tap.
Or you simply create a new Tap with e.g.
brew tap-new morpheus-lab/morpheus-tap-new
and this way generate two new YAML files which can be taken directly from the corresponding subfolder of the tap (in this example /opt/homebrew/Library/Taps/morpheus-lab/homebrew-morpheus-tap-new/.github/workflows
).
If the second method is used, delete the temporary Tap with
brew untap morpheus-lab/homebrew-morpheus-tap-new
afterwards.
See also the Homebrew-Core Maintainer Guide.
Prepare the formula for eventual bottling during installation, skipping any post-install steps:
brew install --build-bottle morpheus-lab/morpheus/morpheus
Generate a bottle (binary package) from a formula that was installed with
--build-bottle
and write the bottle information to a JSON file in your working directory:
brew bottle --no-rebuild --json morpheus-lab/morpheus/morpheus
Now, add the new bottle block line to the formula, e.g.:
sha256 arm64_monterey: "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
Additional Cellar parameters such as cellar: :any
or cellar: :any_skip_relocation
must be omitted, otherwise the GUI will crash on startup due to missing libraries such as QtXml.
Alternatively, merge the new bottle block line with the existing formula using the brew bottle
command:
brew bottle --merge morpheus--<VERSION>.<OS>.bottle.json
Replace <VERSION>
with the correct version number.
Set GitHub credentials:
export HOMEBREW_GITHUB_PACKAGES_USER=morpheus-lab
export HOMEBREW_GITHUB_PACKAGES_TOKEN=<YOUR_PERSONAL_ACCESS_TOKEN>
To add all the bottles of a particular release to the release tag, navigate to the folder that contains the bottle(s) and type:
brew pr-upload --upload-only --root-url="https://github.com/morpheus-lab/homebrew-morpheus/releases/download/morpheus-VERSION"
Or upload bottle to GitHub Packages (Docker):
brew pr-upload --upload-only --root-url="https://ghcr.io/v2/morpheus-lab/homebrew"
Check formula for Homebrew coding style violations:
brew audit morpheus-lab/morpheus/morpheus
Or check the whole Tap:
brew audit --tap morpheus-lab/morpheus
If necessary, let brew
fix them automatically:
brew audit --fix morpheus-lab/morpheus/morpheus
Check formulae for conformance to Homebrew style guidelines:
brew style morpheus-lab/morpheus
Fix style violations automatically using:
brew style --fix morpheus-lab/morpheus
Commit and push the updated bottle block for the formula. Provide a commit message in the style of:
git commit -m "morpheus: add <VERSION> bottle (<OS/ARCHITECTURE>)"
Replace <VERSION>
and <OS/ARCHITECTURE>
with the corresponding values.