Just in case anyone else tries to install owntone-server in a fresh Solus OS installation, I wrote the steps here; I tried various ways to set up an owntone server on a macbooc air from 2010. I want it to be able to connect to a Bluetooth speaker, pausing playback when closing the lid and restarting when reopening it. I did not achieve this by antix and various ubuntu flavours; suprisingly, Solus does the trick with very minor flaws. I hope I can reduce mileage for anyone who tries a similar project;
First install required dependecies:
cd /home/USER/
mkdir src
cd src
eopkg install -c system.devel
eopkg install gperf gettext-devel libunistring-devel mxml-devel libevent-devel avahi-devel alsa-lib-devel ffmpeg-devel libplist-devel
libsodium-devel json-c-devel sqlite3-devel pulseaudio-32bit-devel libconfuse-devel curl-devel protobuf-c-devel git`
than, clone from github and install antlr35
git clone https://github.com/owntone/owntone-server.git
cd owntone-server/
#now lets install antlr
scripts/antlr35_install.sh
install websockets from source since there seems to be no libwebsockets-devel in Solus
cd ..
git clone https://libwebsockets.org/repo/libwebsockets
cd libwebsockets/
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr .
make install
install java and link it to bin to make it executable
eopkg install openjdk-11
ln -s /usr/lib/openjdk-11/bin/java /usr/bin/java
now lets start the compile; I do not use spotify, so i disabled it
cd ../owntone-server
autoreconf -i
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --with-pulseaudio --without-spotify
make
make install
solus has an unusual location for systemd service files
cp owntone.service /etc/systemd/system
enable the service, but do not start it yet
systemctl enable owntone.service
handle user rights
useradd owntone -d /var/cache/owntone -g audio
chown -R owntone /var/cache/owntone
than set up pulseaudio
usermod -aG pulse,pulse-access,audio owntone
mkdir /etc/pulse
cp /usr/share/pulseaudio/default.pa /etc/pulse/default.pa
now we change config for pulseaudio - i am not able to do it completely by sed, so it has to be done manually. in the file /setc/owntone.conf activate pulseaudio _change "type" = "alsa"" by type = "pulseaudio" and _"server" = "localhost", but the latter, I do not know how to do it in sed.
sed -i "/type =/s/alsa/pulseaudio/g" /etc/owntone.conf
sed -i "/type =/s/#//g" /etc/owntone.conf
# I just do not know how to escape in sed # sed -i "/server =/s/[""]/["localhost"]/g" /etc/owntone.conf
sed -i "/server =/s/#//g" /etc/owntone.conf
now start the pluma editor and edit owntone.conf (music directory and "server"="localhost" in audio)
pluma /etc/owntone.conf &
insert local server allowance into pulseaudio config load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 in the file /etc/pulse/default.pa
echo "load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1" >> /etc/pulse/default.pa
now restart pulseaudio - BUT NOT AS ROOT
su USER pulseaudio -k
you should have a working owntone service by now; only problem is I have to start owntone after pulseaudio user has logged in