Skip to content
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

WIP: DOCS: Add Userguides to the documentation. #4628

Closed
wants to merge 16 commits into from
82 changes: 5 additions & 77 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,12 @@ Vista may be supported, but we can't guarantee it.
If you don't want to encounter potential issues, you may download Mumble 1.3.x,
the last version to provide support for XP.

The documentation of the project can be found on the [wiki](https://wiki.mumble.info/wiki/Main_Page). The
[FAQ](https://wiki.mumble.info/wiki/FAQ/English) can also be found there.
## Installation & Usage

Take a look at the [Userguides](docs/user-guides/README.md).

Further documentation of the project can be found on the [wiki](https://wiki.mumble.info/wiki/Main_Page). The
[FAQ](https://wiki.mumble.info/wiki/FAQ/English) can also be found there.

## Contributing

Expand All @@ -36,82 +39,7 @@ We always welcome contributions to the project. If you have code that you would

For information on how to build Mumble, checkout [the dedicated documentation](docs/dev/build-instructions/README.md).


## Reporting issues

If you want to report a bug or create a feature-request, you can open a new issue (after you have checked that there is none already) on
[GitHub](https://github.com/mumble-voip/mumble/issues/new/choose).


## Windows

### Running Mumble

After installation, you should have a new Mumble folder in your
Start Menu, from which you can start Mumble.

### Running Murmur

Doubleclick the Murmur icon to start murmur. There will be a small icon on your
taskbar from which you can view the log.

To set the superuser password, run murmur with the parameters `-supw <password>`.


## MacOS

### Running Mumble

To install Mumble, drag the application from the downloaded
disk image into your `/Applications` folder.

### Running Murmur

Murmur is distributed separately from the Mumble client on MacOS.
It is called Static OS X Server and can be downloaded from the main webpage.

Once downloaded it can be run in the same way as on any other Unix-like system.
For more information please see the "Running Murmur" in the Linux/Unix section below.


## Linux/Unix

### Running Mumble

If you have installed Mumble through your distributon's package
repostory, you should be able to find Mumble in your start menu. No
additional steps necessary.

### Running Murmur

Murmur should be run from the command line, so start a shell (command prompt)
and go to wherever you installed Mumble. Run murmur as

```
murmurd [-supw <password>] [-ini <inifile>] [-fg] [v]

-supw Set a new password for the user SuperUser, which is hardcoded to
bypass ACLs. Keep this password safe. Until you set a password,
the SuperUser is disabled. If you use this option, murmur will
set the password in the database and then exit.

-ini Use an inifile other than murmur.ini, use this to run several instances
of murmur from the same directory. Make sure each instance is using
a separate database.

-fg Run in the foreground, logging to standard output.

-v More verbose logging.
```

### OpenGL Overlay

The OpenGL overlay works by intercepting the call to switch buffers, and just
before the buffer switch, we draw our nice GUI.

To load a game with the overlay enabled, start the game like this:
LD_PRELOAD=/path/to/libmumble.so.1.1 gamename

If you have Mumble installed through the binary packages, this can be done by
simply typing:
mumble-overlay gamename
17 changes: 17 additions & 0 deletions docs/user-guides/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Userguides for Mumble

The following Userguides include information on installation, configuration and starting of Mumble and the Mumble Server (murmur).

Choose the specific guide for your operating system:

- [Userguide for Windows](userguide_windows.md)
- [Userguide for Linux/Unix](userguide_linux.md)
- [Userguide for macOS](userguide_macos.md)

**Additional Guides:**

- [Client Configuration Guide](client_config_guide.md)

- [Server Configuration Guide](server_config_guide.md)

- [OpenGL Overlay](overlay_openGL.md): A Mumble overlay for Games and other applications.
12 changes: 12 additions & 0 deletions docs/user-guides/client_config_guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Client Configuration Guide


<!-- Pictures or even Gifs could be added for better presentation-->


<!--## Audio Wizard? -->

<!--## Important Config Options -->

<!-- Topics suggested by Krzmbrzl:
change theme between Lite and Dark mode, echo cancellation, transmission modes (VAD, PTT, continous), shortcuts -->
12 changes: 12 additions & 0 deletions docs/user-guides/overlay_openGL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
### OpenGL Overlay

<!-- Add a description -->

The OpenGL overlay works by intercepting the call to switch buffers, and just before the buffer switch, we draw our nice GUI.

To load a game with the overlay enabled, start the game like this:
LD_PRELOAD=/path/to/libmumble.so.1.1 gamename

If you have Mumble installed through the binary packages, this can be done by
simply typing:
mumble-overlay gamename
90 changes: 90 additions & 0 deletions docs/user-guides/server_config_guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
# Server Configuration Guide

**Note:** For Installation and Starting of the Mumble Server, see the specific [Userguides](README.md) for your Operating System.

The Configuration involves three steps:

1. [Network configuration](#network-configuration)
2. [Main configuration file](#main-configuration-file) (`murmur.ini`)
3. [Administration with Mumble Client](#administration-with-mumble-client)

<!-- In addition there are some other interesting topics:

- Bots (Music Bots)
- Web interfaces (outdated)
- gRPC (remote control) (buggy, not ready)
- WebRTC bridge

-->

## Network Configuration

### Static vs. dynamic IP

Users connect to your server via an IP or a Domainname (e.g. `mumble.example.com`).

To make this work continuously, you either need a static IP (that means: the IP does not change) or in case you have a dynamic IP (it changes every few days), a Dynamic DNS Service (see below). Otherwise you would need to send the new IP to your users, every time the IP changes.

*Tip:*

* If your Mumble Server is running on a computer at your home, you will likely have a dynamic IP, thus you need a Dynamic DNS Service.
* If your Mumble Server is running on a rented server at a Provider, you will in most cases have a static IP (already).

#### Dynamic DNS Service

A Dynamic DNS Service will give you a subdomain (e.g. `mymumbleserver123.dyndns-example.com`) and/or a static IP which your users can use to connect to your server.

In the background the service will route them to your dynamic IP.
A special software running on your computer will tell the service whenever your dynamic IP changes.

For more information and a list of services and software, take a look at the [Arch Wiki - Dynamic DNS](https://wiki.archlinux.org/index.php/Dynamic_DNS) for example.

### Firewall & Ports

In order for your users to be able to connect to your server, you need to allow incoming connections to a specific Port that the Mumble Server uses.

The Standardport is `64738` (recommended).
toby63 marked this conversation as resolved.
Show resolved Hide resolved
You can also change it to every available port by editing the main configuration file (`murmur.ini`; see below).

**Note:** Use a port that is not standardized (widely used by known programs/services), see e.g. [Wikipedia - List of Ports](https://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers).

Allow connections to the Port for both protocols (TCP and UDP).
toby63 marked this conversation as resolved.
Show resolved Hide resolved

Check and adjust your:

- Computer's/Server's Firewall
- (optional) Computer's Antivirus Program(s)
- (for Home-Use) Router's Firewall

<!-- more ports, for specific usecases? -->

## Main configuration file

The main server configuration file is called `murmur.ini` (it can be renamed though).

You should find an example murmur.ini file alongside your installation, but you can also find the most recent **example file (with explanations) on [Github](https://github.com/mumble-voip/mumble/blob/master/scripts/murmur.ini)**.

Below is a list of the most important options:

`welcometext="Welcome on our Server!"` - the text will be send to every new user via chatmessage; if it's empty, no message will be send

`port=64738` - sets the port (see above); `64738` is the standard port

`serverpassword=` - sets the Serverpassword; if it's empty, users can connect without a password.

`bandwidth=72000` - sets the maximum bandwidth per user (in bits per second); setting it higher can increase the audio quality

`users=100` - sets the maximum number of online users

`registerName=` - sets the Servername and the name of the main channel

For all available options and explanations, take a look at [Mumble Wiki - Murmur.ini](https://wiki.mumble.info/wiki/Murmur.ini).

## Administration with Mumble Client

- Use the Mumble client GUI for administration

<!-- 1. Promote a normal User to be admin -->

<!-- Channel creation, General Configuration, ACL and Groups -->

123 changes: 123 additions & 0 deletions docs/user-guides/userguide_linux.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
# Userguide for Linux/Unix

## Contents

- [Mumble Client](#mumble-client)
- [Mumble Server](#mumble-server-murmur)

## Mumble (Client)

### Installation

The best option to install Mumble is through your distribution's repository.
Just search for `Mumble` in your package manager and install it.

If Mumble is not available or outdated in your distribution's repos, you can take a look at the Linux Section on our [website](https://www.mumble.info/downloads/#linux).
There you will find multiple alternatives, including official Third-Party-Repos, Snap- and Flatpak-Packages.

More information can be found in our [wiki](https://wiki.mumble.info/wiki/Installing_Mumble#Linux).

### Start

If you have installed Mumble through your distribution's repository, you should be able to find Mumble in your start menu.

Alternatively you can start it via a terminal.
The usual command is:

```
mumble
```

Otherwise take a look at the package documentation of your distribution or the documentation for Flatpaks, Snapcraft etc.

**Note:** On first start of Mumble, a short Settings wizard (for Audio settings, certificate generation etc.) will start automatically.

### Configuration

<!-- Short introduction or just link to the Client Config Guide? -->
Take a look at the [Client Configuration Guide](client_config_guide.md).

## Mumble Server (Murmur)

### Installation

The best option to install the Mumble Server (Murmur) is through your distribution's repository.
Just search for `Mumble Server` or `Murmur` in your package manager and install it.

Alternatively you can also find a **Static Linux Server** package on our [website](https://www.mumble.info/downloads/#manual-download).

### Configuration

Take a look at the [Server Configuration Guide](server_config_guide.md).

### Start

The Mumble Server is either started [automatically](#auto-start) or [manually](#manual-start).

#### Auto Start

On many distributions the Mumble Server is started automatically on system boot.

You can also disable this and start the Server manually.
Most distributions use `systemd` now, so search in the systemd documentation on how to disable the Mumble Server service (e.g. `murmur.service`).

Next Steps:

1. Set the SuperUser (Server Admin) password:

```
murmurd -ini /etc/murmur.ini -supw PASSWORD
```

2. Restart the Server:
If your system uses `systemd`, use e.g.:

```
systemctl restart murmur.service
```

3. Login & administrate the Server:
See [Server Configuration Guide](server_config_guide.md#administration-with-mumble-client) for details.

#### Manual Start

The Mumble Server should be run from a terminal.
(*If the `Static Linux Server` is installed or the binary is not linked, you have to change the directory to wherever the Mumble Server is installed, first.*)

<!-- Will the binary name change in 1.4? -->
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We currently don't have plans for that.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I remembered a discussion about the naming and now it is not planned anymore?
#4046

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It never was planned to rename the executable (afaik). This discussion was more referring to how the server should be referred to (in package archives).
@davidebeatrici did I misunderstand this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update: Binary names will probably be changed, see #4046.


<!-- mention different binary name of static linux server? -->

1. Set the SuperUser (Server Admin) password:

```
murmurd -supw <password>
```

2. Start the server:

*Note:* Flags are optional (see below).
toby63 marked this conversation as resolved.
Show resolved Hide resolved
The standard configuration file used, is `murmur.ini` in the same directory.

```
murmurd
```


**Flags:**

```
murmurd [-supw <password>] [-ini <inifile>] [-fg] [v]

-supw Set a new password for the SuperUser (Server Admin). Keep this password safe. Mumble Server will stop after this command.

-ini Use a specific inifile. You can also use this to run several instances
of murmur from the same directory. Make sure each instance is using a separate database.

-fg Run in the foreground, logging to standard output.

-v More verbose logging.
```

3. Login & administrate the Server:
See [Server Configuration Guide](server_config_guide.md#administration-with-mumble-client) for details.
Loading