Feature request for Mudi 7: POSIX message queues enabled in firmware

I’m not sure if this is the right place for this but I’ll try anyway.

I saw a video recently that talked about how the Slate 7 could run a Plex server and having a little travel router in our car that could host Plex for my kids to all access from their iPads seemed great. Then I saw the Mudi 7 was out which not only had 5g support and a built in battery but also seemed to be more powerful so I bought one of these for this purpose.

Unfortunately, trying to get it set up has resulted in failure and after a lot of hair pulling, it looks like docker is not functional on the Mudi 7 because the GL-E5800 kernel doesn’t have CONFIG_POSIX_MQUEUE enabled. Docker and docker seemed to install fine but when I tried to get portainer to install (or any other docker command), I would get a runc error.

I know docker is experimental/unsupported but due to the success of people using other routers from the same line, I thought I’d be safe. It’s a feature that’s really important and is what I bought it for (the idea is that the router would sit permanently in the car plugged in via USB-C and would just be used while we’re travelling for sharing a 5g signal to my kids iPads and sharing a Plex server for them to watch stuff.

Anyway, if this could be modified to work in a future firmware install, I’d really appreciate it. I’m likely going to have to see if I can find some old laptop or a raspberry pi with a battery pack to see if I can get something hosted that way in the meantime as we have a long drive in a few days. It won’t be as elegant as the one device solution I was hoping for though!

Hi,

We will record your request for improved Docker and container runtime compatibility on Mudi 7 and submit it for further evaluation.

As a possible workaround, we found the following third-party OpenWrt project, which runs Plex Media Server directly on OpenWrt without Docker:

Prerequisites

The project requires an ARMv7 or ARMv8 device, external storage, SquashFS creation and mounting support, and approximately 120 MB of available RAM.
Please make sure that Mudi 7 is connected to the Internet and can resolve domain names normally before starting the installation.
An external USB storage device, such as a USB flash drive or SSD, is required. We recommend using a reliable device with sufficient free space and formatting it as ext4, as FAT32/vfat may not support the Linux filesystem features required by this project.
Formatting a USB partition will erase all files on it, so please back up the storage device first.

Installation impact

It installs the squashfs-tools-mksquashfs package, adds a third-party init service under /etc/init.d, and creates a Plex configuration under /etc/config. Plex will be enabled to start automatically when the router boots.
The compressed Plex application image is stored on the USB drive. When Plex starts, the image is copied to /tmp and mounted from RAM. The project reports approximately 100–120 MB of memory usage. GitHub

Installation steps

The following example assumes that the USB partition is /dev/sda1 and that Mudi 7 automatically mounts it at /tmp/mountd/disk1_part1. Please replace these values if your actual device or mount path is different.

  1. SSH into Mudi 7, check the USB device and mount path:mount | grep -E '^/dev/sd'
    The expected result is similar to: /dev/sda1 on /tmp/mountd/disk1_part1 type ext4

If the USB drive is already formatted as ext4, you can continue to Step 2.
If it needs to be formatted, first back up all files, and then run:

umount /tmp/mountd/disk1_part1
mkfs.ext4 -F -L plex /dev/sda1
  1. Install the required package
    Install the tool required to create the SquashFS application image:
opkg update
opkg install squashfs-tools-mksquashfs
  1. Download the Plex service script.
    The downloaded file is the project’s OpenWrt init service.
curl -fL \
'https://raw.githubusercontent.com/jkool702/openwrt-plexmediaserver/main/etc/init.d/plexmediaserver' \
-o /etc/init.d/plexmediaserver

chmod 755 /etc/init.d/plexmediaserver
  1. Create the Plex directories
    Set the actual USB device and mount path:
PLEX_DEV='/dev/sda1'
PLEX_MNT='/tmp/mountd/disk1_part1'

Create the required directories:

mkdir -p "$PLEX_MNT/.plex/Library/Application"
mkdir -p "$PLEX_MNT/.plex/Library/Application Support/Plex Media Server"
mkdir -p "$PLEX_MNT/media"

The service uses the .plex/Library directory to locate the external storage containing the Plex library.

  1. Create the initial configuration.
cat > /etc/config/plexmediaserver <<EOF
config main
	option plex_drive_dev '$PLEX_DEV'
	option plex_drive_mnt '$PLEX_MNT'
EOF
  1. Enable and start Plex
    During the first startup, the script will download the ARMv8 Plex NAS package, extract it to the external USB storage, create an XZ-compressed SquashFS image, copy the image to /tmp, mount it, and start Plex Media Server. The first installation may take several minutes.
service plexmediaserver enable
service plexmediaserver start

After the installation completes, you can open the following address from a device connected to Mudi 7:

http://LAN IP:32400/web

image

Thank you for your understanding and support.

3 Likes

Hi and thank you for the reply! I ended up finding that same project last night and gave it a try myself and it worked! I had to use the ‘old’ install script and install some of the dependencies they listed but then it just worked. I set it all up and it seems to be working perfectly!

Honestly, it feels kind of magical to have a device that now has hundreds of tv episodes from multiple shows and over hundred films all available for sharing offline and that can also provide an internet connection with two different sim cards and joining different wifi networks all in a device basically the size of a phone. I’m so excited to test it out on our long drive on holiday!!

It’s cool you got Plex working but it would still be better to get docker support. Please glinet!! Mikrotik are marketing their hap be3 media router as having container support and it has 2gb of ram just like the mudi 7. You guys should 100% embrace containers as an added extra that many people would love to use. Also please maybe look at adding 4gb of ram to the mudi 7 successor.

Also Plex guy what are using for storage on your mudi?

I’m using a 2TB Crucial X10 USB SSD for my storage needs. I actually thought it was 2.5” drive sized but it’s actually about half that. On the longest edge, it is about as wide as the Mudi 7. I’ve got a couple of right angle USB-C adapters that I’m using to reduce strain on the ports and I’ll probably double-sided tape it to the Mudi 7.

So far, it seems to be working well. After installing Plex, I had to go to System→Startup in the Advanced Settings to change the plexmediaserver service to Enabled so that it starts up and now it seems to autostart when the device turns on. The real testing will come when we go on our first trip in the car but I’ve tested it with all three of my kids’ iPads viewing stuff on it at once and it seemed to all work fine. I’m only using 1080p media as anything more would be overkill for iPad viewing, so I don’t think the demands are too high.