Hi guys,
@MingboPeng 's recent PR just came across on my Github feed (PR #159, released in v1.26.1):
It was released last week and I found nothing about it on the forum, so I felt the natural urge to jump in, and as usual, I faceplanted a few times. There’s no Mac installer yet, and some tweaks were needed, so here are the steps for the setup that worked for me, maybe someone finds it useful.
Tested config
- MBP M1 Max with macOS
15.7.5(24G624) - Rhino
8.35.26251.13002, 2026-09-08&BETA (9.0.26258.12304, 2026. 09. 15.) - Ladybug Tools
1.10.0
What confused me is that on the Mac, Ironbug has parts in two places. I used Claude to help me understand the released code and the problems:
- the Grasshopper plugin is for the IB components
- the Ironbug.Console command-line app, which Honeybee’s HB Detailed HVAC component uses for the simulation
0. Make sure LBT itself is fully on 1.10. Run LB Versioner with version_ = 1.10.0, then restart Rhino. (Without specifying the version you get bumped to 1.11.0 developer version, which requires bumping OpenStudio and the OpenStudio Application.) Close Rhino.
1. Download both zips from the v1.26.1 release:
ironbug.macos-1.26.1.zip(Grasshopper plugin)ironbug.console.macos-1.26.1.zip(console app; this zip also has the OpenStudio C# bindings)
2. Install the plugin. Unzip it into Grasshopper’s Libraries folder (File → Special Folders → Components Folder) as Libraries/ironbug/.
@MingboPeng is this right? The release workflow copies the plugin to
~/ladybug_tools/grasshopper/ironbugand the bindings to~/ladybug_tools/openstudio/CSharp/openstudio. Is that the intended Mac layout? I’ve just found this after writing the post…
3. Copy the OpenStudio bindings next to the .gha. The Mac plugin zip doesn’t include OpenStudio.dll. Without it I got “Cannot find OpenStudio installed in ladybug_tools folder!” and a load error for every component.
These five files (the four libopenstudio*.dylib + OpenStudio.dll) are in the console zip, in the …/net8/osx-arm64 folder. Copy them next to Ironbug.Grasshopper.gha.
Then run xattr -dr com.apple.quarantine on the Libraries/ironbug folder, otherwise macOS may block the unsigned .dylib files.
xattr -dr com.apple.quarantine "$HOME/Library/Application Support/McNeel/Rhinoceros/8.0/Plug-ins/Grasshopper (b45a29b1-4343-4035-989e-044e8580d9cf)/Libraries/ironbug"
4. Install the console where Honeybee looks for it. Otherwise HB Detailed HVAC reports “An installation of Ironbug that is compatible with this component was not found”. Honeybee checks ~/ladybug_tools/grasshopper/ironbug/Ironbug.Console:
Note: the following snippet was generated with Claude, use it with this in mind.
SRC=~/Downloads/ironbug.console.macos-1.26.1/src/Ironbug.Console/bin/Release/net8/osx-arm64 # adjust to where you unzipped it
if [ -f "$SRC/Ironbug.Console" ]; then
mkdir -p ~/ladybug_tools/grasshopper/ironbug
cp -R "$SRC"/. ~/ladybug_tools/grasshopper/ironbug/
chmod +x ~/ladybug_tools/grasshopper/ironbug/Ironbug.Console
xattr -dr com.apple.quarantine ~/ladybug_tools/grasshopper/ironbug
~/ladybug_tools/grasshopper/ironbug/Ironbug.Console --help # should print v1.26.1.0
else
echo "SRC path is wrong - check where the console zip was unzipped"
fi
The console needs the .NET 8 runtime (osx-arm64) if you don’t have it already.
5. Now open Rhino
With an Ironbug system, set system_energy_use = True in HB Simulation Output. Otherwise heating/cooling results come back empty:
I’ve tested on the LBT full building sample with Sys00_IdealAirLoad and Sys07_VAV Reheat. EnergyPlus completed with 0 severe errors.
Thanks @MingboPeng for the Mac port! ![]()






