I spent a whole morning trying to setup FocaBot on different (uncommon) platforms, just because.
I decided to document this in case someone needs it in the future, be aware that neither of those platforms are officially supported, so if you find any issues, you're mostly on your own.
Installing FocaBot on a Raspberry PI should be pretty straightforward, following the official install instructions for Linux should work for the most part.
However, additional steps must be performed to allow audio playback, since the built-in ffmpeg binary has problems on ARM platforms:
- Install FFMPEG using your distro's package manager (
sudo apt install ffmpeg
on Raspbian 8+) - Launch
focabot config
- Select the
Change ffmpeg path >
option - Select
Use system provided ffmpeg binaries
. - Go back to the main menu and select
Save changes and exit
.
Launch the bot again, audio playback should be working now.
Be aware that some older versions of ffmpeg have issues with YouTube livestream playback. If the version your distro ships has those issues and you need YouTube livestream support, you'll have to either update to a version of your distro that ships a newer version or compile it yourself.
This same process might apply to other ARM boards.
Surprisingly enough, FocaBot works almost out of the box on FreeBSD, however, some dependencies must be installed using the
package manager on a clean installation. This guide assumes you have sudo
installed and are running as a normal user account.
- Install node, npm, python and ffmpeg
sudo pkg install node www/npm python ffmpeg
- Setup npm to run without sudo
- Install FocaBot with
npm i -g focabot
- Run
focabot
and perform the initial setup.
Everything should be working as expected, including audio playback.
Mostly the same as FreeBSD, but using pkg_add
instead of pkg install
, npm comes bundled with the node
package.
sudo pkg_add node python-2.7
Audio will not work however, and installing ffmpeg using the package manager will not work since the version provided by OpenBSD is too old. You'll have to compile ffmpeg yourself if you want audio support on OpenBSD.
You can run FocaBot on any Android device running Android Lollipop or higher, thanks to Termux. No root required.
The setup is a bit complicated however:
- Install Termux from the Google Play Store or F-Droid
- Open the app, once you're presented with the shell, install the required packages:
pkg install proot nodejs python
- Launch a virtual chroot:
termux-chroot
- Install FocaBot:
npm i -g focabot
- Perform initial setup (you can navigate through the menus by pressing
W
andS
on your phone's keyboard while holding the physicalVOLUME_UP
button)
focabot
- You now have a portable FocaBot instance on your phone/tablet! (not sure why would anyone want this but whatever)
- Remember to run
termux-chroot
before starting the bot, as it would otherwise crash! - To exit, press Ctrl+C (
VOLUME_DOWN
+C
)
For audio support:
Since most Android devices are ARM based, and the built-in ffmpeg binary has issues on ARM, you'll need to install ffmpeg from the Termux repositories.
If you have an x86 device you can ignore this section.
- Install ffmpeg
pkg install ffmpeg
- Launch
focabot config
- Select the
Change ffmpeg path >
option. Use theW
andS
keys while holdingVOLUME_UP
to navigate. - Select
Use system provided ffmpeg binaries
. - Go back to the main menu and select
Save changes and exit
.
Audio should now be fully working.