Skip to content

Latest commit

 

History

History
64 lines (60 loc) · 2.56 KB

OPENBSD.md

File metadata and controls

64 lines (60 loc) · 2.56 KB

Shairport Sync on OpenBSD

This is an initial note about installing Shairport Sync on OpenBSD. Shairport Sync compiles and runs natively on OpenBSD using the sndio back end.

Unlike FreeBSD, it seems that OpenBSD does not use the directory /usr/local/etc as a system configuration directory ("sysconfdir") but follows the same practice as Linux in using /etc as the default sysconfdir.

General

This build was done on a default build of OpenBSD 6.2 GENERIC.MP#134 amd64. Following this guide, /etc/installurl was created with the contents:

https://ftp.openbsd.org/pub/OpenBSD

Next, although it may not always be necessary, update the packages.

# pkg_add -Uu

Install the Avahi subsystem (search using, for example, # pkg_info -Q avahi).

# pkg_add avahi

A number of libraries will be installed to support Avahi, including the D-Bus system. Enable the D-Bus and Avahi subsystems to start automatically:

# rcctl enable messagebus avahi_daemon 
# rcctl start messagebus avahi_daemon 

Building

Install the following packages (e.g. using pkg_add in superuser mode) needed to download and build Shairport Sync:

autoconf automake popt libconfig git

Add the relevant shell variable definitions for Autoconf and Automake -- they could be placed in the user's .profile file to be automatically executed at login:

export AUTOCONF_VERSION=2.69
export AUTOMAKE_VERSION=1.15

Now, download Shairport Sync from GitHub:

$ git clone https://github.com/mikebrady/shairport-sync.git
$ cd shairport-sync

Next, switch to the development branch, configure the build and compile it:

$ git checkout development
$ autoreconf -i -f
$ ./configure --sysconfdir=/etc --with-avahi --with-ssl=openssl --with-sndio --with-os=openbsd
$ make

The application is called shairport-sync. Check that it's running correctly by executing the following command:

$ ./shairport-sync -V

This will execute the application and it will return its version information and terminate, for example:

3.2-OpenSSL-Avahi-sndio-sysconfdir:/etc

There is no make install yet -- you're on your own.

Using the sndio backend

The sndio back end does not have a hardware volume control facility. You should set the volume to maximum before use, using, for example, the mixerctl command.