1202 Commits

Author SHA1 Message Date
Sybren A. Stüvel
59cb21e3b6 Makefile: add tools targets to download FFmpeg
Four Makefile targets have been added:
- `tools`, which evokes the other three
- `tools-linux`, `tools-darwin`, `tools-windows`, download FFmpeg and put
  the `ffmpeg` executables into `./tools/ffmpeg-{OS}-{ARCH}`.

Downloaded tarball/ZIP files are stored in `tools/download`, and won't be
re-downloaded if they already exist.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
0e6d61dd84 Remove the {ffmpeg} variable
Remove the `{ffmpeg}` variable from the default configuration, and its use
from the job compiler scripts. Now that the Worker can find its bundled
FFmpeg, it's no longer needed to configure its location on the Manager.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
09946c0894 Worker: use bundled FFmpeg if available
Worker will now try one of the following paths, relative to the flamenco-worker
executable, in order to find FFmpeg. If they cannot be found, `$PATH` is
searched for FFmpeg.

- `tools/ffmpeg-$GOOS-$GOARCH`
- `tools/ffmpeg-$GOOS`
- `tools/ffmpeg`

On Windows these paths will have a `.exe` suffix appended. `$GOOS` is the
operating system, like "linux", "darwin", "windows", etc. `$GOARCH` is the
architecture, like "amd64", "386", etc.
2022-07-22 16:37:14 +02:00
Sybren A. Stüvel
a5940a24f0 Worker: load flamenco-worker.yaml from current directory
By accident I made the worker load `flamenco-worker.yaml` from the "local
files" directory (~/.local/share/flamenco on Linux) instead of the current
directory. This was incorrect, as that file is meant to contain
configuration that's shared between workers.
2022-07-22 16:37:14 +02:00
Pablo Vazquez
284855f18f Cleanup: Indentation 2022-07-22 15:41:37 +02:00
Pablo Vazquez
71f8791e4a Last Rendered: Fix overflow of tall images in global last-rendered
Fixes T99458
2022-07-22 15:41:22 +02:00
Francesco Siddi
18a3703bd1 Setup Assistant: Update architecture.png 2022-07-22 14:57:12 +02:00
Pablo Vazquez
53598c3ee0 Manager: Rephrase wording on report for successfully writing to Shared Storage
* Replace "OK!" with "successfully"
  Remove exclamation mark since there is no need to call for attention.
  Use "successfully" as it is more descriptive in this case than OK,
  which can have other meanings.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
cac3b35c9d Setup Assistant: Tweaks to Review step
* Rename "Blender" to "Blender Command"
* Style adjustments to improve readability
2022-07-22 14:57:12 +02:00
Pablo Vazquez
047a2e5953 Setup Assistant: Layout, style and wording adjustments
* Try to be more descriptive by mentioning "executable", not just Path.
* Rename field placeholder "Blender Path" to "Path to Blender executable".
* Try to shorten certain lines while maintaining clarity.
* Use colons when appropriate.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
4c832dfb4c Setup Assistant: Fix field with path to Blender executable showing twice
Solution provided by Francesco.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
8d5ce11351 Setup Assistant: Tweak wording and add links to Shared Storage step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
cc22c1010f Setup Assistant: Style and layout tweaks to Welcome step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
341f874ec2 Setup Assistant: Style progress for current + done step
As well as color when a step is already done but we are at a previous step.

First step is always marked as done and colored.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
860017fb42 Setup Assistant: Initial styling to Blender step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
40b0a04af1 Setup Assistant: style invalid input for Blender executable 2022-07-22 14:57:12 +02:00
Pablo Vazquez
51cd4dbdf6 Setup Assistant: Style adjustment to h1 title 2022-07-22 14:57:12 +02:00
Pablo Vazquez
70fdaa78f1 Setup Assistant: Move progress indicator outside of step 2022-07-22 14:57:12 +02:00
Pablo Vazquez
c039a117fd Setup Assistant: Style adjustments
Style current and done step indicators slightly different.
Also on hover scale the indicator a bit, on non-disabled items.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
e11c73c798 Setup Assistant: Cleanup rename CSS variable
From --wiz-progress- to --setup-progres-
2022-07-22 14:57:12 +02:00
Pablo Vazquez
2a12e2d693 Setup Assistant: Simplify logic to calculate progress-bar width
Thanks Francesco for the help.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
87932ae674 Setup Assistant: increase font-size
To help readability.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
593070f3f1 UI: Use app accent color for built-in widgets 2022-07-22 14:57:12 +02:00
Pablo Vazquez
be0afe1aaf Workers: Adjust color of asleep status
It was hard to read.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
e023ea281b Setup Assistant: Do not show empty <p> element when input is valid 2022-07-22 14:57:12 +02:00
Pablo Vazquez
637cd81f82 Cleanup: Use general purpose variables instead of task statuses 2022-07-22 14:57:12 +02:00
Pablo Vazquez
7510f75ad4 Setup Assistant: Remove icons from check messages
Looks inconsistent across platforms, the text and color should be enough.
2022-07-22 14:57:12 +02:00
Pablo Vazquez
5709d4b1ed Setup Assistant: Style invalid input type text
Also remove unused 'path-input' class.
2022-07-22 14:57:11 +02:00
Pablo Vazquez
ab75d64609 Cleanup: Rename class
* Rename `.is-first-time-wizard` to `.is-setup-assistant`
2022-07-22 14:57:11 +02:00
Pablo Vazquez
976ed43de5 Cleanup: Move label styling to base.css 2022-07-22 14:57:11 +02:00
Pablo Vazquez
3c3ee45eb3 Cleanup CSS: re-order classes 2022-07-22 14:57:11 +02:00
Pablo Vazquez
61513e3c35 Cleanup: Indentation and spacing 2022-07-22 14:57:11 +02:00
Pablo Vazquez
eff5b21ecd Setup Assistant: Color progress bar
Progress bar element that resizes width depending on the current progress.

Introduces the `totalSetupSteps` property to be able to calculate its width
without using magic numbers.
2022-07-22 14:57:11 +02:00
Pablo Vazquez
038eb678e8 Setup Assistant: Use larger buttons for back/next 2022-07-22 14:57:11 +02:00
Francesco Siddi
78af4fae61 Setup Screen: Address feedback on UX 2022-07-22 14:57:11 +02:00
Pablo Vazquez
b74c8558cf UI: Style text inputs 2022-07-22 14:57:11 +02:00
Francesco Siddi
08f52993ad Setup Screen: Overall UI/UX tweaks
- Added initial description and illustration
- Swap "Check" button for fields with a debounced @input event
- Turn Blender's list into a radio selector
- Tweak wording when paths are not found
- Add microtip library for tooltips
- Make navigation steps clickable, according to the state
2022-07-22 14:57:11 +02:00
Pablo Vazquez
2741f900b9 Setup Screen: Style tweak to current and done steps
Based on idea by Francesco.
2022-07-22 14:57:11 +02:00
Pablo Vazquez
9d7fe1e479 Setup Screen: align btn-bar to the right when only containing one button 2022-07-22 14:57:11 +02:00
Pablo Vazquez
35abc3e02c Setup Screen: Style in-progress text
* Rename: "... finding Blenders ..." to "Looking for Blender installs..."
* Rename: "... checking ..." to "Checking..."
2022-07-22 14:57:11 +02:00
Francesco Siddi
8b02085c5b Setup Screen: Use StepsWrapper
Similar to TabsWrapper, with Previous/Next navigation capabilities.
2022-07-22 14:57:11 +02:00
Pablo Vazquez
a075a36911 Setup Screen: Expose all sections
For now, until proper next/back is introduced.
2022-07-22 14:57:11 +02:00
Pablo Vazquez
db39ca0d21 Setup Screen: Initial styling and layout adjustments 2022-07-22 14:57:11 +02:00
Pablo Vazquez
3479db5593 UI: Introduce btn-primary style
Use accent color (regular buttons use gray).
2022-07-22 14:57:11 +02:00
Pablo Vazquez
8d75da524d UI: Style <button> elements same as .btn class 2022-07-22 14:57:11 +02:00
Sybren A. Stüvel
11a352968a Fix T99434: Two-way Variables
Two-way variable implementation in the job submission end-point. Where
Flamenco v2 did the variable replacement in the add-on, this has now
been moved to the Manager itself. The only thing the add-on needs to
pass is its platform, so that the right values can be recognised.

This also implements two-way replacement when tasks are handed out, such
that the `{jobs}` value gets replaced to a value suitable for the
Worker's platform as well.
2022-07-22 11:58:35 +02:00
Sybren A. Stüvel
98555db1f6 OAPI: regenerate code 2022-07-22 11:58:13 +02:00
Sybren A. Stüvel
4c1a21f4a0 OAPI: when submitting a job, include the submitter's platform
The submitter's platform is used to perform two-way variable
replacement. The variables of that submitter's platform are looked up,
and their values are replaced with the variable names. This only applies
to the job's settings and metadata, and is only performed on prefixes.

For example, if the submitter's platform has a variable
`render = /shared/frames`, a job setting
`output = "/shared/frames/shot123"` will be stored as
`output = "{render}/shot123".

When a Worker gets a task of this job, `{render}` will be expanded to
the value appropriate for their platform, hence the "two-way" name.
2022-07-22 11:53:08 +02:00
Sybren A. Stüvel
585c886bd5 Fix Windows build errors 2022-07-21 20:59:10 +02:00
Sybren A. Stüvel
af0389efc6 Cleanup: correct function name in docstring 2022-07-21 16:29:23 +02:00