DevSetup

From ravynOS
Jump to navigation Jump to search

Developing for airyxOS requires a running airyxOS system to build on. Please make sure your hardware meets the SystemRequirements and is compatible with FreeBSD 12 - we have the same set of drivers.

Install from the Live USB (or CD)[edit | edit source]

This will result in a full airyxOS system including the default apps. There is a new AppKit-based installer available since Tanuki 0.3.0, Install airyxOS.app. The legacy Install FreeBSD.app is also still present as a backup. It will be removed once the new installer is more hardened.

Install FreeBSD.app has some problems and may not work for you. The best environment seems to be a non-UEFI system ('Legacy' boot) and SATA disk, which breaks the airyxOS requirement for UEFI. It will also create different ZFS pools and may not upgrade cleanly to future releases.

  1. Download the latest airyxOS release
  2. Write it to a USB stick or boot it in a VM
  3. Click on the desktop wallpaper to make sure the menu is visible, then choose "Go" -> "Utilities"
  4. Double click on Install airyxOS
  5. Follow the prompts. If all goes well, you can reboot into your new airyx installation and start hacking!

Tools and Stuff[edit | edit source]

Once you have the system installed, you'll need a few essentials. Most of what you need will be pre-installed but check out the Airyx package repo for extra tools with pkg search and pkg install.

For code editing, the default tool is /Applications/Kate.app. It's not exactly Xcode but it's pretty good and has nice color schemes. A reasonable Terminal.app can be found in /Applications/Utilities and Firefox is pre-installed in /Applications.

Airyx builds most things with Unix Makefiles. See the source repos for some examples. In particular, the include fragments airyx.app.mk and airyx.framework.mk are available to help build App and Framework Bundles respectively. CMake also knows how to build App Bundles and can be convinced to build a MacOS bundle and Info.plist (on airyxOS) which is then easily converted to an Airyx bundle.

If you have a Mac, Xcode can be used to build the UI for Objective-C AppKit apps. Compile the project, locate the *.nib files it produces (not the *.xib in your source tree!) and copy those to airyxOS along with the source code. It may just build & run but you will likely have to tweak a few selectors or some retain or autorelease calls. Airyx's AppKit and Foundation trail behind the latest available APIs.

Another option is to use plain C or C++ with CoreFoundation, CoreGraphics, etc or with Qt 5. Java SDK 17 is also available in /Library/Java/JavaVirtualMachines.

Swift is not supported yet.