summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author B. Watson <urchlay@slackware.uk>2023-01-12 04:39:39 -0500
committer Willy Sudiarto Raharjo <willysr@slackbuilds.org>2023-01-14 08:50:31 +0700
commit91b10c2fc521b39118cbc574864f6a833545e155 (patch)
treec10b48d88d64513c0909cf1fcb5fcd2afec80982
parent91f01dcfb83888f12c757e99093781bf7cc331af (diff)
downloadslackbuilds-91b10c2fc521b39118cbc574864f6a833545e155.tar.gz
slackbuilds-91b10c2fc521b39118cbc574864f6a833545e155.tar.xz
audio/jamulus: Updated for version 3.9.1.
Signed-off-by: B. Watson <urchlay@slackware.uk> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--audio/jamulus/jamulus.1x203
-rw-r--r--audio/jamulus/jamulus.SlackBuild32
-rw-r--r--audio/jamulus/jamulus.info6
3 files changed, 142 insertions, 99 deletions
diff --git a/audio/jamulus/jamulus.1x b/audio/jamulus/jamulus.1x
index 85d49f8ec9..4f9f4b8933 100644
--- a/audio/jamulus/jamulus.1x
+++ b/audio/jamulus/jamulus.1x
@@ -1,9 +1,9 @@
.\" Manual page for jamulus
.\" Copyright (c) 2021
.\" mirabilos <tg@debian.org>
-.\" Published under the same terms as jamulus itself.
+.\" Published under the same terms as Jamulus itself.
.\"-
-.Dd December 7, 2021
+.Dd January 12, 2023
.Dt JAMULUS "1x" "SlackBuilds.org"
.Os jamulus-3.8.1
.Sh NAME
@@ -15,7 +15,6 @@
.Op Fl c | Fl \-connect Ar address
.Op Fl d | Fl \-discononquit
.Op Fl e | Fl \-directoryserver Ar hostname
-.Op Fl e | Fl \-directoryfile Ar filename
.Op Fl F | Fl \-fastupdate
.Op Fl f | Fl \-listfilter Ar filter
.Op Fl h | Fl \&? | Fl \-help
@@ -27,26 +26,29 @@
.Op Fl m | Fl \-htmlstatus Ar file
.Op Fl n | Fl \-nogui
.Op Fl o | Fl \-serverinfo Ar info
-.Op Fl p | Fl \-port Ar number
.Op Fl P | Fl \-delaypan
+.Op Fl p | Fl \-port Ar number
.Op Fl Q | Fl \-qos Ar value
.Op Fl R | Fl \-recording Ar directory
.Op Fl s | Fl \-server
.Op Fl T | Fl \-multithreading
.Op Fl t | Fl \-notranslation
-.Op Fl u | Fl \-numchannels Ar channels
+.Op Fl u | Fl \-numchannels
.Op Fl v | Fl \-version
.Op Fl w | Fl \-welcomemessage Ar message
.Op Fl z | Fl \-startminimized
+.Op Fl \-centralserver Ar hostname
.Op Fl \-clientname Ar name
.Op Fl \-ctrlmidich Ar MIDISetup
+.Op Fl \-directoryfile Ar file
.Op Fl \-mutemyown
.Op Fl \-norecord
+.Op Fl \-serverbindip Ar ip
.Op Fl \-serverpublicip Ar ip
.Op Fl \-showallservers
.Op Fl \-showanalyzerconsole
.Sh DESCRIPTION
-.Nm jamulus ,
+.Nm Jamulus ,
a low-latency audio client and server, enables musicians to perform real-time
.Dq jam
sessions over the internet.
@@ -58,82 +60,99 @@ is also possible.
.Pp
One participant starts
.Nm
-in server mode, ideally on a dedicated server (virtual) machine;
-all participants start the (graphical) client which transmits audio
-to the server, receiving back a mixed stream.
+in Server mode, ideally on a dedicated server (virtual) machine;
+all participants start the (graphical) Client which transmits audio
+to the Server, receiving back a mixed stream.
Use of a metronome is recommended.
Clients should be connected using ethernet, not wireless, and use
proper headphone and microphone connections, not Bluetooth.
-The server should run on a low-latency system, ideally not a VM.
+The Server should run on a low-latency system, ideally not a VM.
.Pp
Running
.Nm
-without any extra options launches the full graphical client.
+without any extra options launches the full graphical Client.
.Pp
The options are as follows:
.Bl -tag -width Ds
.It Fl 6 | Fl \-enableipv6
-enable IPv6 addressing (IPv4 is always enabled).
+enable IPv6 support
.It Fl c | Fl \-connect Ar address
-.Pq client mode only
-connect to the given server
+.Pq Client mode only
+connect to the given Server
.Ar address
.Pq Ar hostname Ns Op Ar :port
at startup
.It Fl d | Fl \-discononquit
-.Pq server mode only
-disconnect all clients on quit
+.Pq Server mode only
+disconnect all Clients on quit
.It Fl e | Fl \-directoryserver Ar hostname
-.Pq server mode only
-make the server public and set its genre by setting the address
-of the directory server to use to
+.Pq Server mode only
+Register the Server with the given Directory by setting the Directory Server Address to use to
.Ar hostname ;
see also
.Fl o ;
-to be a directory server, use
+to be a Directory Server, use
.Dq Li localhost
.It Fl F | Fl \-fastupdate
-.Pq server mode only
-use 64 samples frame size mode, which reduces latency if clients connect with
+.Pq Server mode only
+use 64 samples frame size mode, which reduces latency if Clients connect with
.Dq enable small network buffers
turned on; requires a faster CPU to avoid dropouts and uses more bandwidth to
-connected clients
+connected Clients
+.It Fl \-jsonrpcsecretfile Ar file
+(Server mode only)
+Set the path to a text
+.Ar file
+containing an authentication string for obtaining access to the JSON-RPC API.
+This option is required when
+.Fl \-jsonrpcport
+is used.
+.It Fl \-jsonrpcport Ar port
+(Server mode only)
+Enables JSON-RPC API server to control the application, set the TCP
+.Ar port
+number.
+This API is
+.Em experimental
+and may change.
+It is only accessible from localhost.
+Please refer to the JSON-RPC API Documentation.
.It Fl f | Fl \-listfilter Ar filter
-.Pq directory server mode only
-whitelist servers allowed to register on the server list;
+.Pq Directory mode only
+whitelist which Servers are allowed to register on the server list;
.Ar filter
must consist of semicolon-separated IP addresses
.It Fl h | Fl \&? | Fl \-help
display a short help text and exit immediately
.It Fl i | Fl \-inifile Ar file
-.Pq client and non-headless server mode only
+.Pq Client and non-headless Server mode only
override default initialisation file with
.Ar file
.It Fl j | Fl \-nojackconnect
-.Pq client mode only
+.Pq Client mode only
do not automatically connect to JACK
.It Fl L | Fl \-licence
-.Pq server mode only
-require clients to accept the agreement shown in the welcome message
+.Pq Server mode only
+require Clients to accept the agreement shown in the welcome message
.Pq use Fl w No to set the text
before they are allowed joining
.It Fl l | Fl \-log Ar file
-.Pq server mode only
+.Pq Server mode only
enable logging to
.Ar file
.It Fl M | Fl \-mutestream
-.Pq client mode only
+.Pq Client mode only
start in muted state
.It Fl m | Fl \-htmlstatus Ar file
-.Pq server mode only
-write server status and list of connected clients, in HTML format, to
+.Pq Server mode only
+write Server status and list of connected Clients, in HTML format, to
.Ar file
periodically
.It Fl n | Fl \-nogui
disable the GUI
.It Fl o | Fl \-serverinfo Ar info
-.Pq public servers only
-set server location details, formatted as
+.Pq Registered Servers only
+set Server location details, formatted as
.Sm off
.Xo
.Ar name Li \&;
@@ -148,50 +167,58 @@ is the numeric value of a
see
.Pa https://doc.qt.io/qt\-5/qlocale.html#Country\-enum
for a list
+.It Fl P | Fl \-delaypan
+.Pq Server mode only
+start with delay panning enabled
.It Fl p | Fl \-port Ar number
set the local UDP port to use to
.Ar number
.Pq default: 22124
-.Op Fl P | Fl \-delaypan
-.Pq server mode only
-start with delay panning enabled.
.It Fl Q | Fl \-qos Ar value
-set the QoS value. Default is 128. Disable with 0.
-.It Fl R | Fl \-recording Ar directory
-.Pq server mode only
+set QoS
+.Ar value
+.Pq iptos byte
+to use
+.Pq default: 128
+.It Fl R | Fl \-recording Ar Directory
+.Pq Server mode only
enable recording
.Pq but see Fl \-norecord
storing tracks in
-.Ar directory
+.Ar Directory
.It Fl s | Fl \-server
-start in server mode
+start in Server mode
.It Fl T | Fl \-multithreading
-.Pq server mode only
+.Pq Server mode only
use multithreading to make better use of multi-core CPUs and
-support more clients
+support more Clients
.It Fl t | Fl \-notranslation
disable translations, use built-in English strings
-.It Fl u | Fl \-numchannels Ar channels
-.Pq server mode only
+.It Fl u | Fl \-numchannels
+.Pq Server mode only
set maximum number of channels
.Pq and , therefore , users ;
default is 10, maximum is 150
.It Fl v | Fl \-version
display version information and exit immediately
.It Fl w | Fl \-welcomemessage Ar message
-.Pq server mode only
+.Pq Server mode only
show
.Ar message
.Pq may contain HTML and inline CSS
to users on connect
.It Fl z | Fl \-startminimized
-.Pq server mode only
+.Pq Server mode only
start with minimised window
+.It Fl \-centralserver Ar hostname
+.Pq Server mode only
+deprecated alias for
+.Fl \-directoryserver
.It Fl \-clientname Ar name
-.Pq client mode only
+.Pq Client mode only
set window title and JACK client name
.It Fl \-ctrlmidich Ar MIDISetup
-.Pq client mode only
+.Pq Client mode only
set MIDI controller channel to listen on, control number offset and
consecutive CC numbers (channels); format:
.Sm off
@@ -216,62 +243,78 @@ left to right.
.Nm
does not provide feedback as to the current state of the Solo and Mute
buttons so the controller must track and signal their state locally.
-.Op Fl e | Fl \-directoryfile Ar filename
-.Pq server mode only
-enable server list persistence, set file name.
+.It Fl \-directoryfile Ar file
+.Pq Directory mode only
+remember registered Servers even if the Directory is restarted
.It Fl \-mutemyown
-.Pq headless client only
+.Pq headless Client only
mute my channel in my personal mix
.It Fl \-norecord
-.Pq server mode only
+.Pq Server mode only
do not automatically start recording even if configured with
.Fl R
+.It Fl \-serverbindip Ar ip
+.Pq Server mode only
+configure Legacy IP address to bind to
.It Fl \-serverpublicip Ar ip
-.Pq server mode only
-configure public Legacy IP address when both the directory server
-and the actual server are situated behind the same NAT, so that
-clients can connect
+.Pq Server mode only
+configure public legacy IP address when both the Directory Server
+and the actual Server are situated behind the same NAT, so that
+Clients can connect
.It Fl \-showallservers
-.Pq client mode only
-show all registered servers in the serverlist regardless whether a ping
-to the server is possible or not
+.Pq Client mode only
+show all registered Servers in the serverlist regardless whether a ping
+to the Server is possible or not
.Pq debugging command
.It Fl \-showanalyzerconsole
-.Pq client mode only
+.Pq Client mode only
show analyser console to debug network buffer properties
.Pq debugging command
.El
.Pp
Note that the debugging commands are not intended for general use.
.Pp
-.Nm jamulus
-knows four modes of operation: client mode and three kinds of server
-.Pq private , public , directory .
-A private server is unlisted, clients can only connect if given
+.Nm Jamulus
+knows four modes of operation: Client mode and three kinds of Server
+.Pq Unregistered, Registered, Directory.
+A Unregistered Server is unlisted, Clients can only connect if given
the address (IP address and port).
-A public server will contact a directory server (whose address must be
-given at server startup) and show up in that server's list; clients
-can retrieve a list of public servers from the directory server.
-Several directory servers are operated by the Jamulus project; there is
-a directory server for each genre, which is how public servers are
-categorised into genres.
+A Registered Server will contact a Directory (whose address must be
+given at Server startup) and show up in that Server's list; Clients
+can retrieve a list of Registered Servers from the Directory Server.
+Several Registered Directories are operated by the Jamulus project;
+there is a Directory for each genre, which is how Registered Jamulus
+Servers are categorised into genres.
.Sh SEE ALSO
.Xr qjackctl 1
.Bl -tag -width Ds
-.It Pa https://jamulus.io/wiki/
-The full Jamulus documentation.
+.It Pa https://jamulus.io/wiki/Software\-Manual
+online handbook
+.It Pa https://jamulus.io/wiki/FAQ
+frequently asked questions
+.It Pa https://jamulus.io/wiki/Running\-a\-Server
+documentation on Server configuration and types
+.It Pa https://jamulus.io/wiki/Server\-Linux#running\-in\-registered\-mode
+current list of Directory Servers operated by the Jamulus project,
+controlling the
+.Dq genre
+.It Pa https://jamulus.io/wiki/Tips\-Tricks\-More
+verbose
+.Fl \-ctrlmidich
+documentation and other more or less useful information
+.It Pa https://github.com/jamulussoftware/jamulus/blob/master/docs/JSON\-RPC.md
+JSON-RPC API Documentation (see
+.Fl \-jsonrpcport
+above)
.El
.Sh AUTHORS
.An -nosplit
.An mirabilos Aq tg@debian.org
wrote this manual page for the Debian project,
but it may be used elsewhere as well.
-.An B. Watson Aq urchlay@slackware.uk
-modified this man page slightly for the SlackBuilds.org project and
-jamulus 3.8.1.
.Sh BUGS
This manual page was derived from the source code and summarises
some of the information from the website, but it could be more helpful.
.Pp
-Some of the networking code seems to assume Legacy IP
+Some of the networking code assumes Legacy IP
.Pq IPv4 .
diff --git a/audio/jamulus/jamulus.SlackBuild b/audio/jamulus/jamulus.SlackBuild
index 34ff85be25..4b997610bc 100644
--- a/audio/jamulus/jamulus.SlackBuild
+++ b/audio/jamulus/jamulus.SlackBuild
@@ -6,6 +6,7 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230112 bkw: update for v3.9.1.
# 20211207 bkw:
# - update for v3.8.1.
# - add 'headless' option to SERVERONLY=yes config.
@@ -16,7 +17,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jamulus
-VERSION=${VERSION:-3.8.1}
+VERSION=${VERSION:-3.9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -101,41 +102,40 @@ make install INSTALL_ROOT=$PKG
# binary already stripped.
-# Man page borrowed from Debian and modified slightly (since they
-# don't use 'noupcasename', their binary is called Jamulus).
+# Man page taken from the sourceand modified slightly.
# Had to make the man page a "1x" instead of "1": It uses BSD macros
# (see groff_mdoc(7)). If I made it a "1" man page, it would say
# "BSD General Commands Manual" unconditionally (no way to force it
# to say "SlackBuilds.org" or even "General Commands Manual").
mkdir -p $PKG/usr/man/man1
gzip -9c < $CWD/$PRGNAM.1x > $PKG/usr/man/man1/$PRGNAM.1x.gz
+rm -rf $PKG/usr/share/man # original page (in wrong place)
if [ "${SERVERONLY:-no}" != "yes" ]; then
- # 'make install' puts the SVG icons in the wrong place. also the only
- # png icon provided is 512x512, ludicrously large.
+ # The only png icon provided is 512x512, ludicrously large, make smaller ones.
+ # Note to self: use rsvg-convert rather than ImageMagick's convert, because
+ # IM behaves differently depending on whether inkscape is installed. It
+ # wouldn't really hurt anything, I just want to be consistent.
HICOLOR=$PKG/usr/share/icons/hicolor/
- mkdir -p $HICOLOR/scalable/apps
- mv $HICOLOR/512x512/apps/*.svg $HICOLOR/scalable/apps
+ ICNAME=io.jamulus.jamulus
- CVT="convert -background none"
for px in 16 32 48 64 128; do
size=${px}x${px}
dir=$HICOLOR/$size/apps
mkdir -p $dir
- $CVT -resize $size distributions/$PRGNAM.svg $dir/$PRGNAM.png
- $CVT -resize $size distributions/$PRGNAM-server.svg $dir/$PRGNAM-server.png
+ CVT="rsvg-convert --width=$px --height=$px"
+ $CVT src/res/$ICNAME.svg > $dir/$ICNAME.png
+ $CVT src/res/${ICNAME}server.svg > $dir/${ICNAME}server.png
done
mkdir -p $PKG/usr/share/pixmaps
- ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+ ln -s ../icons/hicolor/48x48/apps/$ICNAME.png $PKG/usr/share/pixmaps/$PRGNAM.png
fi
-# NEWS is a 0-byte placeholder in 3.4.3.
+# NEWS is a 0-byte placeholder in 3.4.3... and nonexistent in 3.9.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- COPYING ChangeLog CONTRIBUTING.md README.md \
- SECURITY.md RELEASE-PROCESS.md TRANSLATING.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING ChangeLog CONTRIBUTING.md README.md SECURITY.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# Include our own (hopefully) helpful hints for servers.
diff --git a/audio/jamulus/jamulus.info b/audio/jamulus/jamulus.info
index 948f0941da..bb162de233 100644
--- a/audio/jamulus/jamulus.info
+++ b/audio/jamulus/jamulus.info
@@ -1,8 +1,8 @@
PRGNAM="jamulus"
-VERSION="3.8.1"
+VERSION="3.9.1"
HOMEPAGE="https://jamulus.io/"
-DOWNLOAD="https://github.com/jamulussoftware/jamulus/archive/r3_8_1/jamulus-r3_8_1.tar.gz"
-MD5SUM="1d4fe75560bacdf18987fdbd92260dec"
+DOWNLOAD="https://github.com/jamulussoftware/jamulus/archive/r3_9_1/jamulus-r3_9_1.tar.gz"
+MD5SUM="9c529cbc90824d5c891100b8c0d335aa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="jack"