- Open Automator and create a new Service
- Set "Service receives selected" to "image files"
- Add a "Run Shell Script" action to the workflow, remove the default script contents, and paste the
set-wallpaper.sh
script into it - Save as "Set as Wallpaper"
The service should then be available to you when right-clicking image files. Right-clicking an image file (png, jpg, etc) in the Finder and choosing "Set as Wallpaper" will set that image as the Desktop Background image for all open Spaces. No need to quit apps or delete Spaces!
You can use an app like Services Manager to organize your Finder context menus.
Right now on Mojave, script corrupts desktoppicture.db - for now only fix is to delete this file from ~/Library/Application Support/Dock/