OmniOS is an illumos based distribution (fork of OpenSolaris). This quick guide is based on r151034 which was released on May 4th 2020.

This install guide assumes a freshly installed OS. Versions of dependencies are the latest as of writing this guide, substitute for later versions if they exist.

Commands prefixed with a $ are done as normal user, commands prefixed with a # are done as root user. Don’t type the $ or #

Install Prerequisits

# pkg install gcc9 header linker lint object-file header-math git gnu-make cmake gnu-coreutils pkg-config libtool autoconf automake

Install GnuTLS

$ wget https://ftp.gnu.org/gnu/nettle/nettle-3.6.tar.gz
$ tar xf nettle-3.6.tar.gz
$ cd nettle-3.6
$ ./configure --with-include-path=/usr/include/gmp/ --libdir=/usr/local/lib
$ gmake
# gmake install

$ wget https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.14.tar.xz
$ tar xf gnutls-3.6.14.tar.xz
$ LDFLAGS="-R/usr/local/lib" CFLAGS="-I/usr/include/gmp" PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure --with-included-libtasn1 --with-included-unistring --without-p11-kit --disable-dependency-tracking 
$ gmake
# gmake install

Install LibSSH

$ wget https://www.libssh.org/files/0.9/libssh-0.9.4.tar.xz
$ tar xf libssh-0.9.4.tar.xz
$ mkdir build-ssh
$ cd build-ssh
$ cmake -DWITH_EXAMPLES=0 ../libssh-0.9.4
$ make
# make install

Install Mosquitto

$ wget https://mosquitto.org/files/source/mosquitto-1.6.10.tar.gz
$ tar xf mosquitto-1.6.10
$ cd mosquitto-1.6.10
$ gmake
# INSTALL=/usr/gnu/bin/install gmake install

Install Libmicrohttpd

$ wget https://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.70.tar.gz
$ tar xf libmicrohttpd-0.9.70
$ cd libmicrohttpd-0.9.70
$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure 
$ gmake
# gmake install

Install Magicka

$ git clone https://gitlab.com/magickabbs/MagickaBBS
$ cd MagickaBBS
$ gmake www
$ ./setup.sh

Done!