MyMediaSystem (MMS) on Xenial Xerus (16.04-LTS) HowTo

MMS on Ubunut Server 16.04 LTS Since I couldn’t convince my environment to use Kodi or whatever I had to build a new MMS for Xenial Xerus (Ubuntu Server 16.04_x64_LTS). This blog-post describes the installation and setup of an Ubuntu server and the configuration of MMS (MyMediaSystem). There are two possibilities to install MMS:

  • from a .deb file [link] (18MB)
  • do it your own (build it with g++) [link] (47MB)

The howto will also cover an installation and configuration of openbox as a simple windows manager and a few basic configurations of your server (autologin with systemd) and MMS.
The focus was to make MMS use the new ffmpeg version, since the old one is heavily outdated. I’ve even removed the old intern ffmpeg sources to save space. The compiler is: $ gcc version 5.3.1 20160330 (Ubuntu 5.3.1-13ubuntu3). The configure file was fixed quick and dirty for this compiler version. Don’t expect clean code – nowhere! I don’t have much time.
Read the installation howto after the break.

Howto

Install Ubuntu Server

Download and install the Ubuntu Server Xenial Xerus (16.04-LTS).
Select systemtools and ssh. Nothing else is needed. The window manager will be installed later on.

Install and configure Openbox

We need an window manager running an X, so MMS can be launched within. It’s also possible to launch MMS via the X11-xserver-utils command from the text console, but for reasons of convenience I use openbox. It has a very slim footprint and it’s easy to configure.

Install the packages

$ sudo apt update
$ sudo apt upgrade
$ sudo reboot
$ sudo dpkg-reconfigure keyboard-configuration  #not needed, but in case you have to adjust your keyboard settings.
$ sudo apt install openbox lxpanel lxterminal X11-xserver-utils xterm ttf-dejavu

Set up Openbox for Automatic Launch

Create in your home directory the file ~/.xinitrc an populate it with this content:

exec openbox-session &
lxpanel &
xterm -fa "DeJaVu Sans Mono" -fs 9 -fg white -bg black -geometry 80x25+100+100 -exec /usr/local/bin/mms

Create in your home directory the file ~/.bash_profile an populate it with this content:

if [ -z "$DISPLAY" ] && [ $tty == /dev/tty1 ]; then
	startx -- -dpi 120 :0 > /tmp/xinit.log 2>&1
fi

Now you should be able to start Openbox. Just type exit on the console and login again.
You should come up with an Openbox session with an xterm running inside. Closing the running xterm-session will also shutdown X hence Openbox and you will land in the console’s command prompt again.
How you can autologin into Openbox will be described at the very end of this blog.

Install MMS from a .deb Package

Download the debian package

  • Download [link] (18MB)

Perform this in the xterm-windows:

$ sudo dpkg -i mms_20160403-1_amd64.deb

MMS will tell you it can’t be installed, because of failed dependencies. That’s OK. The next line will fix this:

$ sudo apt -f install

Now you’re done with installation. To check, whether the installation went well, launch MMS now:

$ mms -i keyboard

If you see mms starting, you’re fine. If not – check the steps from above.
The basic configuration of MMS will be described at the end of this blog-post.

Compile MMS from Source

Skip this chapter if you’ve installed from the Debian-Package.

Download

  • Download: [link] (47MB)

Install the Build Environment

Install all dev-Packages and und build-tools:

$ sudo apt install g++ autoconf build-essential libimlib2-dev libncurses5-dev libsqlite3-dev libtag1-dev libsdl1.2-dev libinotifytools0-dev libcommoncpp2-dev libboost-dev libboost-date-time-dev python2.7-dev libalsaplayer-dev libcdparanoia-dev libxfixes-dev alsa-base alsaplayer-common alsaplayer-daemon liblircclient-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libtool-bin gettext

Now deflate the source code:

$ tar xfvz mms-1.1.1_xenial-4.4.0-15-generic.tgz

Enter the newly created directory:

$ cd mms-1.1.1_xenial-4.4.0-15-generic

and perform a:

$ ./configure  --sysconfdir=/etc --enable-debug --enable-tv --enable-game --enable-weather --enable-notify-area --enable-clock --enable-python --enable-lirc --enable-clock --enable-alsaplayer --disable-xine-audio --enable-python --disable-epg

The next step will start the compilation. It will take approximately between 10 and 20 minutes, depending on your hardware. If you have an processor with many cores, provide the number of cores to the make -jx command. Where “x” is your CPU cores. This will speed up the compilation enormously.

$ make -j8

You’ll see a bunch of warnings. That’s ok. After compilation you will have to install MMS:

make install

Check if all went well by launching mms:

$ mms -i keyboard

If anything goes wrong. Run the compilation again and check for errors:

$ make clean
$ ./configure ....see above.....
$ make -j8 2>&1 | grep error

Study the output. Not all what shows up as an error is one. The word “error” is also used in the source code many times.
If you identify an error you’ll be likely able to fix the problem. It’s likely a missing dependency.

MMS Configuration

Additional Packages

If you are going to use VDR, I recommend to use an Nvidia Gfx Card. An G210 or G610 would be a good start.

$ apt install vdr vdr-plugin-xineliboutput xineliboutput-sxfe
$ sudo apt install mplayer alsaplayer-daemon alsa-base alsa-utils nvidia-current unclutter graphicsmagick

The MMS Config

The MMS-Config files are in /etc/mms
The most important config file is /etc/mms/Config
You can adjust the resolution up there and many other things.

Start Scripts

ToDo

Openbox Autologin

Perform an:

$ sudo systemctl edit getty@tty1

An editor will show up. If you don’t like nano reconfigure the default editor by #update-alternatives --config editor.
Paste this into the editor:

[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin acme --noclear %I 38400 linux
Type=simple

Enable this new service:

$ sudo systemctl enable getty@tty1.service
$ sudo reboot

Please have in mind, that my user is actually ‘acme’. You have to take your own user. Usually the one you’re logging in.
Attention: Do not do this, if your home directory is encrypted. This won’t work and you could brick your installation!!

One thought on “MyMediaSystem (MMS) on Xenial Xerus (16.04-LTS) HowTo

  1. Hi… wollte gerade eine Antwort auf deinen Post im Forum schreiben, bekomme aber MySQL Fehler beim abschicken!?

    Ich schreibs mal hier zur Sicherheit 🙂

    —–
    Hey yo,

    Das sind mal gute Nachrichten! Ich quäle mich seit zwei Wochen durch Kodi durch, nur um immer wieder festzustellen, dass das Ding für Musik Murks ist

Leave a Reply to Roman Cancel reply

Your email address will not be published. Required fields are marked *