0
0
Fork 0
mirror of https://gitlab.com/quite/mumla.git synced 2026-04-19 07:30:26 +00:00
Android app for Mumble voice conference system (a fork of Plumble)
  • Java 99.5%
  • Shell 0.5%
Find a file
ButterflyOfFire 3ca715a512
Translated using Weblate (Kabyle)
Currently translated at 2.6% (1 of 38 strings)

Translation: Mumla/Description
Translate-URL: https://hosted.weblate.org/projects/mumla/description/kab/
2026-04-13 19:09:49 +00:00
.github Add funding link 2026-01-19 22:07:41 +01:00
app Translated using Weblate (Kabyle) 2026-04-13 10:10:00 +02:00
fastlane/metadata/android Translated using Weblate (Kabyle) 2026-04-13 19:09:49 +00:00
gradle/wrapper Bump gradle; explicit multidex no longer needed on SDK>=21 2025-12-22 10:04:19 +01:00
libraries Support echo cancellation using Android hardware AEC 2026-04-11 11:21:11 +02:00
.editorconfig doc: revise README 2026-02-08 11:54:25 +01:00
.gitignore Rename the whole shebang 2020-03-30 15:23:45 +02:00
.gitlab-ci.yml ci: use image that has jdk 21 2026-03-06 15:33:59 +01:00
.gitmodules Use master branch of humla 2020-03-31 15:27:22 +02:00
build.gradle Update Jumble version. 2014-07-12 17:55:58 -07:00
FUNDING.yml Add FUNDING.yml 2020-07-22 10:21:08 +02:00
gradle.properties Use the default, nonFinalResIds=true, and we're good 2026-01-16 09:49:41 +01:00
gradlew Build with JDK 17, gradle 8, SDK 34, specific NDK 2024-01-16 09:27:18 +01:00
gradlew.bat Build with JDK 17, gradle 8, SDK 34, specific NDK 2024-01-16 09:27:18 +01:00
LICENSE Initial commit :) 2014-01-27 02:13:12 -08:00
README.md Note about the container image 2026-03-07 10:55:29 +01:00
settings.gradle Pick up new humla; lowercase it 2020-03-30 22:15:49 +02:00
update-available-per-app-langs Detect also 3-letter language codes 2026-01-15 15:16:37 +01:00

Software maintenance situation

Current maintainer Daniel Lublin (@quite@mstdn.social on fedi) has very little time to do voluntary work on Mumla. My focus is strictly on maintaining stability and security. This includes migrations to newer Android SDKs, as they become requirements by Google/Alphabet for even getting updates published on Google Play. There are also other maintenance and administrative work, which barely gets done in a timely manner.

At some point I expect Mumla to disappear from Google Play, because there will be some requirement that I did not have time to fulfill. Eventually it will also rot and no longer work well in general on newer releases of Android.

Mumla needs a new maintainer that can allocate time to take on, to begin with, all these tasks. To maintain stability and security. And then hopefully also work with the community on for example protocol parity with desktop Mumble, support for various hardware accessories, general usability, and new features.

Until there is a new maintainer with time on their hands you cannot expect new features, or even the continued existance of a usable Mumble app for Android.

Mumla

Mumla is a fork and continuation of Plumble, a robust GPLv3 Mumble client for Android originally written by Andrew Comminos. It uses the the Humla protocol implementation (forked from Comminos's Jumble).

Mumla should run on Android 5.0 (Lollipop, "L", SDK/API 21) and later.

Mumla is available on F-Droid.

There is a small landing page.

FAQs -- Frequently Asked Questions

Action that my user has permission for does not show up in overflow menu

Question: The Mumble server I use has an ACL that should give my user (or a group it's in) permission to carry out a specific action (like "Move"). Why doesn't Mumla show this action in the overflow menu (three dots) for a channel or user?

Answer: Try to disconnect and then reconnect to the server. The decision to show a menu item depending on whether the user has the required permission is done upon connecting, when the UI is set up. It is not updated on the fly if permissions change while connected.

Translations

If you want to help out translating Mumla, the project is on Weblate -- thanks for gratis hosting of our libre project!

Repository submodules

Note that this Mumla git repository has submodule(s). You either need to clone it using git clone --recursive, or you need to get the submodule(s) in place after cloning:

git submodule update --init --recursive

Building on GNU/Linux

Building is verified to work using JDK 21. So you typically want to set and export the JAVA_HOME environment variable like export JAVA_HOME=/usr/lib/jvm/java-21-openjdk.

The Android SDK need to be specified as usual, for example by setting ANDROID_SDK_ROOT, or writing it to local.properties as `echo

local.properties sdk.dir=/home/user/Android/Sdk`

TODO: humla-spongycastle should be built as a sub-project of Humla's Gradle, but currently isn't.

git submodule update --init --recursive

pushd libraries/humla/libs/humla-spongycastle
../../gradlew jar
popd

./gradlew assembleDebug

If you get an error running out of Java heap space, try raising the -Xmx in ./gradle.properties.

Notes on NDK

The NDK is the toolchain used for building the native code (C/C++) of Humla. We specify the version needed using ndkVersion in libraries/humla/build.gradle.

We currently use Android Gradle Plugin (AGP) version 8.x, which should come bundled with NDK 25.1.8937393 that we currently use. It is typically installed in a directory in ~/Android/Sdk/ndk/. Using newer NDK might give build errors. See also: https://developer.android.com/studio/projects/install-ndk

If Android Studio does not automatically install the mentioned version of the NDK in the mentioned directory, then you may be able to get it installed by using the SDK Manager:

  • Click SDK Tools tab.
  • Check "Show Package Details"
  • In the list view, expand "NDK (Side by side)"
  • Check 25.1.8937393
  • Click OK

Container image

I'm also maintaining a container image that is used to build Mumla in .gitlab-ci.yml. Source at https://gitlab.com/quite/android-sdk-ndk

License

Mumla's LICENSE is GNU GPL v3.