#Updated QNAP NAS guide

1 messages · Page 1 of 1 (latest)

past oar
#

Hello. The PMM QNAP NAS install guide here: https://metamanager.wiki/en/latest/home/guides/qnap.html is outdated as QNAP has redesigned Container Station, making the steps in this guide helpful but confusing. I've written a new guide using the latest version of Container Station and published it out on my personal blog. https://www.aftersixcomputers.com/plex-meta-manager-working-code/ - Any chance you want to link to it? Want me to send it to you in a different format so you can update your page? Maybe dump this info elsewhere on the Discord to let people know?

A few weeks back I was on Reddit and I came across a post about automating several...

solar pewterBOT
#

Welcome @past oar!

Someone from <@&938443185347244033> will assist when they're available.

Including the meta.log from the beginning is a huge help, type !logs for more information.

#

You can press the "Close Post" button above or type /close at any time to close this post.

slender storm
#

Well…there is quite a lot in your blog that needs adjustment as you pointed out. Some is also incorrect. The whole dictionary part is wrong as it is not called dictionary.

#

That being said, @neat tinsel , I think I have some suggestions to improve our wiki.

#

The suggestion is that depending on which install walk through, at some point some “end” while others take you through setting up a config file and test library.

#

So the idea is to split the walk through in two parts. Install and Setting up Test Library

#

And essentially, the installs are all different because of the platforms out there… however the Setting Up test library portion should be the same…

#

@past oar Steps 2 and 3 are alluding to how to get latest, develop, or nightly. The image shows the version of latest… is that clickable so you can specify the version? If not, in the other image you state that you should get the image… just add :latest or :develop or :nightly and that’s how you can specify the version to pull.

#

This tip is literally something that happened in the last 7 days. I would reword that paragraph as it makes it sound like we are not aware or not actively trying to find solutions.

#

Btw, are you an are that we have 3 wikis? Nightly, Develop, Latest?

#

And that the change of flix will arrive in nightly wiki before it is added in all other wikis? This is normal and expected.

#

It would also be fixed in the nightly release before it goes to the other branches. This is also normal and expected

#

Tip 3 needs a full rewrite.

neat tinsel
slender storm
#

Aren’t most of the methods at the end of the day just configuring the config.yml?

#

So that is pretty common?

#

Today, we have several platforms

neat tinsel
#

A lot of the walkthrough is “make this change then run the script to see what it does”

slender storm
#

Right and most of those requires that you run it as you stated so since most of those platforms is essentially docker underneath it, an interactive docker session is what needs to be opened… then run the commands?

neat tinsel
#

Right, so documenting how to do that on every platform.

slender storm
#

How you get to the interactive docker session would need to be “part of the base install”

#

For example, in Unraid, click on app and select console

#

QNAP would be something else

#

And so on.

#

Make that part of the platform steps… after that… the commands to run are generally python plex_meta_manager.py -r after using an editor to update the config.yml file

neat tinsel
#

Sure, all doable, just more changeponts. Editing tool suggestions and commands all have to change or go away, as well.

#

Since you can’t uses nano in the container.

slender storm
#

For that matter, I could not get vi or nano to run in the container... is there an editor in there>?

#

or maybe I need to call it explicitly?

#

full path?

neat tinsel
#

No, no editor in the container

slender storm
#

so in that case, the interactive docker session is really to "run" the commands.. the editor is outside and could be based on !editors

#

and again... teaching people how to use an editor would be outside of hte scope of the walkthrough IMO

neat tinsel
#

Agreed, but the point of them is “do these specific things and these specific results will happen”. The scope is intentionally limited due to that.

#

That goal could certainly change, but it would be a change from something that will work to something that might work.

slender storm
#

Hmmmm.... I am thinking that depending on the walkthrough you pick today, the end experience is NOT the same. My thoughts were to somehow modularise it so that at the end of the day, the end experience is the same. Maybe this is not an achievable goal... I was under the impression that it could be.

neat tinsel
#

I’m referring specifically to the two I wrote.

slender storm
#

Always with the intention that something WILL work

#

Oh.. i see

neat tinsel
#

Those are all copy-paste commands for the most part, including opening the file for editing.

#

Those editing commands can no longer be copy-paste if they have to target opening a config file in some arbitrary location after the user has mounted a folder from their NAS on their Windows machine.

slender storm
#

i havent done an install of pmm in over 2 years... so I am likely oversimplifying things... can you tell me which two walkthroughs you wrote so that I can read them?

slender storm
#

i see... you have some stop points in the docker walk-through

#

and you even reference nano and other editors later on

neat tinsel
#

It can be achieved, but the existing stuff would need to be reworked somewhat to account for the vagaries of mounting the NAS and editing files and running the script...

#

@past oar is the version selection behind this "advanced" button?

#

Commands and there is EntryPoint. The PMM Wiki says you can edit both or neither

Can you point me to this so I can fix it? I can't find any reference to editing the "command", which I can't think of a reason to do.

#

The PMM Wiki suggests you might wish to edit Environment Variables, I’m not sure why you would, but if you do need to change them you can reference PMM’s wiki.

They are an alternative to command line flags, as shown on that page you link to. They allow customizing behavior without changing the command line, and is more typical in docker usage.

#

Last, is there a "version" to this container station? Does every QNAP owner see this now, or only some? If the wiki changes to match this article, does it just change the group of QNAP owners who are potentially confused? Is there any way to access an online demo of this UI?

slender storm
#

So.. again... thinking out loud:
Step 1: Setup Test Library within Plex - (Highly recommended but a skippable step)
Step 2: Install PMM (local, Docker, QNAP, Unraid, Synology, Kubernetes) - must be done
Step 3: If you completed Step 1, continue with the config edits (https://metamanager.wiki/en/latest/home/guides/docker.html#setting-up-the-initial-config-file). If not, good luck and point people to the general config.yml page for the defaults (https://metamanager.wiki/en/latest/config/configuration.html)

Conceptually.. without digging deep into the details of what was already written and the nuances of the editor commands whether its linux, mac, or windows, the end result looks like it would be almost the same all the time and working as it should?

#

ANd since we have curl in the image, we could again, have people interactively log into the docker or the other platforms to curl the config.yml template file

#

Local would be as you stated in the current docs... go to url and copy and paste into the config folder.

past oar
#

Happy to edit the blog to correct the errors.

past oar
past oar
neat tinsel
past oar
# neat tinsel > Commands and there is EntryPoint. The PMM Wiki says you can edit both or neith...

Step 4 of the QNAP Wiki page https://metamanager.wiki/en/latest/home/guides/qnap.html the sentence reads "Command line arguments can be entered in the “Entrypoint” field after /tini -s python3 plex_meta_manager.py -- IMPORTANT: DO NOT REMOVE ANY ELEMENT OF THAT COMMAND." This may be technically true but it's confusing and in QNAP since the GUI separates out an entrypoint line and a command line, the current page is ambigious at best.

past oar
neat tinsel
#

That just refers to the "entrypoint" field. Nothing there even mentions the "command" field, but more words can be added.

past oar
#

I'm sharing that it's ambigious. The page is described as a "quick" guide and that might be helpful to more advanced people but for some of us we need more.

#

I updated the blog re-working the Tip 2 and 3. I think I should probably add an additional blurb about there being multiple Wiki's and multiple places to reference to understand current state vs development vs inflight and basically "when in doubt ask support"

neat tinsel
past oar
#

Thank you for the feedback, I've updated the blog with clarity around the image pull process, I've re-written Tip 3 and I tweaked Tip 2.

neat tinsel
#

Any thoughts on the version thing? It's always an issue when documenting things we don't control.

slender storm
#

@past oar This:

FlixPatrol can be called via PMM and could be used to build some dynamic collections in Plex based on things like “which movies on Disney+ are trending this week.” PMM’s Wiki offers a page on how to do some of this stuff as seen here ; however within the last week FlixPatrol has moved many of their API’s behind a paywall. To use many of the API’s now requires a license for “FlixPatrol Premium.” More details can be found directly from FlixPatrol’s website here. Many of the features referenced in the PMM page no longer work but due to how recent this change is the Wiki has not been updated to reflect these changes. The PMM team is aware of the FlixPatrol changes and they are investigating if there are possible workarounds that could be implemented in future updates to PMM to resolve these problems but for now FlixPatrol should be avoided unless you pay for a license.```

Is not accurate. Even if you pay, pmm will not work with flixpatrol.
#

anything with the words FlixPatrol in the wiki will no longer work. none of it.

#

We need to rip ALL of this out likely.... which is not a small task...

#

and the Dev will likely want to rip out all that code from pmm itself as well... or at least archive the related modules assuming that there is a module called Flixpatrol that contains all of what is found in the wiki (likely multiple python files would need adjusting as well)

graceful wyvern
#

Might be good for Soh to yank out flixpatrol in nightly and push that to develop and master. Might be another quick release

slender storm
slender storm
neat tinsel
#

@past oar
Changes to the QNP page for improved clarity:

neat tinsel
#

For example to run the tests to validate your config.yml you need the --run-tests command

Also, this isn't what --run-tests does.

neat tinsel
#

@past oar Do you mind if I use these images in the wiki?

past oar
past oar
# neat tinsel > For example to run the tests to validate your config.yml you need the --run-te...

Is the problem my use of the word "validate" vs using the word "debug" Referencing https://metamanager.wiki/en/latest/home/environmental.html#run-tests if the end goal is to understand if the config.yml works as expected what attributes would be recommended? It seemed to me that PMM_TESTS was the correct test to run to achieve this because doing so resulted in a meta.log that informed me about all kinds of errors in the config.yml.

graceful wyvern
neat tinsel
# past oar Is the problem my use of the word "validate" vs using the word "debug" Referenci...

--run-tests will run the collections that you have configured as test: true. That's all that flag means.

The first thing PMM does on startup is parse the config file, and if there are errors in it those errors will be reported. That happens on every run, though. --run-tests doesn't turn that on. It happens whether or not --run-tests is enabled.

So the statement that that flag is required in any way to examine the config file is inaccurate.

slender storm
#

any run of PMM will tell you the issues right away

past oar
#

thanks for the clarification. I had removed that whole --run-tests section from the blog anyway....

slender storm
#
PMM includes a set of default metadata files and overlay files as part of the installation. Both are referenced in the config.yml using the -pmm: name. For example:

-pmm: actor file is a metadata_path
-pmm: ribbon is a overlay_path.

It may be obvious to some, but you can’t put overlay_path files in metadata_path configurations. I was mixing and matching these things all over the place because I wasn’t understanding this concept. So spend some time reading and fully understanding the PMM page on Path Types located here. It will save you a lot of headache.```
#

I think this needs work

#

I think you are referring to the pmm yaml schema

#

which dictates what is allowed in each section

#

generally speaking, there are three major parts to the config file

#

1 - metadata_path - For Collections
2 - overlay_path - To apply overlays
3 - Operations - which can be a separate section or part of 1 or 2

#

If you try to use something that was created for collections and put it under the overlay_section, it won't work.

#

So for example.. pmm: actor as an overlay makes no sense

#

the wiki for each pmm: <value> explicitly explains how to use that default

#

under Requirements and Recommendations section it says that this is valid collection for TV Shows and Movies

#

further down it explains how to use it in the config.yml file and you see that its placed in the metadata_path

#

says its for overlays

#

for Movie and Show

#

config section again shows you how and where to use it

past oar
#

I've re-writtend Tip 3.

slender storm
# past oar I've re-writtend Tip 3.

You will find the - pmm: Name in both the metadata_path and the overlay_path sections but they are NOT interchangeable. For example the - pmm: actor is used under the metadata_path because it’s a collection, not an overlay. The - pmm: ribbon is used in the overlay_path section because it’s an overlay not a collection.

The best way to avoid this silly error is to lookup the specific - pmm: Name on the PMM Wiki and it will tell you if it’s a Collection or an Overlay so you’ll know where it goes in the config.yml.

#

So… while better, I think there is one or two words that would need some changing

#

There are some cases where a PMM: value is the same in both.

#

pmm: studio is an example of that.

#

Maybe adding the word ALWAYS:

You will find the - pmm: Name in both the metadata_path and the overlay_path sections but they are NOT ALWAYS interchangeable. For example the - pmm: actor is used under the metadata_path because it’s a collection, not an overlay. The - pmm: ribbon is used in the overlay_path section because it’s an overlay not a collection.

The best way to avoid this silly error is to lookup the specific - pmm: Name on the PMM Wiki and it will tell you if it’s a Collection or an Overlay so you’ll know where it goes in the config.yml.

past oar
#

corrected.

neat tinsel
#
 - pmm: whatever

is really nothing more than an alias for:

 - file: internal/path/to/whatever.yml
neat tinsel
slender storm
#

Looks good! Hoping it meets the needs of QNAP users