----
This is a very quick initial note about installing Shairport Sync on FreeBSD. Some manual installation is required.
-The build instructions here install back ends for `sndio` (native to OpenBSD) and ALSA. ALSA is, or course, the Advanced Linux Sound Architecture, so it is not "native" to FreeBSD. It has, however, been ported to some architectures (not to the ARM, unfortunately), so it should work pretty well on those.
+The build instructions here install back ends for `sndio` (native to OpenBSD) and ALSA. ALSA is, or course, the Advanced Linux Sound Architecture, so it is not "native" to FreeBSD, but has been ported to some architectures under FreeBSB.
General
----
Subsystems
----
-Now, install the ALSA and Avahi subsystems. Note: `avahi-app` is chosen because it doesn’t require X11 and `nss_mdns` allows FreeBSD
-to resolve mDNS-originated addresses. Thanks to [reidransom](https://gist.github.com/reidransom/6033227) for this:
+Now, install the Avahi subsystem. FYI, `avahi-app` is chosen because it doesn’t require X11 and `nss_mdns` is included to allow FreeBSD to resolve mDNS-originated addresses -- it's not needed by Shairport Sync. Thanks to [reidransom](https://gist.github.com/reidransom/6033227) for this.
```
-# pkg install alsa-utils avahi-app nss_mdns
+# pkg install avahi-app nss_mdns
```
-To enable these services to load automatically at startup, add these lines to `/etc/rc.conf`:
+Add these lines to `/etc/rc.conf`:
```
dbus_enable="YES"
avahi_daemon_enable="YES"
Next, install the packages that are needed for Shairport Sync to be downloaded and build successfully:
```
-# pkg install git autotools pkgconf popt libconfig openssl sndio
+# pkg install git autotools pkgconf popt libconfig openssl sndio alsa-utils
```
+Omit `alsa-utils` if you're not using ALSA. Likewsie, omit `sndio` if you don't intend to use the `sndio` subsystem.
Now, download Shairport Sync from GitHub and check out the `development` branch.
```
```
$ autoreconf -i -f
-$ CPPFLAGS="-I/usr/local/include" ./configure --with-alsa --with-avahi --with-sndio --with-ssl=openssl --with-metadata
+$ CPPFLAGS="-I/usr/local/include" ./configure --with-avahi --with-ssl=openssl --with-alsa --with-sndio
$ make
```
+Omit `--with-alsa` if you don;t want ot include the ALSA back end and omit the `--with-sndio` if you don't want the `sndio` back end.
Manual Installation
----
Setting Overall Volume
----
-Note, the `mixer` command is useful for setting the output device's overall volume settings. With the default settings for the `sndio` back end, the `pcm` mixer controls its maximum output:
+Note, the `mixer` command can be used for setting the output device's volume settings. You may hae to experiment to figure out which settings are appropriate.
```
$ mixer vol 100 # sets overall volume
-$ mixer pcm 100 # sets maximum volume level for the default sndio device used by Shairport Sync
```