Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Status of Jamulus integration in Linux distributions #223

Closed
corrados opened this issue May 15, 2020 · 20 comments
Closed

Status of Jamulus integration in Linux distributions #223

corrados opened this issue May 15, 2020 · 20 comments

Comments

@corrados
Copy link
Contributor

corrados commented May 15, 2020

This issue is basically just a list of URLs which relate to possible integrations of Jamulus in Linux distributions.

Several years ago, there was an attempt to include Jamulus in Redhat:
https://bugzilla.redhat.com/show_bug.cgi?id=1118963
The CONFIG options "noupcasename" and "opus_shared_lib" were a result of it.

More recently, mirabilos did some work for including Jamulus in Debian:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=958146
We also have Jamulus Issues related to that, e.g., #100

It seems that there is a Jamulus package in OpenSuse available:
https://software.opensuse.org/package/Jamulus

If you know of other Linux distributions or have updated informations, please post them here.

Packaging status
@trebmuh
Copy link
Member

trebmuh commented May 15, 2020

Not a mainstream distribution, but one focused on music tools, jamulus is actually in its testing phase for LibraZiK. I'm waiting to finish the whole French translation to get it out of the testers repo and in the users repo.

@Snayler
Copy link
Contributor

Snayler commented May 15, 2020

ArchLinux (and any Arch based distro) has the latest version available in the AUR.
https://aur.archlinux.org/packages/jamulus/

@pljones
Copy link
Collaborator

pljones commented May 15, 2020

Just noticed the AUR has its own jamulus.desktop. Maybe the Linux distros could agree on a jamulus.desktop entry that can be included or have one generated that's distro-specific by the build process?

@trebmuh
Copy link
Member

trebmuh commented May 15, 2020

Yep, distros tend to do that from time to time. Sometimes with a very good reason, but usually not. Maybe someone can drop them a message about the existence of a upstream desktop file ?

Oh, after checking, I know the packager and will report that to him.

@jujudusud
Copy link
Member

jujudusud commented May 15, 2020

Hi all, Co-maintainer of AUR Archlinux package here.
just finishing to update the package in order to use upstream jamulus.desktop file.
Thanks a lot trebmuh and all of you guy for all that stuff ! :-)

@jtojnar
Copy link

jtojnar commented Jun 2, 2020

It would be nice if the desktop file was installed by qmake, see #247 (comment), #247 (comment) and #247 (comment).

P.S. For cross-distro tracking there is https://repology.org/project/jamulus/versions.

@corrados
Copy link
Contributor Author

corrados commented Jun 3, 2020

Can you create a pull request for that? If not you, than anybody else?

@corrados
Copy link
Contributor Author

corrados commented Jun 3, 2020

BTW: The link in your post is pretty cool :-)

Edit: I have moved the link to the packaging status in the first post of this Issue.

@jtojnar
Copy link

jtojnar commented Jun 3, 2020

Unfortuntaely, I will not be able to open a PR anytime soon.

@corrados
Copy link
Contributor Author

corrados commented Jun 5, 2020

@jtojnar atsampson was so kind to do the implementation and the new code is already merged to the Git master. Do you have the possibility to check if the implementation works as you requested?

@seb314
Copy link
Contributor

seb314 commented Jun 5, 2020

For NixOs/Nix there's a package on master (but not in any of the stable releases currently)

@seb314
Copy link
Contributor

seb314 commented Jun 5, 2020

@jtojnar [...] Do you have the possibility to check if the implementation works as you requested?

#331 (comment)

@trebmuh
Copy link
Member

trebmuh commented Jun 17, 2020

As said in #439, jamulus 3.5.6 is now officially in the LibraZiK-3 users repo.

@ann0see
Copy link
Member

ann0see commented Sep 28, 2020

I just found jamulus in homebrew for macOS: https://formulae.brew.sh/cask/jamulus

@cosmicfranz
Copy link

cosmicfranz commented Nov 3, 2020

Hi everybody, I’m new to Jamulus and I would like to try it on a private Fedora Linux server (version 32). I have been able to create a RPM package, loosely based on the OpenSUSE spec file. I have installed such package and I can run the executable both as a client and a server.

So far, so good. However, a problem arises if I try to connect to this server with a client running on the same machine: in other words, I have two instances of the same executable, one started with ‘-s’. When I ask the client to connect to localhost, it crashes immediately with this error:

Fatal (internal) error in celt/celt_decoder.c, line 126: assertion failed: st->end <= 21

which seems related to the OPUS library I am using, that is, the one already present on my Fedora installation (version 1.3.1). I have chosen to use the system library instead of the bundled one at compile time.

I know nothing about opus library, and very little about Jamulus internals. Any pointer on how to solve this issue?

Thanks
Francesco Napoleoni

The following is the spec file I have written, on its way to conform to Fedora guidelines:

%define _debugsource_template %{nil} # this to get around a build error

Summary: Low-latency internet connection tool for real-time jam sessions
Name: jamulus
Version: 3.6.0
Release: 1
URL: https://jamulus.io/
License: GPLv2 and STK
Source: %{name}-%{version}.tar.gz
Patch0: get_rid_of_bundled_opus_library.patch # Deletes the libs/opus directory
Patch1: tweak_license_file.patch # Removes the OPUS license and puts the STK license on another file. But this is still not enough for rpmlint...

BuildRequires: qt5-qtdeclarative-devel
BuildRequires: jack-audio-connection-kit-dbus
BuildRequires: jack-audio-connection-kit-devel
BuildRequires: opus-devel
BuildRequires: desktop-file-utils

%description
The Jamulus software enables musicians to perform real-time jam sessions over
the internet. There is one server running the Jamulus server software which
collects the audio data from each Jamulus client software, mixes the audio data
and sends the mix back to each client.

%prep
%setup -q -n Jamulus3.6.0
%patch0 -p1
%patch1 -p1

%build
qmake-qt5 PREFIX=/usr CONFIG+=noupcasename CONFIG+=opus_shared_lib
make

%install
install -D -m 0755 %{name} %{buildroot}/%{_bindir}/%{name}
desktop-file-install --dir=%{buildroot}/%{_datadir}/applications %{_builddir}/Jamulus3.6.0/distributions/%{name}.desktop
install -D -m 0644 distributions/%{name}.png %{buildroot}/%{_datadir}/icons/hicolor/512x512/%{name}.png

%files
%defattr(0644, root, root, 0755)
%attr(0755, -, -) %{_bindir}/%{name}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/512x512/%{name}.png
%doc README.md CONTRIBUTING.md ChangeLog
%license COPYING COPYING-stk

@atsampson
Copy link
Contributor

Yes, it's because you're using the system libopus - there's a bug in libopus's custom mode validation that's been fixed in Git but hasn't made it into a release yet.

@cosmicfranz
Copy link

cosmicfranz commented Nov 5, 2020

Thank you. I have just verified that compiling with the internal opus library actually solves this problem.

Aside from this, after some research I have found an unofficial RPM for Fedora made by Yann Collette, which can be found here, version 3.5.5.

cheers
Francesco Napoleoni

@yajo

This comment has been minimized.

@trebmuh
Copy link
Member

trebmuh commented Nov 29, 2020

Jamulus 3.6.1 is now officially in the LibraZiK-3 users repo.

@trebmuh
Copy link
Member

trebmuh commented Jan 18, 2021

Jamulus 3.6.2 has been in the LibaZiK-3 users repo since mid-December.

@ann0see ann0see closed this as completed Jan 28, 2021
@jamulussoftware jamulussoftware locked and limited conversation to collaborators Jan 28, 2021

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
None yet
Projects
None yet
Development

No branches or pull requests