Tutorial: Install MovieNight on Ubuntu 18.04

MovieNight is a fun project for single instance streaming to your website and watching the stream with your friends. It has a built-in web server and integrated chat. According to the GIT page:

This is a single-instance streaming server with chat. Originally written to replace Rabbit as the platform for watching movies with a group of people online.

Step 1: Install GO, Make and GCC

GNU Make is required for MovieNight, it can be install quickly and easily using this command:

sudo apt-get install make gcc

Next Go is required, GoLang is a programming language designed by Google.

sudo snap install go --classic

Important: Im not positive if this is a Ubuntu unique issue but I will update this article when I get more information after I test it on more platforms. However the PATH’s are not set correctly when you install Go, if you skip this step you will get a “make: goimports: Command not found” error when attempting to make the package. You can prevent this error by editing the ~./bashrc file. Use this command:

nano ~/.bashrc

Once its opened drop down to the bottom of the file and paste this code for Go:

export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go;
export PATH=$PATH:$GOPATH/bin;

Press Control (Ctrl) and press X at the same time to exit, Y to save.

Reload the .bashrc file with this:

source ~/.bashrc

Step 2: Clone the MovieNight repository

Next we need the files for MovieNight, we can get that by getting the files directly from GitHub.

git clone https://github.com/zorchenhimer/MovieNight

Note: If you don’t have Git installed use this command: sudo apt-get install git

Now we can move into our new cloned directory using:

cd MovieNight

Step 3: Make

Now we can go ahead and make the package we just downloaded using this:

make get

This will retrieve and install many things for Go, once this is complete simply use:

make

The make command may take a few minutes depending on several factors.

Step 4: Editing the configuration

The settings file has several options that we can change, view this file with:

nano settings.json

Again, CRTL and the X key to exit, Y to save. The important ones here are StreamKey as well as AdminPassword. Be sure to set these to something long and unique. You can also set the port here if you do not want to use the default one.

Optional: Allow MovieNight in the Firewall (UFW)

If you are using UFW allow MovieNight to work outside of the local environment using:

sudo ufw allow 8089

Step 5: Launching MovieNight

Everything should be ready and we can launch MovieNight using this command:

./MovieNight

Note as of right now the admin password in the settings.json file seem to be ignored and a random one is generated. Notice when you run MovieNight the AdminPassword that appears. I will update this article when it is updated to use the settings variable instead of a generated one.

Step 6: Stream

Streaming to MovieNight is super easy, simply stream to:

rtmp://YourSiteOrIp.com/live

And use the Stream Key that you set in the settings file earlier, it also appears when you run MovieNight.

In OBS for example go to Settings -> Stream -> Service “Custom”

Step 6: Watch!

Whew, the hard parts are done. Now sit back, send the link to your friends and watch!

http://YourSiteOrIp.com:8089/

Optional: Some Commands

Copy the AdminPassword that appears when you launched MovieNight and join the chat and give yourself a nickname.

At the top of the page hover over “Please hover to view options” and click on Auth, when prompted for the password use the AdminPassword you copied. You should now be authenticated as the Administrator.

From the documentation:

== Commands
/color
    change user color
/me
    italic chat message without leading colon.  message is the same color as name.
/count
    display the number of users in chat
/w
/whoami
    debugging command.  prints name, mod, and admin status
/auth
    authenticate to admin

= Mod commands
/playing [title] [link]
    update title and link.  clears title if no arguments
/sv <message>
    server announcement message.  it's red, with a red border, centered in chat.
/kick
    kick user from chat
/unmod
    unmod self only

= Admin commands
/reloademotes
    reload emotes map
/reloadplayer
    reloads the video player of everybody in chat
/unmod <name>
    unmod a user
/mod <name> mod a user

I’ve played around with MovieNight pretty extensively, if you have any issues post them below and I will help you out!

Have a great day!

MovieNight: GitHub

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.