Skip to content

Commit

Permalink
snapcast: add package snapserver and snapclient
Browse files Browse the repository at this point in the history
Snapcast [1] is a multiroom 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 multiroom solution.
Audio is captured by the server and routed to the connected clients.
Several players can feed audio to the server in parallel and clients can
be grouped to play the same audio stream.
One of the most generic ways to use Snapcast is in conjunction with the
music player daemon (MPD) [1] or Mopidy [2].

[1]: https://github.com/badaix/snapcast
[2]: http://www.musicpd.org/
[3]: https://www.mopidy.com/

Signed-off-by: Szabolcs Hubai <szab.hu@gmail.com>
  • Loading branch information
xabolcs committed Apr 17, 2024
1 parent 79bbef1 commit cbf46ff
Showing 1 changed file with 27 additions and 17 deletions.
44 changes: 27 additions & 17 deletions sound/snapcast/Makefile
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
#
# Copyright (C) 2015 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# SPDX-License-Identifier: GPL-2.0-or-later

include $(TOPDIR)/rules.mk

PKG_NAME := snapcast
PKG_VERSION := 0.27.0
PKG_RELEASE := $(PKG_SOURCE_VERSION)
PKG_USE_MIPS16 := 0
PKG_NAME:=snapcast
BASE_VERSION:=0.28.0
PKG_SOURCE_DATE:=2024-04-15
PKG_SOURCE_VERSION:=5fa01b8a49d842ed368138ee071cdf1c34be7a64
PKG_RELEASE:=1

# PKG_MIRROR_HASH=skip
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/badaix/snapcast.git
PKG_SOURCE_VERSION:=v0.27.0
PKG_BUILD_DIR:=$(BUILD_DIR)/snapcast-$(PKG_VERSION)
PKG_MIRROR_HASH=bac3da20899f507e096df96892a4292ecad907fbeb158ddd056a5893ae96a04c

PKG_VERSION:=$(BASE_VERSION).$(subst -,.,$(PKG_SOURCE_DATE))~$(call version_abbrev,$(PKG_SOURCE_VERSION))

PKG_MAINTAINER:=
PKG_LICENSE:=GPL-3.0-or-later
PKG_LICENSE_FILES:=LICENSE
PKG_BUILD_PARALLEL:=1

include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
Expand Down Expand Up @@ -50,14 +51,14 @@ endef
define Package/snapserver
$(call Package/snapcast/Default)
TITLE += Snapserver
DEPENDS += +AUDIO_SUPPORT:alsa-lib +libvorbis +libsoxr
DEPENDS += +libvorbis
HIDDEN := 1
endef

define Package/snapclient
$(call Package/snapcast/Default)
TILE += Snapclient
DEPENDS += +libvorbisidec +libsoxr
DEPENDS += +libvorbisidec
HIDDEN := 1
endef

Expand Down Expand Up @@ -89,6 +90,15 @@ define Package/snapcast/config
endmenu
endef

define Package/snapserver/conffiles
/etc/default/snapserver
/etc/snapserver.conf
endef

define Package/snapclient/conffiles
/etc/default/snapclient
endef

define Package/snapcast/Default/install
true
endef
Expand All @@ -99,7 +109,7 @@ define Package/snapserver/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/snapserver.init $(1)/etc/init.d/snapserver
$(INSTALL_DIR) $(1)/etc/default
$(INSTALL_BIN) $(CURDIR)/../../debian/snapserver.default $(1)/etc/default/snapserver
$(INSTALL_BIN) $(PKG_BUILD_DIR)/extras/package/debian/snapserver.default $(1)/etc/default/snapserver
$(INSTALL_BIN) $(PKG_BUILD_DIR)/server/etc/snapserver.conf $(1)/etc/snapserver.conf
endef

Expand All @@ -109,7 +119,7 @@ define Package/snapclient/install
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/snapclient.init $(1)/etc/init.d/snapclient
$(INSTALL_DIR) $(1)/etc/default
$(INSTALL_BIN) $(CURDIR)/../../debian/snapclient.default $(1)/etc/default/snapclient
$(INSTALL_BIN) $(PKG_BUILD_DIR)/extras/package/debian/snapclient.default $(1)/etc/default/snapclient
endef

$(eval $(call BuildPackage,snapserver))
Expand Down

0 comments on commit cbf46ff

Please sign in to comment.