Raspberry Pi
About
There is no big difference in how to install, build or run FreeSWITCH™ on a Raspberry PI except that we have a special Debian repo for that.
Introduction
The Raspberry PI usually runs Linux, but because it has another processor architecture, we prepared Debian packages for it in a different repo.
Easy Way
Installing From Debian 11 "BullsEye", 10 "Buster" or Debian 9 "Stretch" Packages
Latest Release Branch:
Release package
TOKEN=YOURSIGNALWIRETOKEN
apt-get update && apt-get install -y gnupg2 wget lsb-release apt-transport-https
wget --http-user=signalwire --http-password=$TOKEN -O /usr/share/keyrings/signalwire-freeswitch-repo.gpg https://freeswitch.signalwire.com/repo/deb/rpi/debian-release/signalwire-freeswitch-repo.gpg
echo "machine freeswitch.signalwire.com login signalwire password $TOKEN" > /etc/apt/auth.conf
chmod 600 /etc/apt/auth.conf
# This is universal for all Debian distros
# `lsb_release -sc` returns buster or stretch
echo "deb [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/rpi/debian-release/ `lsb_release -sc` main" > /etc/apt/sources.list.d/freeswitch.list
echo "deb-src [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/rpi/debian-release/ `lsb_release -sc` main" >> /etc/apt/sources.list.d/freeswitch.list
# you may want to populate /etc/freeswitch at this point.
# if /etc/freeswitch does not exist, the standard vanilla configuration is deployed
apt-get update && apt-get install -y freeswitch-meta-all
FreeSWITCH™ is now installed and can be accessed with
FreeSwitch CLI
fs_cli -rRS
Master Branch ("git"):
WARNING not suitable for production
Master Test Package
TOKEN=YOURSIGNALWIRETOKEN
apt-get update && apt-get install -yq gnupg2 wget lsb-release apt-transport-https
wget --http-user=signalwire --http-password=$TOKEN -O /usr/share/keyrings/signalwire-freeswitch-repo.gpg https://freeswitch.signalwire.com/repo/deb/rpi/debian-dev/signalwire-freeswitch-repo.gpg
echo "machine freeswitch.signalwire.com login signalwire password $TOKEN" > /etc/apt/auth.conf
chmod 600 /etc/apt/auth.conf
# This is universal for all Debian distros
# `lsb_release -sc` returns buster or stretch
echo "deb [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/rpi/debian-dev/ `lsb_release -sc` main" > /etc/apt/sources.list.d/freeswitch.list
echo "deb-src [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/rpi/debian-dev/ `lsb_release -sc` main" >> /etc/apt/sources.list.d/freeswitch.list
# you may want to populate /etc/freeswitch at this point.
# if /etc/freeswitch does not exist, the standard vanilla configuration is deployed
apt-get update && apt-get install -y freeswitch-meta-all
Building the binaries yourself.
Please see the Debian from source installation instructions.
Comments:
The instructions above do not work with Raspbian Lite. A working script, in a pull request, is at:https://freeswitch.org/stash/projects/FS/repos/freeswitch-contrib/browse/bmiller793/raspbianlite/pilitefs.sh?at=8df8aa0dc5d5ac44c7cc74e1274e9bff8d820c7fYou just need the rpilitefs.sh script, and you're good. It will install prerequisites, get source, build, and then install to /usr/local/freeswitch. Once it's done, you can start FreeSWITCH, and connect a phone to the default accounts.The script builds and installs for the minimum configuration. This, of course, can be easily changed to build the vanilla configuration, if you just want to let the Pi chug overnight. Yes, you can immediately connect VOIP clients to it at the default extensions of 1000-1019. This has been tested with Linphone. Posted by bmiller793 at Apr 21, 2016 01:26 |
---|
Thank you very much for this. I have added you to the confluence-editors group if you would care to improve these instructions as your time allows. I think this is a great application for the RPi, myself.Thanks again. Posted by boteman at Apr 27, 2016 18:37 |
One caution, however: the FreeSWITCH team can only permit links to their own repository or those of Debian and others that are trusted. If these updated instructions link to an untrusted source such as another developer's repo, then they won't allow it for security reasons. Posted by boteman at Apr 27, 2016 18:45 |
I've created a bug indicating a few issues with the script. For the time being, I build from souce. Posted by jungleboogie at Apr 28, 2016 15:51 |
Cool, thanks. Ultimately the core dev team hopes to use their build system to create packages that do most of what is needed to get an RPi up and running quickly. Posted by boteman at May 13, 2016 13:33 |