Raspberry Pi4 OMV5 and FlexTV

  • Hey guys,



    I am trying to set my local music library to play through Google Assistant voice commands, I am sure some of you already know what I am talking about. google assistant looks into music services to play your music like Google Music, Spotify of others, and of course, you need a paid subscription to get them to work properly instead of playing some random radio similar to the genre of your liking. Well, I already have my music library that I have built through years, digitising vinyl and cassette and riping cds.


    I am sure we are a few people sharing the same interest, we would like to ask google assistant to play from our NAS built on OMV5. Well, I have read about FlexTV and it looks that it does what I need so decided to give it a try.


    I will explain my setup, Raspberry pi4 4gbram, running Raspberry pi OS lite with OMV5. Everything is set following the manual, installed Plex, Sonarr, Radarr and Headphones and a few other containers in Docker.


    I install FlexTV taking this image: https://hub.docker.com/r/digitalhigh/flextv

    I writed this stack using the previous image




    I need to change a couple of things like paths, TZ and ports because port 80 is already in use and the image seems to deploy well but even if portainer says it is running, log says:


    Code
    standard_init_linux.go:211: exec user process caused "exec format error"


    I am fairly new with containers and linux, but my spider sense tells me I may be pulling the wrong image.


    It would be great if someone could take a look into this :D


    Thanks for your help!

  • Thanks for your answer TechnoDadLife,


    I tried that and I am getting the following error from Portainer, top right red pop-up window:


    Code
    Failure
    Error response from daemon:
    manifest for digitalhigh/flextv:armhf not found:manifest unknown: manifest unknown


    So what I think is happening is there is just one Tag available for AMD arch and it is called "latest", even so the developer says it supports ARM I do not think the images are there.


    Thanks for your help TechnoDadLife, your videos help users like me everyday. :D

  • I tried that and I am getting the following error from Portainer

    That's because there is no 'tag' for armhf according to the github page the image supports arm, therefore a 'tag' is not necessary.


    This is your problem;

    standard_init_linux.go:211: exec user process caused "exec format error"


    why? because OMV does not have a PGID 1000, and do you have a user that has PUID 1000


    Create a user for docker deployment, you do that in the omv's webui, that user is added to the user group, once done ssh into omv and enter id <username> this will return the UID and GID for that user, then use that in the stack.


    BTW why are you adding plex: and creating a bridge network? there is no network specified on the docker or github page so one would assume this is using host.

  • Hi geaves, Thank you for joining to the conversation.



    why? because OMV does not have a PGID 1000, and do you have a user that has PUID 1000

    I am aware of that, and I will explain. Pi user in Raspberry pi OS exist in OMV, so in the omv´s webui you can see that user and it has PUID and PGID . I just rechecked via ssh and unless I am in the wrong I think it has 1000 for both.


    Code
    pi@raspberrypi4TB:~ $ id pi
    uid=1000(pi) gid=1000(pi) groups=1000(pi),4(adm),20(dialout),24(cdrom),27(sudo),29(audio),44(video),46(plugdev),60(games),100(users),105(input),109(netdev),111(ssh),999(spi),998(i2c),997(gpio)
  • Actually, we were both right. This image doesn't support arm.


    But the docker page here : https://hub.docker.com/r/digitalhigh/flextv

    Says it does, but if you then look under the tags on the docker page there is only a x86 tag.


    The following image is supposed to support armhf, but if you look at the image that you download, it is the same one as above. I have never seen this before, so it is very confusing. My guess is he just copied the directions from the above docker then pasted them in his own docker page.

    https://hub.docker.com/r/theomajigga/flextv_pi


    Corrected, it looks like it should be like this:


    Code
    docker create \
    --name=FlexTV \
    -e PUID=1000 \
    -e PGID=100 \
    -e TZ=Europe/Madrid \
    -p 6060:80 \
    -v /srv/dev-disk-by-label-4TB/appdata/config/flextv:/config \
    --restart unless-stopped \
    theomajigga/flextv_pi:armhf

    You can paste the above into a terminal. Will not work in stacks on portainer. If you want to use stacks, you will have to translate it.


    And as Geaves said, don't forget to use your uid and pid. Create a user that has docker in its permissions. Using pi on a raspberry pi is a lot like using root on a regular server from what I understand, so not very good from a security perspective.

  • Following your advice I created a new user and from now on I will be installing containers with it.


    Hey TechnoDadLife, nice to see you again here.

    I tried both images and I still get the same error in the logs. What I understand theomajigga/flextv_pi is a copy of digitalhigh´s image, I can see same Overview and same tags, the name is different adding _pi at the end but still is an unsupported image for the Raspberry.


    Looks like ARM images have dissapeared, I will keep trying.


    Thanks for your help and I will keep looking for a working images.

  • As a reference I will leave the Stack I am using after all the changes.



    Ok, so it looks like digitalhigh the person working on FlexTV it has been away from forums since April. Due the actual situation I hope he is ok and wish you all a healthy autumn.


    In the Plex forums I found the last post wich is a new path to walk.


    Code
    bogus83
    Aug 13
    I believe it’s exposed for all users. I found this which may be useful: https://github.com/plexinc/plex-media-player/wiki/Remote-control-API
    In case anyone is open to an alternative solution, I’ve been messing around with this for the past few days: https://github.com/maykar/plex_assistant
    It’s an integration (plugin) for Home Assistant, which allows you to control Plex via Service Calls. The developer originally intended for it to be used for voice commands with Google Home/Assistant using IFTTT or DiagFlow, but I’ve found that you can use Tasker and Autovoice instead, which has the benefit of keeping all of the processing local (nothing goes out to “the cloud” and then comes back into your internal network).
    Fair warning: it’s a pain in the rear to set it all up. But it does replicate the functionality of Flex TV pretty well.
  • The github repo has all the files neccessary to build an ARM-based image. I would suggest you just build it yourself!

    1. As root type cd ~ to change to your root home dir
    2. Clone the git repo git clone https://github.com/d8ahazard/FlexTV-docker.git. If git is not installed apt-get install git
    3. Enter the pulled repo cd FlexTV-docker
    4. Build the image docker build -f Dockerfile.armhf -t digitalhigh/flextv .. This builds the image with the name digitalhigh/flextv. Its important not to miss the . at the end of the command.
    5. When build is done start the docker container with the stack

    6. Delete the git repo rm -r ~/FlexTV-docker

    7. Open webinterface at yourip:6060

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!