Running OnionFruit on macOS requires a helper service and some native libraries to control system settings and show some UI elements. This project provides prebuilt copies of native libs/binaries for when a developer doesn't want to change native functionality and doesn't want to use Xcode to build the files.
libonionfruit- Native library that performs communication on behalf of the main application. It is required and should be copied to./DragonFruit.OnionFruit.Core.MacOS/Nativeonionfruitd- A launch daemon used in production binaries, don't use in development as it's restricted to official builds only- ServiceLoader - Application used to load a development copy of
onionfruitd, that can be used in OnionFruit debug builds
You'll need at least the ServiceLoader and libonionfruit to run a debug copy of OnionFruit. If changes are required to be made to either the library or daemon, they'll need to be modified and rebuilt from the Xcode project:
- Download and install ServiceLoader to /Applications, follow setup process to install the service (you'll need to manually approve the installation, but you need to on the main app anyways).
- Clone the main project, download the library and resign for the current machine
LIBONIONFRUIT_PATH="./DragonFruit.OnionFruit.Core.MacOS/Native/libonionfruit.dylib"
curl -L -o $LIBONIONFRUIT_PATH "https://github.com/aspriddell/onionfruit-macos-development/releases/latest/download/libonionfruit.dylib"
codesign --force --sign - $LIBONIONFRUIT_PATH