Platform Specific Notes

  • FreeBSD requires libiconv to be installed from ports in addition to other dependencies.

  • macOS makefiles are intended to be built with dependencies provided by macports, homebrew support will require significant changes.

  • NetBSD requires libiconv to be installed from pkgsrc in addition to other dependencies. Mosquitto should be installed from pkgsrc/wip.

  • OpenBSD also requires libiconv.

  • OpenIndiana does not have libssh or mosquitto in packages, so they need to be built separately, mosquitto requires c-ares. Requires libiconv.

  • DragonFlyBSD also requires libiconv.

Install Prerequisites

Ensure you have git, c compiler, libsqlite3-dev, libreadline-dev, libssl-dev, libssh-dev libncurses5-dev, libmicrohttpd-dev, libmosquitto-dev, bash, libdbd-sqlite3-perl, gnu sed and gnu make

sudo apt-get install build-essential libsqlite3-dev libreadline-dev git \
libssl-dev libssh-dev libncurses5-dev libmicrohttpd-dev \
libdbd-sqlite3-perl libmosquitto-dev libtool m4 sed automake

should work on debian and debian derivatives.

Install Magicka

Clone the repo

git clone

cd MagickaBBS

git submodule init
git submodule update

Build the BBS

make www

Run and answer the questions to install the initial configurations


If you are going to run SSH, you will need to create keys. To do this

mkdir keys

ssh-keygen -f keys/ssh_host_rsa_key -N '' -t rsa

ssh-keygen -f keys/ssh_host_dsa_key -N '' -t dsa

ssh-keygen -f keys/ssh_host_ecdsa_key -N '' -t ecdsa

ssh-keygen -f keys/ssh_host_ed25519_key -N '' -t ed25519

Run Magicka


./magicka config/bbs.ini

The BBS will run by default on telnet only and on port 2023. Magicka may be run on a port under 1025, however additional configuration is required and not really recommended, the port can be configured in bbs.ini. Log on to your new bbs and create your sysop account!