# Huge improvements for macOS users: macOS binary beta release, Cocoa backend for TCastleWindow, automatic running and packing using AppBundle, access to macOS thanks to MacStadium

**URL:** https://forum.castle-engine.io/t/huge-improvements-for-macos-users-macos-binary-beta-release-cocoa-backend-for-tcastlewindow-automatic-running-and-packing-using-appbundle-access-to-macos-thanks-to-macstadium/588
**Category:** News
**Created:** [May 29, 2022, 3:56am UTC](https://forum.castle-engine.io/t/huge-improvements-for-macos-users-macos-binary-beta-release-cocoa-backend-for-tcastlewindow-automatic-running-and-packing-using-appbundle-access-to-macos-thanks-to-macstadium/588 "2022-05-29T03:56:05Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![michalis](https://forum.castle-engine.io/user_avatar/forum.castle-engine.io/michalis/32/3_2.png) [@michalis](https://forum.castle-engine.io/u/michalis)
#### Post date: [May 29, 2022, 3:56am UTC](https://forum.castle-engine.io/t/huge-improvements-for-macos-users-macos-binary-beta-release-cocoa-backend-for-tcastlewindow-automatic-running-and-packing-using-appbundle-access-to-macos-thanks-to-macstadium/588/1 "2022-05-29T03:56:05Z")

</div>

| [![Castle Game Engine editor on macOS](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-03-26-28-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-03-26-28-1.png "Castle Game Engine editor on macOS") |
| [![Castle Game Engine editor on macOS](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-03-26-41-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-03-26-41-1.png "Castle Game Engine editor on macOS") |
| [![castle-view-image on macOS](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-52-16-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-52-16-1.png "castle-view-image on macOS") |
| [![view3dscene on macOS - file dialog](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-58-41-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-58-41-1.png "view3dscene on macOS - file dialog") |
| [![view3dscene on macOS - color dialog](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-02-00-49-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-02-00-49-1.png "view3dscene on macOS - color dialog") |
| [![view3dscene on macOS](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-56-37-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-01-56-37-1.png "view3dscene on macOS") |
| [![Simple alert on macOS](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-02-45-18-1-200x113.png)](https://castle-engine.io/wp/wp-content/uploads/2022/05/Zrzut-ekranu-z-2022-05-29-02-45-18-1.png "Simple alert on macOS") |

We have a number of game-changing improvements for [macOS](https://castle-engine.io/macos) users today!

1. We have [Castle Game Engine binary release, for macOS, available to download here](https://github.com/castle-engine/castle-engine/releases/download/snapshot/castle-engine-7.0-alpha.snapshot-darwin-x86_64.zip). Download it and enjoy! Just unpack the zip and double-click `castle-editor` inside the `bin/` subdirectory. 

_UPDATE:_ due to [important bug](https://github.com/castle-engine/castle-engine/issues/393) being fixed, I updated the above link to lead to latest CGE for macOS, not the older version announced at this date.

Note: You have to still separately install FPC (and some IDE, like Lazarus) e.g. using [Lazarus install for macOS](https://www.lazarus-ide.org/) or [fpcupdeluxe](https://castle-engine.io/fpcupdeluxe).

Note: our applications are not (yet) signed. Double-clicking for the first time on `castle-editor` will result in an unhelpful error. Just right-click on it instead, choose _“Open”_ from the context menu, and then you will be able to confirm that you want to run an unsigned application.

Soon: This macOS build will be automatically updated by Jenkins, and available prominently on our [main page](https://castle-engine.io/) just like other platforms. _UPDATE_: This is done now 🙂

2. Your CGE applications now build on macOS without any extra steps, because we have a [Cocoa backend in TCastleWindow](https://castle-engine.io/castlewindow_backends#_cocoa_backend_castle_window_cocoa). It is a fully-featured `TCastleWindow` backend, that supports:

3. CGE applications now run on macOS using _application bundle_, which is an Apple invention to “package” an application as a directory like `MyApplication.app` along with some metadata and conventions (where to place executable, data, icon etc.). This is necessary to make macOS GUI application fully functional, also with main menu.

4. Also, CGE applications are packaged to _application bundle_.

5. [File associations now work on macOS as well](https://castle-engine.io/project_manifest#_associated_file_types), thanks to some automatic code from Cocoa backend. Opening the associated file will be reported using `TCastleWindow.OnDropFiles`.

6. By the way of all this, an improvement for all platforms: CGE editor passes now to CGE build tool the detected CGE location. This makes some setups working more reliably, in case your CGE editor can detect CGE location but CGE build tool doesn’t (or would detect a different location).

7. By the way of all this, `TCastleWindow.ColorDialog` allows to edit alpha (not only RGB) of the color. Only backends Xlib, Cocoa actually allow user to edit alpha now.

This was all possible thanks to the [MacStadium open-source program](https://www.macstadium.com/opensource/members) which provides us now full remote access to a macOS machine. This gives us long-term access to macOS, for the purpose of improving CGE support for macOS and iOS, so we can put work into perfect support and testing for these platforms!
