2024-01-26, 04:35 AM
(This post was last modified: 2024-01-26, 04:53 AM by Efficient_Good_5784. Edited 7 times in total.)
(2024-01-26, 04:00 AM)jamjellyjam Wrote: I'm not sure why it's appending 320.bif I am curious to what the 320 means.The number is the resolution of the BIF files.
You probably didn't look at the settings for Jellyscrub. Go to your dashboard, then plugins. Click on Jellyscrub (or the 3-dot menu) to open its settings.
You'll see where the number is coming from. You'll be able to change the number too. Make sure to read the text under the options so that you know what the things do.
This is also why you're probably getting confused. You may have missed it on the github page, and you probably didn't look at the settings, but there's a setting (turned on by default) that makes Jellyscrub inject the script automatically to the end of the index.html file. The reason I stated that you should run the container as root is so that the plugin will have the necessary permissions to do so.
If the auto-inject option works, you don't have to manually inject it yourself. You only have to manually edit it in yourself if this option doesn't do it for you.
The reason for this (from my knowledge) is that for those who run Jellyfin in a container, each restart reverts any changes to the jellyfin-web folder. So upon each restart, Jellyscrub needs to have that script appended into the index.html file.
Now to explain what you're doing wrong with the screenshot.
First, the issue with the sudo privileges warning is that the user running the container is not root. If you configure the app to launch with root access, logging into the shell will not show this.
I'll go over how to give it root access a bit later. I wouldn't try mounting anything in here just to keep things simple.
Second, you are in the shell of the app's container. As in, you're in what the container believes to be the whole system. It doesn't have access to the outside Truenas system.
The point of containerization is to cut off access to services from the rest of your system.
Therefore, when you tell it to copy jellyin/ into that path, it doesn't exist under that name.
Basically, the container running Jellyfin is presenting that whole path as just "jellyfin/jf-web" since that is how you mounted it.
So the correct command to copy everything from that folder would be: "cp -r jellyfin/* jellyfin/jf-web/" (There's an issue with this).
Now this is why I stated to remove the previous host mount you did. The blank host mount should be anything but linked to the name "jellyfin/".
You basically don't have the files if that's the case.
I will say that you should probably change the folder name for this mount path. You'll be copying everything in jellyfin/ into jf-web, which doesn't make sense with what we're trying to do.
However, this shouldn't be an issue as long as you mount "/mnt/pool/apps/jellyfin/jf-web" as "/jellyfin" in the container host path volume settings.
Finally, to run a container as the root user, just change the userID and groupID in the container's settings both to 0 (root is 0).
Truecharts and the IX-Systems provided Jellyfin apps force you to specify a user.
If you manually pull the Jellyfin Docker image using the "Manage Docker Images" section of Truenas's App section, you'll be able to launch Jellyfin without needing to specify the user & group which will just run the thing as root.
The section to do this manually is different on the newest Truenas Scale version. You're still on the previous version (Bluefin) from what I can see of your previous screenshots, but the latest version (Cobia) still has this option, but nested within some option boxes. Though I do think that by calling on TrueChart's Jellyfin app, the Jellyfin Docker image should already be installed on your server (I'm assuming it's with the tag "latest").
Also, as the github page for Jellyscrub states, you got it working but it's just not showing on the web-client.
If you try the "Jellyfin Media Player" client, it has built-in support for Jellyscrub. Try installing it and enabling Jellyscrub on it. You'll see a fully working Jellyscrub implementation on that most likely.
The whole issue you're having right now is tied to just the stock web client.