nixos/snapserver: add support for meta stream type introduced in 0.23.0

This commit is contained in:
Alexandre Macabies 2021-03-25 03:55:46 +01:00
parent 77cf1c3445
commit f5b0542cb1
2 changed files with 17 additions and 4 deletions

View File

@ -65,7 +65,7 @@ let
in {
imports = [
(mkRenamedOptionModule [ "services" "snapserver" "controlPort"] [ "services" "snapserver" "tcp" "port" ])
(mkRenamedOptionModule [ "services" "snapserver" "controlPort" ] [ "services" "snapserver" "tcp" "port" ])
];
###### interface
@ -200,12 +200,21 @@ in {
location = mkOption {
type = types.oneOf [ types.path types.str ];
description = ''
The location of the pipe, file, Librespot/Airplay/process binary, or a TCP address.
Use an empty string for alsa.
For type <literal>pipe</literal> or <literal>file</literal>, the path to the pipe or file.
For type <literal>librespot</literal>, <literal>airplay</literal> or <literal>process</literal>, the path to the corresponding binary.
For type <literal>tcp</literal>, the <literal>host:port</literal> address to connect to or listen on.
For type <literal>meta</literal>, a list of stream names in the form <literal>/one/two/...</literal>. Don't forget the leading slash.
For type <literal>alsa</literal>, use an empty string.
'';
example = literalExample ''
"/path/to/pipe"
"/path/to/librespot"
"192.168.1.2:4444"
"/MyTCP/Spotify/MyPipe"
'';
};
type = mkOption {
type = types.enum [ "pipe" "librespot" "airplay" "file" "process" "tcp" "alsa" "spotify" ];
type = types.enum [ "pipe" "librespot" "airplay" "file" "process" "tcp" "alsa" "spotify" "meta" ];
default = "pipe";
description = ''
The type of input stream.

View File

@ -34,6 +34,10 @@ in {
type = "tcp";
location = "127.0.0.1:${toString tcpStreamPort}";
};
meta = {
type = "meta";
location = "/mpd/bluetooth/tcp";
};
};
};
};