During the winter break out of boredom I started working in a way to get Ignition installed via Homebrew, and recently my efforts have come to fruition.
For those who might not be aware of Homebrew (https://brew.sh/), Homebrew is "The Missing Package Manager for macOS (or Linux)".
What Does Homebrew Do?
Homebrew installs the stuff you need that Apple (or your Linux system) didn’t.
I've been doing this on a GitHub Organization called coatl.dev (@coatl-dev in the forum).
How does it work?
First you'll need Homebrew, see Installation.
Ignition via Homebrew
Once you've installed Homebrew, or if you already have it, you'll need to tap coatl-dev's Homebrew tap with the following command:
$ brew tap coatl-dev/coatl-dev
That will tap that repo and will allow you to install its formulae or casks.
Which formulae are available?
Please refer to coatl-dev — coatl.dev Formulae for the complete list.
Ignition releases
Currently there are versions for all current stable versions for macOS:
- 7.9.17
- 8.0.17
- 8.0.17 Edge
- 8.1.1
- 8.1.1 Edge
How do I install these releases?
You can run brew install coatl-dev/coatl-dev/<formula>
, or brew tap coatl-dev/coatl-dev
and then brew install <formula>
.
Example:
$ brew install coatl-dev/coatl-dev/ignition@8.1.1
==> Installing ignition@8.1.1 from coatl-dev/coatl-dev
==> Downloading https://files.inductiveautomation.com/release/ia/8.1.1/20201208-0843/Ignition-osx-8.1.1.zip
######################################################################## 100.0%
==> Caveats
To have launchd start coatl-dev/coatl-dev/ignition@8.1.1 now and restart at login:
brew services start coatl-dev/coatl-dev/ignition@8.1.1
==> Summary
🍺 /usr/local/Cellar/ignition@8.1.1/8.1.1: 1,331 files, 1.4GB, built in 50 seconds
After that, just open a new Terminal window or tab, and run ignition-8.1.1 start
and after that completes successfully just go to http://localhost:8088/ to provision your Gateway.
How am I able to start/stop/restart Ignition when installed via Homebrew?
The installation creates a symlink located in /usr/local/bin
, and each Ignition release is named according to its version. E.g. ignition@8.1.1 installs /usr/local/bin/ignition-8.1.1
, ignition@8.0.17 installs ignition-8.0.17
, ignition-edge@8.1.1 installs ignition-edge-8.1.1
, and so on.
So you'll just have to run ignition-x-x-x start
or ignition-edge-x-x-x start
. Where x-x-x
can be 8.0.17
and 8.1.1
for ignition-edge
, and 7.9.17
, 8.0.17
and 8.1.1
for ignition
.
How do I start Ignition automatically at Login?
As the installation messages suggests, just run brew services start coatl-dev/coatl-dev/ignition@x.x.x
. Alternatively you could run sudo brew services start coatl-dev/coatl-dev/ignition@x.x.x
to start at startup.
Example:
$ brew services start coatl-dev/coatl-dev/ignition@8.1.1
==> Successfully started `ignition@8.1.1` (label: homebrew.mxcl.ignition@8.1.1)
For more information about brew services
, run brew services --help
.
How do I uninstall Ignition?
Stop the Gateway by running
ignition-x.x.x stop
orignition-edge-x.x.x stop
- Run
brew uninstall ignition@x.x.x
orbrew uninstall ignition-edge-x.x.x
- Done
Where do I get support if something goes wrong?
Try the Discussions at:
Motivation
The main reason is to give developers the ability to install multiple versions. Granted, this is something that can be accomplished via the ZIP File Installations, but doing it via Homebrew is a little less involved.
Caveats and Limitations
This is only currently working on macOS Mojave or higher.
You can only provision or select one version for each version. This means that if you install ignition@8.1.1
and during provisioning you select Maker, you cannot try to install ignition@8.1.1
again and select another version while provisioning your Gateway. The same applies to all other formulae.
As mentioned above, it is important to first stop the Gateway, otherwise you might run into an issue if you want to reinstall the same version.
Hopefully you find it useful.
César Román