mirror of
https://github.com/badaix/snapcast.git
synced 2025-08-03 16:48:52 +02:00
remove client/debian and server/debian
This commit is contained in:
parent
d70b4d747b
commit
b7e5a40047
25 changed files with 0 additions and 1337 deletions
|
@ -1,342 +0,0 @@
|
|||
snapclient (0.16.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Control server: websocket support for JSON RPC
|
||||
-Control server: simple webserver integrated to host web UIs
|
||||
-Control server: bind-to addresses are configurable
|
||||
-Control server: streams can be added and Removed (PR #443)
|
||||
-Control server: group names can be changed (PR #467)
|
||||
-Librespot: add onevent parameter (PR #465)
|
||||
* Bugfixes
|
||||
-Fix build on macOS (Issue #474)
|
||||
* General
|
||||
-Control server uses less threads (one in total, instead of 1+2n)
|
||||
-Snapserver: Configuration is moved into a file
|
||||
-Removed submodules "popl" and "aixlog" to ease build
|
||||
-Snapcast depends on boost::asio and boost::beast (header only)
|
||||
-Tidy up code base
|
||||
-Makefile doesn't statically link libgcc and libstdc++
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 13 Oct 2018 00:13:37 +0200
|
||||
|
||||
snapclient (0.15.0) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Snapclient: make systemd dependeny to avahi-daemon optional
|
||||
-cmake: fix build on FreeBSD
|
||||
-Snapserver: fix occasional deadlock
|
||||
* General
|
||||
-additional linker flags "ADD_LDFLAGS" can be passed to makefile
|
||||
-update man pages, fix lintian warning
|
||||
-Support Android NDK r17
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 07 Jul 2018 00:13:37 +0200
|
||||
|
||||
snapclient (0.14.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Snapserver supports IPv4v6 dual stack and IPv4 + IPv6
|
||||
* Bugfixes
|
||||
-cmake: fix check for big endian (Issue #367)
|
||||
-cmake: fix linking against libatomic (PR #368)
|
||||
-Snapclient compiles with Android NDK API level 16 (Issue #365)
|
||||
-Fix compilation errors on FreeBSD (Issue #374, PR #375)
|
||||
* General
|
||||
-cmake: make dependency on avahi optional (PR #378)
|
||||
-cmake: Options to build snapserver and snapclient
|
||||
-cmake: works on FreeBSD
|
||||
-Update external libs (JSON for modern C++, ASIO, AixLog)
|
||||
-Restructured source tree
|
||||
-Moved Android app into separate project "snapdroid"
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Fri, 27 Apr 2018 00:13:37 +0200
|
||||
|
||||
snapclient (0.13.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support "volume" parameter for Librespot (PR #273)
|
||||
-Add support for metatags (PR #319)
|
||||
* Bugfixes
|
||||
-Fix overflow in timesync when the system time is many years off
|
||||
-Zeroconf works with IPv6
|
||||
-Snapclient unit file depends on avahi-daemon.service (PR #348)
|
||||
* General
|
||||
-Drop dependency to external "jsonrpc++"
|
||||
-Move OpenWrt and Buildroot support into separate project "SnapOS"
|
||||
-Add CMake support (not fully replacing Make yet) (PR #212)
|
||||
-Remove MIPS support for Android (deprecated by Google)
|
||||
-Use MAC address as default client id (override with "--hostID")
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 04 Mar 2018 00:13:37 +0200
|
||||
|
||||
snapclient (0.12.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support for IPv6 (PR #273, #279)
|
||||
-Spotify plugin: onstart and onstop parameter (PR #225)
|
||||
-Snapclient: configurable client id (Issue #249)
|
||||
-Android: Snapclient support for ARM, MIPS and X86
|
||||
-Snapserver: Play some silence before going idle (PR #284)
|
||||
* Bugfixes
|
||||
-Fix linker error (Issue #255, #274)
|
||||
-Snapclient: more reliable unique client id (Issue #249, #246)
|
||||
-Snapserver: fix config file permissions (Issue #251)
|
||||
-Snapserver: fix crash on "bye" from control client (Issue #238)
|
||||
-Snapserver: fix crash on port scan (Issue #267)
|
||||
-Snapserver: fix crash when a malformed message is received (Issue #264)
|
||||
* General
|
||||
-Improved logging: Use "--debug" for debug logging
|
||||
-Log to file: Use "--debug=<filename>"
|
||||
-Improved exception handling and error logging (Issue #276)
|
||||
-Android: update to NDK r16 and clang++
|
||||
-hide spotify credentials in json control message (Issue #282)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 17 Oct 2017 00:13:37 +0200
|
||||
|
||||
snapclient (0.11.1) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Snapserver produces high CPU load on some systems (Issue #174)
|
||||
-Snapserver compile error on FreeBSD
|
||||
* General
|
||||
-Updated Markdown files (PR #216, #218)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 21 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapclient (0.11.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Don't send audio to muted clients (Issue #109, #150)
|
||||
* Bugfixes
|
||||
-Compilation error on recent GCC versions (Issues #146, #170)
|
||||
-Crash when frequently connecting to the control port (Issue #200)
|
||||
-Snapcast App crashes on Android 4.x (Issue #207)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Thu, 16 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapclient (0.11.0~beta-1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Snapclient multi-instance support (Issue #73)
|
||||
-daemon can run as different user (default: snapclient, Issue #89)
|
||||
-Spotify plugin does not require username and password (PR #181)
|
||||
-Spotify plugin is compatible to librespot's pipe backend (PR #158)
|
||||
-Clients are organized in Groups
|
||||
-JSON RPC API supports batch requests
|
||||
* Bugfixes
|
||||
-Resync issue on macOS (Issue #156)
|
||||
-Id in JSON RPC API can be String, Number or NULL (Issue #161)
|
||||
-Use "which" instead of "whereis" to find binaries (PR #196, Issue #185)
|
||||
-Compiles on lede (Issue #203)
|
||||
* General
|
||||
-JSON RPC API is versionized (current version is 2.0.0)
|
||||
-Restructured Android App to support Groups
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 04 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapclient (0.10.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added support "process" streams:
|
||||
Snapserver starts a process and reads PCM data from stdout
|
||||
-Specialized versions for Spotify "spotify" and AirPlay "airplay"
|
||||
* Bugfixes
|
||||
-Fixed crash during server shutdown
|
||||
-Fixed Makefile for FreeBSD
|
||||
-Fixed building of dpk (unsigned .changes file)
|
||||
* General
|
||||
-Speed up client and server shutdown
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 16 Nov 2016 00:13:37 +0200
|
||||
|
||||
snapclient (0.9.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added (experimental) support for macOS (make TARGET=MACOS)
|
||||
* Bugfixes
|
||||
-Android client: Fixed crash on Nougat (Issue #97)
|
||||
-Fixed FreeBSD compile error for Snapserver (Issue #107)
|
||||
-Snapserver randomly dropped JSON control messages
|
||||
-Long command line options (like --sampleformat)
|
||||
didn't work on some systems (Issue #103)
|
||||
* General
|
||||
-Updated Android NDK to revision 13
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 22 Oct 2016 00:13:37 +0200
|
||||
|
||||
snapclient (0.8.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added support for FreeBSD (Issue #67)
|
||||
-Android client: Added Japanese and German translation
|
||||
-Android client: Added support for ogg (Issue #83)
|
||||
* Bugfixes
|
||||
-OpenWRT: makefile automatically sets correct endian (Issue #91)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 24 Jul 2016 00:13:37 +0200
|
||||
|
||||
snapclient (0.7.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support for HiRes audio (e.g. 96000:24:2) (Issue #13)
|
||||
Bitdepth must be one of 8, 16, 24 (=24 bit padded to 32) or 32
|
||||
-Auto start option for Android (Issue #49)
|
||||
-creation mode for the fifo can be configured (Issue #52)
|
||||
"-s pipe:///tmp/snapfifo?mode=[read|create]"
|
||||
* Bugfixes
|
||||
-Server was sometimes crashing during shutdown
|
||||
-Exceptions were not properly logged (e.g. unsupported sample rates)
|
||||
-Fixed default sound card detection on OpenWrt
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 07 May 2016 00:13:37 +0200
|
||||
|
||||
snapclient (0.6.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Port to OpenWrt
|
||||
* Bugfixes
|
||||
-Android client: fixed crash if more than two streams are active
|
||||
* General
|
||||
-Support Tremor, an integer only Ogg-Vorbis implementation
|
||||
-Endian-independent code
|
||||
-Cleaned up build process
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 10 Apr 2016 00:02:00 +0200
|
||||
|
||||
snapclient (0.5.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Android client: Fast switching of clients between streams
|
||||
* Bugfixes
|
||||
-Server: Fixed reading of server.json config file
|
||||
* General
|
||||
-Source code cleanups
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Fri, 25 Mar 2016 00:02:00 +0200
|
||||
|
||||
snapclient (0.5.0~beta-2) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Remote control API (JSON)
|
||||
Added version information
|
||||
Stream playing state (unknown, idle, playing, inactive) (Issue #34)
|
||||
-Android client: manually configure snapserver host name
|
||||
-Android client compatibility improved: armeabi and armeabi-v7 binaries
|
||||
-Android client: configurable latency
|
||||
-Improved compatibility to Mopidy (GStreamer) (Issue #23)
|
||||
* Bugfixes
|
||||
-Android client: fixed "hide offline" on start
|
||||
-Store config in /var/lib/snapcast/ when running as daemon (Issue #33)
|
||||
* General
|
||||
-README.md: Added resampling command to the Mopidy section (Issue #32)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 09 Mar 2016 00:02:00 +0200
|
||||
|
||||
snapclient (0.5.0~beta-1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Remote control API (JSON)
|
||||
Get server status, get streams, get active clients
|
||||
assign volume, assign stream, rename client, ...
|
||||
-Android port of the Snapclient with a remote control app (Issue #9)
|
||||
-Multiple streams ("zones") can be configured (Issue #21)
|
||||
Use "-s, --stream" to add a stream URI: path, name, codec, sample format
|
||||
E.g. "pipe:///tmp/snapfifo?name=Radio&sampleformat=48000:16:2&codec=flac"
|
||||
or "file:///home/user/some_pcm_file.wav?name=file"
|
||||
-Added .default file for the service (/etc/default/snapserver).
|
||||
Default program options should be configured here (e.g. streams)
|
||||
* Bugfixes
|
||||
-pipe reader recovers if the pipe has been reopened
|
||||
* General
|
||||
-SnapCast is renamed to Snapcast
|
||||
SnapClient => Snapclient
|
||||
SnapServer => Snapserver
|
||||
-Snapcast protocol:
|
||||
Less messaging: SampleFormat, Command, Ack, String, not yet final
|
||||
-Removed dependency to boost
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 09 Feb 2016 13:25:00 +0200
|
||||
|
||||
snapclient (0.4.1) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Debian packages (.deb) are linked statically against libgcc and libstdc++
|
||||
to improve compatibility
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 12 Mar 2016 12:00:00 +0200
|
||||
|
||||
snapclient (0.4.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Debian packages (.deb) for amd64 and armhf
|
||||
-Added man pages
|
||||
* Bugfixes
|
||||
-Snapserver and Snapclient are started as daemon on systemd systems
|
||||
(e.g. ARCH, Debian Jessie)
|
||||
* General
|
||||
-Snapserver is started with normal process priority
|
||||
(changed nice from -3 to 0)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Mon, 28 Dec 2015 12:00:00 +0200
|
||||
|
||||
snapclient (0.3.4) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Fix synchronization bug in FLAC decoder that could cause audible dropouts
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 23 Dec 2015 12:00:00 +0200
|
||||
|
||||
snapclient (0.3.3) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Fix Segfault when ALSA device has no description
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 15 Nov 2015 12:00:00 +0200
|
||||
|
||||
snapclient (0.3.2) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Makefile uses CXX instead of CC to invoke the c++ compiler
|
||||
* Bugfixes
|
||||
-Time calculation for PCM chunk play-out was wrong on some gcc versions
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 30 Sep 2015 12:00:00 +0200
|
||||
|
||||
snapclient (0.3.1) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Improved stability over WiFi by avoiding simultaneous reads/writes on the
|
||||
socket connection
|
||||
* Bugfixes
|
||||
-Fixed a bug in avahi browser
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 26 Aug 2015 12:00:00 +0200
|
||||
|
||||
snapclient (0.3.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Configurable codec options. Run snapserver -c [flac|ogg|pcm]:? to get
|
||||
supported options for the codec
|
||||
-Configurable buffer size for the pipe reader
|
||||
(default 20ms, was 50ms before)
|
||||
-Process priority can be changed as argument to the daemon option -d<proi>
|
||||
Default priority is -3
|
||||
* Bugfixes
|
||||
-Fixed deadlock in logger
|
||||
-Fixed occasional timeouts for client to server requests
|
||||
(e.g. time sync commands)
|
||||
-Client didn't connect to a local server if the loopback device is the only
|
||||
device with an address
|
||||
* General
|
||||
-Code clean up
|
||||
-Refactored encoding for lower latency
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 16 Aug 2015 19:25:51 +0100
|
||||
|
||||
snapclient (0.2.1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Arch Linux compatibility
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Fri, 24 Jul 2015 15:47:00 +0100
|
||||
|
|
@ -1 +0,0 @@
|
|||
9
|
|
@ -1,21 +0,0 @@
|
|||
Source: snapclient
|
||||
Section: utils
|
||||
Priority: extra
|
||||
Maintainer: Johannes Pohl <snapcast@badaix.de>
|
||||
Build-Depends: debhelper (>= 9.0.0), libc6-dev, dh-systemd, libasound2-dev, libavahi-client-dev (>= 0.6.16), libflac-dev (>= 1.3.0), libogg-dev (>= 1.0rc3), libvorbis-dev (>= 1.1.2)
|
||||
Standards-Version: 3.8.4
|
||||
Homepage: https://github.com/badaix/snapcast
|
||||
|
||||
Package: snapclient
|
||||
Architecture: any
|
||||
Depends: adduser, ${shlibs:Depends}, ${misc:Depends}
|
||||
Description: Snapcast client
|
||||
Snapcast is a multi-room client-server audio player, where all clients are
|
||||
time synchronized with the server to play perfectly synced audio. It's not a
|
||||
standalone player, but an extension that turns your existing audio player into
|
||||
a Sonos-like multi-room solution.
|
||||
.
|
||||
The server's audio input is a named pipe `/tmp/snapfifo`. All data that is fed
|
||||
into this file will be send to the connected clients. One of the most generic
|
||||
ways to use Snapcast is in conjunction with the music player daemon or Mopidy,
|
||||
which can be configured to use a named pipe as audio output.
|
|
@ -1,34 +0,0 @@
|
|||
This work was written and packaged by Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
It was downloaded from: <https://github.com/badaix/snapcast>
|
||||
|
||||
Upstream Author: Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
Copyright:
|
||||
|
||||
<Copyright (C) 2014-2019 Johannes Pohl>
|
||||
|
||||
License:
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
|
||||
|
||||
The Debian packaging is:
|
||||
|
||||
Copyright (C) 2014-2019 Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
and is licensed under the GPL version 3, see above.
|
||||
|
|
@ -1 +0,0 @@
|
|||
../README.md
|
|
@ -1,13 +0,0 @@
|
|||
#!/usr/bin/make -f
|
||||
# -*- makefile -*-
|
||||
# Sample debian/rules that uses debhelper.
|
||||
# This file was originally written by Joey Hess and Craig Small.
|
||||
# As a special exception, when this file is copied by dh-make into a
|
||||
# dh-make output file, you may use that output file without restriction.
|
||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
# export DH_VERBOSE=1
|
||||
|
||||
%:
|
||||
dh $@ --with=systemd
|
|
@ -1,22 +0,0 @@
|
|||
# defaults file for snapclient
|
||||
|
||||
# start snapclient automatically?
|
||||
START_SNAPCLIENT=true
|
||||
|
||||
# Allowed options:
|
||||
# --help produce help message
|
||||
# -v, --version show version number
|
||||
# -l, --list list pcm devices
|
||||
# -s, --soundcard arg (=default) index or name of the soundcard
|
||||
# -e, --mstderr send metadata to stderr
|
||||
# -h, --host arg server hostname or ip address
|
||||
# -p, --port arg (=1704) server port
|
||||
# -d, --daemon [=arg(=-3)] daemonize, optional process priority [-20..19]
|
||||
# --user arg the user[:group] to run snapclient as when daemonized
|
||||
# --latency arg (=0) latency of the soundcard
|
||||
# -i, --instance arg (=1) instance id
|
||||
# --hostID arg unique host id
|
||||
|
||||
USER_OPTS="--user snapclient:audio"
|
||||
|
||||
SNAPCLIENT_OPTS=""
|
|
@ -1,162 +0,0 @@
|
|||
#! /bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: snapclient
|
||||
# Required-Start: $remote_fs $syslog $network
|
||||
# Required-Stop: $remote_fs $syslog $network
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Snapclient initscript
|
||||
# Description: Snapclient - Snapcast client
|
||||
### END INIT INFO
|
||||
|
||||
# Author: Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
# Do NOT "set -e"
|
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script
|
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/
|
||||
DESC="Snapcast client"
|
||||
NAME=snapclient
|
||||
DAEMON=/usr/bin/$NAME
|
||||
PIDFILE=/var/run/$NAME/pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
USER_OPTS="--user snapclient:audio"
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x "$DAEMON" ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
SNAPCLIENT_OPTS="-d $USER_OPTS $SNAPCLIENT_OPTS"
|
||||
|
||||
if [ "$START_SNAPCLIENT" != "true" ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
||||
# and status_of_proc is working.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
PIDDIR=$(dirname "$PIDFILE")
|
||||
if [ ! -d "$PIDDIR" ]; then
|
||||
mkdir -m 0755 $PIDDIR
|
||||
fi
|
||||
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
start-stop-daemon --start --quiet --pidfile "$PIDFILE" --exec "$DAEMON" --test > /dev/null || return 1
|
||||
start-stop-daemon --start --quiet --pidfile "$PIDFILE" --exec "$DAEMON" -- $SNAPCLIENT_OPTS || return 2
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
# Wait for children to finish too if this is a daemon that forks
|
||||
# and if the daemon is only ever run from this initscript.
|
||||
# If the above conditions are not satisfied then add some other code
|
||||
# that waits for the process to drop all resources that could be
|
||||
# needed by services started subsequently. A last resort is to
|
||||
# sleep for some time.
|
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
|
||||
[ "$?" = 2 ] && return 2
|
||||
# Many daemons don't delete their pidfiles when they exit.
|
||||
rm -f $PIDFILE
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
#reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
#log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
#do_reload
|
||||
#log_end_msg $?
|
||||
#;;
|
||||
restart|force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1)
|
||||
do_start
|
||||
case "$?" in
|
||||
0) log_end_msg 0 ;;
|
||||
1) log_end_msg 1 ;; # Old process is still running
|
||||
*) log_end_msg 1 ;; # Failed to start
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Failed to stop
|
||||
log_end_msg 1
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
:
|
|
@ -1,17 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>de.badaix.snapcast.snapclient</string>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/usr/local/bin/snapclient</string>
|
||||
<!-- <string>-d</string> -->
|
||||
</array>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
<key>KeepAlive</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
|
@ -1,16 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
umask 0022
|
||||
ACTION="$1"
|
||||
VERSION="$2"
|
||||
|
||||
if [ "$ACTION" = "configure" ]; then
|
||||
# add the snapclient user
|
||||
if ! getent passwd snapclient >/dev/null; then
|
||||
useradd --gid audio --system --home-dir /var/lib/snapclient snapclient
|
||||
fi
|
||||
fi
|
||||
|
||||
#DEBHELPER#
|
|
@ -1,17 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$1" = "purge" ]; then
|
||||
# clean up all statoverrides that belonged to snapclient, so the
|
||||
# snapclient system user can be removed cleanly
|
||||
for i in $(dpkg-statoverride --list | awk '/^snapclient / {print $4}'); do
|
||||
if dpkg-statoverride --list --quiet "$i" >/dev/null; then
|
||||
dpkg-statoverride --force --quiet --remove "$i"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
userdel --force snapclient > /dev/null || true
|
||||
|
||||
#DEBHELPER#
|
|
@ -1,15 +0,0 @@
|
|||
[Unit]
|
||||
Description=Snapcast client
|
||||
After=network-online.target sound.target
|
||||
Requires=network-online.target
|
||||
Wants=avahi-daemon.service
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/default/snapclient
|
||||
Type=forking
|
||||
ExecStart=/usr/bin/snapclient -d $USER_OPTS $SNAPCLIENT_OPTS
|
||||
PIDFile=/var/run/snapclient/pid
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
|
@ -1,323 +0,0 @@
|
|||
snapserver (0.16.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Control server: websocket support for JSON RPC
|
||||
-Control server: simple webserver integrated to host web UIs
|
||||
-Control server: bind-to addresses are configurable
|
||||
-Control server: streams can be added and Removed (PR #443)
|
||||
-Control server: group names can be changed (PR #467)
|
||||
-Librespot: add onevent parameter (PR #465)
|
||||
* Bugfixes
|
||||
-Fix build on macOS (Issue #474)
|
||||
* General
|
||||
-Control server uses less threads (one in total, instead of 1+2n)
|
||||
-Snapserver: Configuration is moved into a file
|
||||
-Removed submodules "popl" and "aixlog" to ease build
|
||||
-Snapcast depends on boost::asio and boost::beast (header only)
|
||||
-Tidy up code base
|
||||
-Makefile doesn't statically link libgcc and libstdc++
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 13 Oct 2018 00:13:37 +0200
|
||||
|
||||
snapserver (0.15.0) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Snapclient: make systemd dependeny to avahi-daemon optional
|
||||
-cmake: fix build on FreeBSD
|
||||
-Snapserver: fix occasional deadlock
|
||||
* General
|
||||
-additional linker flags "ADD_LDFLAGS" can be passed to makefile
|
||||
-update man pages, fix lintian warning
|
||||
-Support Android NDK r17
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 07 Jul 2018 00:13:37 +0200
|
||||
|
||||
snapserver (0.13.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support "volume" parameter for Librespot (PR #273)
|
||||
-Add support for metatags (PR #319)
|
||||
* Bugfixes
|
||||
-Fix overflow in timesync when the system time is many years off
|
||||
-Zeroconf works with IPv6
|
||||
-Snapclient unit file depends on avahi-daemon.service (PR #348)
|
||||
* General
|
||||
-Drop dependency to external "jsonrpc++"
|
||||
-Move OpenWrt and Buildroot support into separate project "SnapOS"
|
||||
-Add CMake support (not fully replacing Make yet) (PR #212)
|
||||
-Remove MIPS support for Android (deprecated by Google)
|
||||
-Use MAC address as default client id (override with "--hostID")
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 04 Mar 2018 00:13:37 +0200
|
||||
|
||||
snapserver (0.12.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support for IPv6 (PR #273, #279)
|
||||
-Spotify plugin: onstart and onstop parameter (PR #225)
|
||||
-Snapclient: configurable client id (Issue #249)
|
||||
-Android: Snapclient support for ARM, MIPS and X86
|
||||
-Snapserver: Play some silence before going idle (PR #284)
|
||||
* Bugfixes
|
||||
-Fix linker error (Issue #255, #274)
|
||||
-Snapclient: more reliable unique client id (Issue #249, #246)
|
||||
-Snapserver: fix config file permissions (Issue #251)
|
||||
-Snapserver: fix crash on "bye" from control client (Issue #238)
|
||||
-Snapserver: fix crash on port scan (Issue #267)
|
||||
-Snapserver: fix crash when a malformed message is received (Issue #264)
|
||||
* General
|
||||
-Improved logging: Use "--debug" for debug logging
|
||||
-Log to file: Use "--debug=<filename>"
|
||||
-Improved exception handling and error logging (Issue #276)
|
||||
-Android: update to NDK r16 and clang++
|
||||
-hide spotify credentials in json control message (Issue #282)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 17 Oct 2017 00:13:37 +0200
|
||||
|
||||
snapserver (0.11.1) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Snapserver produces high CPU load on some systems (Issue #174)
|
||||
-Snapserver compile error on FreeBSD
|
||||
* General
|
||||
-Updated Markdown files (PR #216, #218)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 21 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapserver (0.11.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Don't send audio to muted clients (Issue #109, #150)
|
||||
* Bugfixes
|
||||
-Compilation error on recent GCC versions (Issues #146, #170)
|
||||
-Crash when frequently connecting to the control port (Issue #200)
|
||||
-Snapcast App crashes on Android 4.x (Issue #207)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Thu, 16 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapserver (0.11.0~beta-1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Snapclient multi-instance support (Issue #73)
|
||||
-daemon can run as different user (default: snapserver, Issue #89)
|
||||
-Spotify plugin does not require username and password (PR #181)
|
||||
-Spotify plugin is compatible to librespot's pipe backend (PR #158)
|
||||
-Clients are organized in Groups
|
||||
-JSON RPC API supports batch requests
|
||||
* Bugfixes
|
||||
-Resync issue on macOS (Issue #156)
|
||||
-Id in JSON RPC API can be String, Number or NULL (Issue #161)
|
||||
-Use "which" instead of "whereis" to find binaries (PR #196, Issue #185)
|
||||
-Compiles on lede (Issue #203)
|
||||
* General
|
||||
-JSON RPC API is versionized (current version is 2.0.0)
|
||||
-Restructured Android App to support Groups
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 04 Mar 2017 00:13:37 +0200
|
||||
|
||||
snapserver (0.10.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added support "process" streams:
|
||||
Snapserver starts a process and reads PCM data from stdout
|
||||
-Specialized versions for Spotify "spotify" and AirPlay "airplay"
|
||||
* Bugfixes
|
||||
-Fixed crash during server shutdown
|
||||
-Fixed Makefile for FreeBSD
|
||||
-Fixed building of dpk (unsigned .changes file)
|
||||
* General
|
||||
-Speed up client and server shutdown
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 16 Nov 2016 00:13:37 +0200
|
||||
|
||||
snapserver (0.9.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added (experimental) support for macOS (make TARGET=MACOS)
|
||||
* Bugfixes
|
||||
-Android client: Fixed crash on Nougat (Issue #97)
|
||||
-Fixed FreeBSD compile error for Snapserver (Issue #107)
|
||||
-Snapserver randomly dropped JSON control messages
|
||||
-Long command line options (like --sampleformat)
|
||||
didn't work on some systems (Issue #103)
|
||||
* General
|
||||
-Updated Android NDK to revision 13
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 22 Oct 2016 00:13:37 +0200
|
||||
|
||||
snapserver (0.8.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Added support for FreeBSD (Issue #67)
|
||||
-Android client: Added Japanese and German translation
|
||||
-Android client: Added support for ogg (Issue #83)
|
||||
* Bugfixes
|
||||
-OpenWRT: makefile automatically sets correct endian (Issue #91)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 24 Jul 2016 00:13:37 +0200
|
||||
|
||||
snapserver (0.7.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Support for HiRes audio (e.g. 96000:24:2) (Issue #13)
|
||||
Bitdepth must be one of 8, 16, 24 (=24 bit padded to 32) or 32
|
||||
-Auto start option for Android (Issue #49)
|
||||
-creation mode for the fifo can be configured (Issue #52)
|
||||
"-s pipe:///tmp/snapfifo?mode=[read|create]"
|
||||
* Bugfixes
|
||||
-Server was sometimes crashing during shutdown
|
||||
-Exceptions were not properly logged (e.g. unsupported sample rates)
|
||||
-Fixed default sound card detection on OpenWrt
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 07 May 2016 00:13:37 +0200
|
||||
|
||||
snapserver (0.6.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Port to OpenWrt
|
||||
* Bugfixes
|
||||
-Android client: fixed crash if more than two streams are active
|
||||
* General
|
||||
-Support Tremor, an integer only Ogg-Vorbis implementation
|
||||
-Endian-independent code
|
||||
-Cleaned up build process
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 10 Apr 2016 00:02:00 +0200
|
||||
|
||||
snapserver (0.5.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Android client: Fast switching of clients between streams
|
||||
* Bugfixes
|
||||
-Server: Fixed reading of server.json config file
|
||||
* General
|
||||
-Source code cleanups
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Fri, 25 Mar 2016 00:02:00 +0200
|
||||
|
||||
snapserver (0.5.0~beta-2) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Remote control API (JSON)
|
||||
Added version information
|
||||
Stream playing state (unknown, idle, playing, inactive) (Issue #34)
|
||||
-Android client: manually configure snapserver host name
|
||||
-Android client compatibility improved: armeabi and armeabi-v7 binaries
|
||||
-Android client: configurable latency
|
||||
-Improved compatibility to Mopidy (GStreamer) (Issue #23)
|
||||
* Bugfixes
|
||||
-Android client: fixed "hide offline" on start
|
||||
-Store config in /var/lib/snapcast/ when running as daemon (Issue #33)
|
||||
* General
|
||||
-README.md: Added resampling command to the Mopidy section (Issue #32)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 09 Mar 2016 00:02:00 +0200
|
||||
|
||||
snapserver (0.5.0~beta-1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Remote control API (JSON)
|
||||
Get server status, get streams, get active clients
|
||||
assign volume, assign stream, rename client, ...
|
||||
-Android port of the Snapclient with a remote control app (Issue #9)
|
||||
-Multiple streams ("zones") can be configured (Issue #21)
|
||||
Use "-s, --stream" to add a stream URI: path, name, codec, sample format
|
||||
E.g. "pipe:///tmp/snapfifo?name=Radio&sampleformat=48000:16:2&codec=flac"
|
||||
or "file:///home/user/some_pcm_file.wav?name=file"
|
||||
-Added .default file for the service (/etc/default/snapserver).
|
||||
Default program options should be configured here (e.g. streams)
|
||||
* Bugfixes
|
||||
-pipe reader recovers if the pipe has been reopened
|
||||
* General
|
||||
-SnapCast is renamed to Snapcast
|
||||
SnapClient => Snapclient
|
||||
SnapServer => Snapserver
|
||||
-Snapcast protocol:
|
||||
Less messaging: SampleFormat, Command, Ack, String, not yet final
|
||||
-Removed dependency to boost
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Tue, 09 Feb 2016 13:25:00 +0200
|
||||
|
||||
snapserver (0.4.1) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Debian packages (.deb) are linked statically against libgcc and libstdc++
|
||||
to improve compatibility
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sat, 12 Mar 2016 12:00:00 +0200
|
||||
|
||||
snapserver (0.4.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Debian packages (.deb) for amd64 and armhf
|
||||
-Added man pages
|
||||
* Bugfixes
|
||||
-Snapserver and Snapclient are started as daemon on systemd systems
|
||||
(e.g. ARCH, Debian Jessie)
|
||||
* General
|
||||
-Snapserver is started with normal process priority
|
||||
(changed nice from -3 to 0)
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Mon, 28 Dec 2015 12:00:00 +0200
|
||||
|
||||
snapserver (0.3.4) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Fix synchronization bug in FLAC decoder that could cause audible dropouts
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 23 Dec 2015 12:00:00 +0200
|
||||
|
||||
snapserver (0.3.3) unstable; urgency=low
|
||||
|
||||
* Bugfixes
|
||||
-Fix Segfault when ALSA device has no description
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 15 Nov 2015 12:00:00 +0200
|
||||
|
||||
snapserver (0.3.2) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Makefile uses CXX instead of CC to invoke the c++ compiler
|
||||
* Bugfixes
|
||||
-Time calculation for PCM chunk play-out was wrong on some gcc versions
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 30 Sep 2015 12:00:00 +0200
|
||||
|
||||
snapserver (0.3.1) unstable; urgency=low
|
||||
|
||||
* General
|
||||
-Improved stability over WiFi by avoiding simultaneous reads/writes on the
|
||||
socket connection
|
||||
* Bugfixes
|
||||
-Fixed a bug in avahi browser
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Wed, 26 Aug 2015 12:00:00 +0200
|
||||
|
||||
snapserver (0.3.0) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Configurable codec options. Run snapserver -c [flac|ogg|pcm]:? to get
|
||||
supported options for the codec
|
||||
-Configurable buffer size for the pipe reader
|
||||
(default 20ms, was 50ms before)
|
||||
-Process priority can be changed as argument to the daemon option -d<proi>
|
||||
Default priority is -3
|
||||
* Bugfixes
|
||||
-Fixed deadlock in logger
|
||||
-Fixed occasional timeouts for client to server requests
|
||||
(e.g. time sync commands)
|
||||
-Client didn't connect to a local server if the loopback device is the only
|
||||
device with an address
|
||||
* General
|
||||
-Code clean up
|
||||
-Refactored encoding for lower latency
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Sun, 16 Aug 2015 19:25:51 +0100
|
||||
|
||||
snapserver (0.2.1) unstable; urgency=low
|
||||
|
||||
* Features
|
||||
-Arch Linux compatibility
|
||||
|
||||
-- Johannes Pohl <snapcast@badaix.de> Fri, 24 Jul 2015 15:47:00 +0100
|
||||
|
|
@ -1 +0,0 @@
|
|||
9
|
|
@ -1,21 +0,0 @@
|
|||
Source: snapserver
|
||||
Section: utils
|
||||
Priority: extra
|
||||
Maintainer: Johannes Pohl <snapcast@badaix.de>
|
||||
Build-Depends: debhelper (>= 9.0.0), libc6-dev, dh-systemd, libavahi-client-dev (>= 0.6.16), libflac-dev (>= 1.3.0), libogg-dev (>= 1.0rc3), libvorbis-dev (>= 1.1.2)
|
||||
Standards-Version: 3.8.4
|
||||
Homepage: https://github.com/badaix/snapcast
|
||||
|
||||
Package: snapserver
|
||||
Architecture: any
|
||||
Depends: adduser, ${shlibs:Depends}, ${misc:Depends}
|
||||
Description: Snapcast server
|
||||
Snapcast is a multi-room client-server audio player, where all clients are
|
||||
time synchronized with the server to play perfectly synced audio. It's not a
|
||||
standalone player, but an extension that turns your existing audio player into
|
||||
a Sonos-like multi-room solution.
|
||||
.
|
||||
The server's audio input is a named pipe `/tmp/snapfifo`. All data that is fed
|
||||
into this file will be send to the connected clients. One of the most generic
|
||||
ways to use Snapcast is in conjunction with the music player daemon or Mopidy,
|
||||
which can be configured to use a named pipe as audio output.
|
|
@ -1,34 +0,0 @@
|
|||
This work was written and packaged by Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
It was downloaded from: <https://github.com/badaix/snapcast>
|
||||
|
||||
Upstream Author: Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
Copyright:
|
||||
|
||||
<Copyright (C) 2014-2018 Johannes Pohl>
|
||||
|
||||
License:
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
|
||||
|
||||
The Debian packaging is:
|
||||
|
||||
Copyright (C) 2014-2018 Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
and is licensed under the GPL version 3, see above.
|
||||
|
|
@ -1 +0,0 @@
|
|||
../README.md
|
|
@ -1,13 +0,0 @@
|
|||
#!/usr/bin/make -f
|
||||
# -*- makefile -*-
|
||||
# Sample debian/rules that uses debhelper.
|
||||
# This file was originally written by Joey Hess and Craig Small.
|
||||
# As a special exception, when this file is copied by dh-make into a
|
||||
# dh-make output file, you may use that output file without restriction.
|
||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
||||
|
||||
# Uncomment this to turn on verbose mode.
|
||||
# export DH_VERBOSE=1
|
||||
|
||||
%:
|
||||
dh $@ --with=systemd
|
|
@ -1,36 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# PROVIDE: snapserver
|
||||
# REQUIRE: DAEMON
|
||||
# KEYWORD: Snapserver
|
||||
#
|
||||
# Snapserver - Snapcast server
|
||||
#
|
||||
# Add the following line to /etc/rc.conf to enable snapserver:
|
||||
# snapserver_enable=YES
|
||||
# Add snapserver_opts=<options> to configure command line arguments
|
||||
|
||||
snapserver_opts="-d"
|
||||
|
||||
. /etc/rc.subr
|
||||
|
||||
name=snapserver
|
||||
rcvar=snapserver_enable
|
||||
desc="Snapserver - Snapcast server"
|
||||
|
||||
load_rc_config $name
|
||||
|
||||
: ${snapserver_enable:=NO}
|
||||
|
||||
command=/usr/local/bin/${name}
|
||||
pidfile="/var/run/${name}/pid"
|
||||
|
||||
start_cmd=snapserver_start
|
||||
|
||||
|
||||
snapserver_start() {
|
||||
checkyesno snapserver_enable && echo "Starting snapserver." && ${command} ${snapserver_opts}
|
||||
}
|
||||
|
||||
run_rc_command $1
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
# defaults file for snapserver
|
||||
|
||||
# start snapserver automatically?
|
||||
START_SNAPSERVER=true
|
||||
|
||||
# Allowed options:
|
||||
# -h, --help Produce help message
|
||||
# -v, --version Show version number
|
||||
# -d, --daemon [=arg(=0)] Daemonize
|
||||
# optional process priority [-20..19]
|
||||
# --user arg the user[:group] to run snapserver as when daemonized
|
||||
# -c, --config arg (=/etc/snapserver.conf)
|
||||
# path to the configuration file
|
||||
|
||||
USER_OPTS="--user snapserver:snapserver"
|
||||
|
||||
SNAPSERVER_OPTS=""
|
|
@ -1,163 +0,0 @@
|
|||
#! /bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: snapserver
|
||||
# Required-Start: $remote_fs $syslog $network
|
||||
# Required-Stop: $remote_fs $syslog $network
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Snapserver initscript
|
||||
# Description: Snapserver - Snapcast server
|
||||
### END INIT INFO
|
||||
|
||||
# Author: Johannes Pohl <snapcast@badaix.de>
|
||||
|
||||
# Do NOT "set -e"
|
||||
|
||||
# PATH should only include /usr/* if it runs after the mountnfs.sh script
|
||||
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/
|
||||
DESC="Snapcast server"
|
||||
NAME=snapserver
|
||||
DAEMON=/usr/bin/$NAME
|
||||
PIDFILE=/var/run/$NAME/pid
|
||||
SCRIPTNAME=/etc/init.d/$NAME
|
||||
USER_OPTS="--user snapserver:snapserver"
|
||||
|
||||
# Exit if the package is not installed
|
||||
[ -x "$DAEMON" ] || exit 0
|
||||
|
||||
# Read configuration variable file if it is present
|
||||
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
|
||||
SNAPSERVER_OPTS="-d $USER_OPTS $SNAPSERVER_OPTS"
|
||||
|
||||
if [ "$START_SNAPSERVER" != "true" ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Load the VERBOSE setting and other rcS variables
|
||||
. /lib/init/vars.sh
|
||||
|
||||
# Define LSB log_* functions.
|
||||
# Depend on lsb-base (>= 3.2-14) to ensure that this file is present
|
||||
# and status_of_proc is working.
|
||||
. /lib/lsb/init-functions
|
||||
|
||||
#
|
||||
# Function that starts the daemon/service
|
||||
#
|
||||
do_start()
|
||||
{
|
||||
PIDDIR=$(dirname "$PIDFILE")
|
||||
if [ ! -d "$PIDDIR" ]; then
|
||||
mkdir -m 0755 $PIDDIR
|
||||
chown snapserver:snapserver $PIDDIR
|
||||
fi
|
||||
|
||||
# Return
|
||||
# 0 if daemon has been started
|
||||
# 1 if daemon was already running
|
||||
# 2 if daemon could not be started
|
||||
start-stop-daemon --start --quiet --pidfile "$PIDFILE" --exec "$DAEMON" --test > /dev/null || return 1
|
||||
start-stop-daemon --start --quiet --pidfile "$PIDFILE" --exec "$DAEMON" -- $SNAPSERVER_OPTS || return 2
|
||||
# Add code here, if necessary, that waits for the process to be ready
|
||||
# to handle requests from services started subsequently which depend
|
||||
# on this one. As a last resort, sleep for some time.
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
do_stop()
|
||||
{
|
||||
# Return
|
||||
# 0 if daemon has been stopped
|
||||
# 1 if daemon was already stopped
|
||||
# 2 if daemon could not be stopped
|
||||
# other if a failure occurred
|
||||
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
|
||||
RETVAL="$?"
|
||||
[ "$RETVAL" = 2 ] && return 2
|
||||
# Wait for children to finish too if this is a daemon that forks
|
||||
# and if the daemon is only ever run from this initscript.
|
||||
# If the above conditions are not satisfied then add some other code
|
||||
# that waits for the process to drop all resources that could be
|
||||
# needed by services started subsequently. A last resort is to
|
||||
# sleep for some time.
|
||||
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
|
||||
[ "$?" = 2 ] && return 2
|
||||
# Many daemons don't delete their pidfiles when they exit.
|
||||
rm -f $PIDFILE
|
||||
return "$RETVAL"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that sends a SIGHUP to the daemon/service
|
||||
#
|
||||
do_reload() {
|
||||
#
|
||||
# If the daemon can reload its configuration without
|
||||
# restarting (for example, when it is sent a SIGHUP),
|
||||
# then implement that here.
|
||||
#
|
||||
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
|
||||
return 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
|
||||
do_start
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
stop)
|
||||
[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
|
||||
2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
|
||||
esac
|
||||
;;
|
||||
status)
|
||||
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
||||
;;
|
||||
#reload|force-reload)
|
||||
#
|
||||
# If do_reload() is not implemented then leave this commented out
|
||||
# and leave 'force-reload' as an alias for 'restart'.
|
||||
#
|
||||
#log_daemon_msg "Reloading $DESC" "$NAME"
|
||||
#do_reload
|
||||
#log_end_msg $?
|
||||
#;;
|
||||
restart|force-reload)
|
||||
#
|
||||
# If the "reload" option is implemented then remove the
|
||||
# 'force-reload' alias
|
||||
#
|
||||
log_daemon_msg "Restarting $DESC" "$NAME"
|
||||
do_stop
|
||||
case "$?" in
|
||||
0|1)
|
||||
do_start
|
||||
case "$?" in
|
||||
0) log_end_msg 0 ;;
|
||||
1) log_end_msg 1 ;; # Old process is still running
|
||||
*) log_end_msg 1 ;; # Failed to start
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
# Failed to stop
|
||||
log_end_msg 1
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
|
||||
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
|
||||
:
|
|
@ -1,19 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Label</key>
|
||||
<string>de.badaix.snapcast.snapserver</string>
|
||||
<key>ProgramArguments</key>
|
||||
<array>
|
||||
<string>/usr/local/bin/snapserver</string>
|
||||
<!-- <string>-d</string> -->
|
||||
</array>
|
||||
<key>RunAtLoad</key>
|
||||
<true/>
|
||||
<key>KeepAlive</key>
|
||||
<true/>
|
||||
<key>ProcessType</key>
|
||||
<string>Interactive</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -1,16 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
umask 0022
|
||||
ACTION="$1"
|
||||
VERSION="$2"
|
||||
|
||||
if [ "$ACTION" = "configure" ]; then
|
||||
# add the snapserver user
|
||||
if ! getent passwd snapserver >/dev/null; then
|
||||
useradd --user-group --system --home-dir /var/lib/snapserver snapserver
|
||||
fi
|
||||
fi
|
||||
|
||||
#DEBHELPER#
|
|
@ -1,18 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$1" = "purge" ]; then
|
||||
# clean up all statoverrides that belonged to snapserver, so the
|
||||
# snapserver system user can be removed cleanly
|
||||
for i in $(dpkg-statoverride --list | awk '/^snapserver / {print $4}'); do
|
||||
if dpkg-statoverride --list --quiet "$i" >/dev/null; then
|
||||
dpkg-statoverride --force --quiet --remove "$i"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
userdel --force snapserver > /dev/null || true
|
||||
groupdel snapserver > /dev/null || true
|
||||
|
||||
#DEBHELPER#
|
|
@ -1,14 +0,0 @@
|
|||
[Unit]
|
||||
Description=Snapcast server
|
||||
After=network-online.target
|
||||
Requires=network-online.target
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=-/etc/default/snapserver
|
||||
Type=forking
|
||||
ExecStart=/usr/bin/snapserver -d $USER_OPTS $SNAPSERVER_OPTS
|
||||
PIDFile=/var/run/snapserver/pid
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Add table
Add a link
Reference in a new issue