Pyblish integration for The Foundry NukeAssist.
A set of common plug-ins and functions shared across other integrations - such as getting the current working file. It also visually integrates Pyblish into the File-menu for easy access.
- Common plug-ins
- Common functionality
- File-menu shortcut
pyblish-nukeassist depends on pyblish-base and is available via PyPI.
Ensure Pyblish for NukeAssist is on your PYTHONPATH and run this within NukeAssist.
import pyblish_nukeassist
pyblish_nukeassist.setup()You may also want to consider a graphical user interface, such as pyblish-qml or pyblish-lite.
You can then show the Pyblish graphical user interface by calling show().
pyblish_nukeassist.show()It is recommended that you allow Pyblish to load upon launching NukeAssist. For this, you have two options.
- Add the following snippet to your
.nuke/menu.pyin your home directory:
# 1. Register your favourite GUI
import pyblish.api
pyblish.api.register_gui("pyblish_lite")
# 2. Set-up Pyblish for NukeAssist
import pyblish_nukeassist
pyblish_nukeassist.setup()- Add the
pyblish_nukeassist/nuke_pathdirectory to yourNUKE_PATHenvironment variable
As you will find, this directory contains a menu.py with the same command. Nuke will run this upon startup, along with any other menu.py available.
The setup() command will:
- Register Nuke related "hosts", allowing plug-ins to be filtered accordingly.
- Register a minimal set of plug-ins that are common across all integrations.
The menu-button is set to run show(), which you may also manually call yourself, such as from a shelf-button.
import pyblish_nukeassist
pyblish_nukeassist.show()Should you not want a menu-item, pass menu=False.
import pyblish_nukeassist
pyblish_nukeassist.show(menu=False)Should you want to dock the pyblish UI, there is a convenience function to help.
import pyblish_nukeassist
window = pyblish_nukeassist.show()
pyblish_nukeassist.dock(window)To get rid of the menu, and completely remove any trace of pyblish-nukeassist from your Nuke session, run teardown().
import pyblish_nukeassist
pyblish_nukeassist.teardown()This will do the opposite of setup() and clean things up for you.
In the event that no GUI is registered upon running setup(), the button will provide the user with this information on how they can get up and running on their own.
You can customize the integration with these environment variables:
| Environment Variable | Description | Examples |
|---|---|---|
PYBLISH_HOTKEY |
Hotkey for executing File > Publish. The hotkey is not case-sensitive. You can read more about it here. |
ctrl+p, Ctrl+Alt+P, CTRL+SHIFT+P |




