73 lines
2.8 KiB
Markdown
73 lines
2.8 KiB
Markdown
Simple Installation Instructions
|
||
==
|
||
Here are really simple instructions for building and installing Shairport Sync on a Raspberry Pi B, 2B, 3B or 3B+. It is assumed that the Pi is running Raspbian Stretch Lite – a GUI isn't needed, since Shairport Sync runs as a daemon program.
|
||
|
||
### Configure and Update
|
||
Do the usual update and upgrade:
|
||
```
|
||
# apt-get update
|
||
# apt-get upgrade
|
||
# rpi-update
|
||
```
|
||
(Separately, if you haven't done so already, consider using the `raspi-config` tool to expand the file system to use the entire card.)
|
||
|
||
### Activate the Improved Audio Driver
|
||
Check the file `/boot/config.txt` and, if it's not there already, add the following line:
|
||
```
|
||
audio_pwm_mode=2
|
||
```
|
||
Reboot.
|
||
|
||
### Remove Old Copies
|
||
Before you begin building Shairport Sync, it's best to search for and remove any existing copies of the applicatioon, called `shairport-sync`. Use the command `$ which shairport-sync` to find them. For example, if `shairport-sync` has been installed previously, this might happen:
|
||
```
|
||
$ which shairport-sync
|
||
/usr/local/bin/shairport-sync
|
||
$ sudo rm /usr/local/bin/shairport-sync
|
||
...
|
||
```
|
||
You can see that the `which` command located a copy of `shairports-sync` in the direcotry `/usr/local/bin` and then we removed it with the `rm` command. Do this until no more copies of `shairport-sync` are found.
|
||
|
||
### Build and Install
|
||
Okay, now let's get the tools and sources for building and installing Shairport Sync.
|
||
|
||
First, install the packages needed by Shairport Sync:
|
||
```
|
||
# apt-get install build-essential git xmltoman autoconf automake libtool libdaemon-dev libpopt-dev libconfig-dev libasound2-dev avahi-daemon libavahi-client-dev libssl-dev
|
||
```
|
||
Next, download Shairport Sync, configure it, compile and install it:
|
||
```
|
||
$ git clone https://github.com/mikebrady/shairport-sync.git
|
||
$ cd shairport-sync
|
||
$ autoreconf -fi
|
||
$ ./configure --sysconfdir=/etc --with-alsa --with-avahi --with-ssl=openssl --with-systemd
|
||
$ make
|
||
$ sudo make install
|
||
```
|
||
|
||
Now to configure Shairport Sync. Here are the important options for the Shairport Sync configuration file at `/etc/shairport-sync.conf`:
|
||
```
|
||
// Sample Configuration File for Shairport Sync on a Raspberry Pi using the built-in audio DAC
|
||
general =
|
||
{
|
||
drift_tolerance_in_seconds = 0.010;
|
||
volume_range_db = 50;
|
||
};
|
||
|
||
alsa =
|
||
{
|
||
output_device = "hw:0";
|
||
mixer_control_name = "PCM";
|
||
};
|
||
|
||
```
|
||
The next step is to enable Shairport Sync to start automatically on boot up:
|
||
```
|
||
$ sudo systemctl enable shairport-sync
|
||
```
|
||
Finally, either reboot the Pi or start the `shairport-sync` service:
|
||
```
|
||
$ sudo systemctl start shairport-sync
|
||
```
|
||
The Shairport Sync AirPlay service should now appear on the network with a service name make from the Pi's `hostname` with the first letter capitalised, e.g. hostname `raspberrypi` give a service name `Raspberrypi`. Connect to it and enjoy...
|