Shairport-sync: How to update?

Created on 16 Apr 2016  路  6Comments  路  Source: mikebrady/shairport-sync

I apologise for posting this here, but I've search the internet to no avail!

How to you update an existing install of Shairport Sync?

Git pull?

Or is there a more suitable way?

Thank you!

Most helpful comment

Hi there. Thanks for the kind words. To do an update, you basically have to go through the whole process again, but a few steps are shorter because you've done them before: you won't have to reinstall the build tools or libraries needed, and you won't have to define the user and group or reconfigure the settings in the configuration file.

But before you begin, you should update and upgrade any packages.

Here is the sequence for Raspbian Jessie, which is based on Debian Jessie. The same commands work for Ubuntu, and maybe more. Here, a non-root user with sudo privileges is assumed.

$sudo apt-get update
$sudo apt-get upgrade

Next, stop playing music to your device.

Now, to update and install Shairport Sync, if you still have the directory in which you previously compiled Shairport Sync, navigate your way to it and execute the command:

$git pull

Otherwise, just pull Shairport Sync from github again and move into the new directory:

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

Now, while in the shairport-sync directory, perform the following commands (note that there is a choice you must make in there):

$autoreconf -fi

#The following is the standard configuration for a Linux that uses the systemd initialisation system:
$./configure --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-soxr --with-systemd
#OR
#The following is the standard configuration for a Linux that uses the older System V initialisation system:
$./configure --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-soxr --with-systemv

$make
$sudo make install

At this point you have downloaded, compiled and installed the updated Shairport Sync. However, the older version is still running. So, you need to do a little more:

If you are on a systemd-based system such as Raspbian Jessie, recent versions of Ubuntu and Debian, execute the following commands:

$sudo systemctl daemon-reload
$sudo systemctl restart shairport-sync

Otherwise execute the following command:

$sudo service shairport-sync restart

That's it. Your Shairport Sync should be upgraded now.

All 6 comments

git pull and rebuild

Sadly I have no luck when I try:

sudo git pull https://github.com/mikebrady/shairport-sync.git

Mike did such a fabulous job of explaining how to install this wonderful project, all that is now need is for novices like myself to know exactly step by step how to update!

Hi there. Thanks for the kind words. To do an update, you basically have to go through the whole process again, but a few steps are shorter because you've done them before: you won't have to reinstall the build tools or libraries needed, and you won't have to define the user and group or reconfigure the settings in the configuration file.

But before you begin, you should update and upgrade any packages.

Here is the sequence for Raspbian Jessie, which is based on Debian Jessie. The same commands work for Ubuntu, and maybe more. Here, a non-root user with sudo privileges is assumed.

$sudo apt-get update
$sudo apt-get upgrade

Next, stop playing music to your device.

Now, to update and install Shairport Sync, if you still have the directory in which you previously compiled Shairport Sync, navigate your way to it and execute the command:

$git pull

Otherwise, just pull Shairport Sync from github again and move into the new directory:

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

Now, while in the shairport-sync directory, perform the following commands (note that there is a choice you must make in there):

$autoreconf -fi

#The following is the standard configuration for a Linux that uses the systemd initialisation system:
$./configure --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-soxr --with-systemd
#OR
#The following is the standard configuration for a Linux that uses the older System V initialisation system:
$./configure --with-alsa --with-avahi --with-ssl=openssl --with-metadata --with-soxr --with-systemv

$make
$sudo make install

At this point you have downloaded, compiled and installed the updated Shairport Sync. However, the older version is still running. So, you need to do a little more:

If you are on a systemd-based system such as Raspbian Jessie, recent versions of Ubuntu and Debian, execute the following commands:

$sudo systemctl daemon-reload
$sudo systemctl restart shairport-sync

Otherwise execute the following command:

$sudo service shairport-sync restart

That's it. Your Shairport Sync should be upgraded now.

I cannot thank you enough for that guide!

You have slowly but surely turned me from a consumer into a creator... not to your level, but now instead I can make physical things!

@mikebrady it would be awesome if "make install" wouldn't replace systemd service file if it is present.
Some people set nice setting there, or add additional parameters (I usually add -a %H) to shairport-sync start.

Another fine idea would be to add "wildcards" for hostname and version in setting that can be used in shairport-sync name.

@roblan maybe you should create separate issue?

Was this page helpful?
0 / 5 - 0 ratings