FAQ for when worker cannot find Blender executable #104232

Merged
Sybren A. Stüvel merged 5 commits from michael-2/flamenco:faq_worker_not_finding_blender into main 2023-08-23 15:15:39 +02:00
Showing only changes of commit 20ea130d96 - Show all commits

View File

@ -61,6 +61,32 @@ file][workercfg].
[workercfg]: {{< ref "usage/worker-configuration" >}}
## My Worker cannot find Blender, what do I do?
When installing and starting the Flamenco Worker you may see a warning in the logs that says
the Worker cannot find Blender.
Example Flamenco Worker <=v3.2 log message...
michael-2 marked this conversation as resolved

I think this line can be removed, and the period in the sentence above can be turned into a colon:

... that says the Worker cannot find Blender:

IMO there is no need to specify which version of Flamenco is used. If you do want to be explicit, use something like "Flamenco Worker v3.2 would log:"

I think this line can be removed, and the period in the sentence above can be turned into a colon: > ... that says the Worker cannot find Blender: IMO there is no need to specify which version of Flamenco is used. If you do want to be explicit, use something like "Flamenco Worker v3.2 would log:"
```
WRN Blender could not be found, Flamenco Manager will have to supply a full path
```

Windows, Linux or MacOS

Please use the Oxford comma.

The Flamenco Worker will still show the same WRN message on startup when you use the two-way blender variable. The path specified by the blender variable is sent with the render job is enqueued.

I think this can be reworded for more clarity, something like this:

This path to Blender is then sent to the Worker for each render task. Note that the Worker will still show the warning at startup, as it cannot find Blender by itself; this is fine, because you now have configured the Manager to provide this path.

> Windows, Linux or MacOS Please use the Oxford comma. > The Flamenco Worker will still show the same WRN message on startup when you use the two-way `blender` variable. The path specified by the `blender` variable is sent with the render job is enqueued. I think this can be reworded for more clarity, something like this: This path to Blender is then sent to the Worker for each render task. Note that the Worker will still show the warning at startup, as it cannot find Blender by itself; this is fine, because you now have configured the Manager to provide this path.
There are two ways to resolve this problem:
michael-2 marked this conversation as resolved

This can be written more positively. It's just a warning, not a "problem". Something like "There are two ways to address this" would be better.

This can be written more positively. It's just a warning, not a "problem". Something like "There are two ways to address this" would be better.
1. Blender be installed in [platform dependent paths][blenderpaths] using the Blender installer or
michael-2 marked this conversation as resolved Outdated

The linked documentation describes multiple paths, for example $HOME/.config/blender/3.6/. I don't think it's a good idea to suggest that people start installing Blender in their configuration directory. It will certainly mess up as soon as they upgrade Blender and their config (and thus Blender itself) is copied from the old to the new version.

Furthermore it doesn't resolve this message at all, as $HOME/.config/blender/3.6/ is not a path that the Worker will search for at startup.

Many non-technical users will also not understand "or available in the environment $PATH."

The linked documentation describes multiple paths, for example `$HOME/.config/blender/3.6/`. I don't think it's a good idea to suggest that people start installing Blender in their configuration directory. It will certainly mess up as soon as they upgrade Blender and their config (and thus Blender itself) is copied from the old to the new version. Furthermore it doesn't resolve this message at all, as `$HOME/.config/blender/3.6/` is not a path that the Worker will search for at startup. Many non-technical users will also not understand "or available in the environment $PATH."
available in the environment $PATH.
2. Use a [two-way variable named `blender`][blendervar] for each platform (eg: Windows, Linux or MacOS).
For option (1), Flamenco will attempt to locate Blender by examining the system.
michael-2 marked this conversation as resolved Outdated

Extra per-option text is better put with that option, that'll prevent having to mentally switch between different approaches while reading.

Aside from that, Flamenco Worker will always attempt to locate Blender by examining the system. There is no choice in this; unless we redesign the startup behaviour, but that's not an option for the typical reader of this FAQ entry.

Extra per-option text is better put with that option, that'll prevent having to mentally switch between different approaches while reading. Aside from that, Flamenco Worker will **always** attempt to locate Blender by examining the system. There is no choice in this; unless we redesign the startup behaviour, but that's not an option for the typical reader of this FAQ entry.
In option (2) the `blender` path for the Worker is sent when a Render Job Task is enqueued.
michael-2 marked this conversation as resolved Outdated

Replace "Render Job Task" with just "render job".

Replace "Render Job Task" with just "render job".
The Worker will still show a warning on startup and expect the Flamenco Manager to send the Blender
path to use.
michael-2 marked this conversation as resolved Outdated

For some positive reenforcement, add something like "which is exactly what will happen when you follow the above steps". Otherwise it looks like it's still an unresolved issue.

For some positive reenforcement, add something like "which is exactly what will happen when you follow the above steps". Otherwise it looks like it's still an unresolved issue.
[blendervar]: {{< ref "usage/variables/blender" >}}
[blenderpath]: https://docs.blender.org/manual/en/latest/advanced/blender_directory_layout.html#platform-dependent-paths
## Can I change the paths/names of the rendered files?