WrapItUp v1.9

This location is for Registered Users Only.
Perhaps you need to login or register.
Contributor: Max van Leeuwen
Collect all media, gizmos and other necessary files to make a Nuke script work, and copy it to one specific folder. Features: auto-relinking, checks for duplicates, a command-line interface, a nice user interface when run in Nuke.
13.1, 12.2, 12.1, 12.0, 11.3, 11.2, 11.1, 11.0, 10 or later
Linux, Mac, Windows
12 Apr 2021

nuke collect all files for nuke script



collect nuke get all media for nukescript








WrapItUp is an easy-to-use tool that can collect and relink almost all files required to make a Nuke script work on another machine.
It has a user interface if you run it in Nuke, it can be executed from a command-line window for batch operations, and it can be called using a Python function.

I made sure to cram the entire thing in just one Python file, so you can simply drag-and-drop the file it into Nuke's script editor if you wish to use it just once.
To quickly collect all files for a nuke file, simply choose an empty folder in the “collection folder” box at the top of the window and hit Start.


Tested on Windows, Mac OS, and Linux (CentOS).





下载WrapItUp中文版 (GitHub) / Chinese Translations: See github.com/max-van-leeuwen/Nuke-WrapItUp
A big thanks to Skydream VFX for making these!






Features and settings


  • Three copies of the Nuke script will be collected: the original, a relinked one, and a relative-relinked one (using a python-embedded TCL expression).
    The relative-relinked Nuke script will stay linked to its media, even if you move it to a completely different machine - as long as the media is right next to it.
  • Media files with the path variables ####..., %**d (printf), %v and %V are supported.
  • Gizmos will be collected, and the necessary menu.py and init.py files will be generated. Simply place these files in your .nuke folder to install them.
  • A detailed CSV log file is generated to review which files were copied.


Not supported: Shared library plugins, (.dll, .dylib and .so files).
There are simply too many dependencies and licenses involved to keep track of these.


See my website (maxvanleeuwen.com/wrapitup) for more information about all features and settings in this script, and for command-line/Python use!







Standard Nuke installation


  1. Place the WrapItUp folder in your .nuke folder (or somewhere else on your computer)
  2. Go to your .nuke folder, and create a file called 'init.py'. If such a file already exists, open it.
  3. In the init.py file, add this line of text to the end and save it:

If you want to place the folder somewhere else than in the .nuke folder, make sure to change the path in the init.py file so that it points to that other path instead!



Only run once (in Nuke)


If you are only running it once, you can simply drag-and-drop the WrapItUp/WrapItUp.py file into the script editor panel in Nuke and click 'Run the script'.



Installation using NukeShared


  1. Place the WrapItUp folder in the '_AutoInstaller' repository.


NukeShared is a way of installing plugins by dragging/dropping them in folders, see this page for more information.






If you encounter any issues (or if you have feedback/ideas), let me know (maxvanleeuwen.com/contact)!








Fixed Nuke 13 (Python 3) compatibility



Fixed Nuke 10.5 compatibility



added support for media in Project Directory (root settings)
added interactive license (nuke_i) support (for internal use, when scripts are relinked)
added more information to log CSV
fixed bug with font folder relinking
fixed bug with 0b files freezing the copying process



relinking and relative relinking now only modifies knobs of media that is not user-ignored



fixed 'open folder' keyboard shortcut
code cleanup



added 'go to node' button
fixed error on empty project font path



fixed TCL support on font paths
fixed issue with gizmo's and nuke script containing dots in their names
UI labels now evaluate TCL as well
log now stores used nuke version



File paths with TCL are supported
Folder browser will ask to create new folders if the selected path does not exist



Added PySide support (for Nuke 10.5 and older)
Fixed Nuke closing on user interruption when 'exit on finish' is checked
Fixed Nuke asking to save your Nuke script when 'exit on finish' is checked and script has not been saved



Initial release

Please login in order to download these files.


# Frank Rueter 2019-03-25 19:37
looks fantastic, looking forward to giving it a go!
# Max van Leeuwen 2019-03-25 19:43
# bin zhuang 2019-03-26 02:22
error "Gobal name 'QTwidgets is not define'"
nuke 10.5v2 win7
# Frank Rueter 2019-03-26 03:09
Nuke 10.5 isusing the old Pyside so it's not compatible with PySide2 code.
The easiest would be to use Qt.py to make the existing code backwards compatible (just change the import statements):
# bin zhuang 2019-03-26 04:48
Thx Frank :-)
# Max van Leeuwen 2019-03-26 10:18
I just updated the script to support PySide as well, so it should work now! (Tested in Nuke 10.5v8.)

Thanks Frank, that's a really useful link!
# Yunsik Noh 2019-03-26 15:08
Thank you so much for this py.
# Mads Hagbarth Damsbo 2019-03-27 10:24
Neat Max!
# Max van Leeuwen 2019-03-27 10:34
Thanks! :)
# hanguil jung 2019-03-28 09:41
ignore is working?
# Max van Leeuwen 2019-03-28 10:39
I'm not really sure what you mean - you can move items from the 'copy' list over to the 'ignore' list using the buttons down below them.
By default, the 'ignore' list is empty (except if there are, for instance, Read nodes with missing file paths - they will be appended to that list).

If you have any questions, let me know! You can e-mail me at maxvanleeuwen.c om/contact
# Jeang Jenq Loh 2019-03-31 12:25
This is the best looking script I've seen to...well WrapItUp! Works amazingly well and the function to collect gizmos/fonts is brilliant. Thank you for all the hard work and uploading this!

A few suggestions/issue:
1. Ask to create directory if I typed up a directory that doesn't exists in the choose folder dialog.
2. Doesn't seem to work with nodes with relative file path. Nodes with [file dirname [value root.name]] or project directory set got ignored and didn't copy.
# Max van Leeuwen 2019-04-01 21:07
Thank you!

Great suggestions! I've added them to version 1.2.

The TCL example you mentioned and others I regularly use are all working for me now, let me know if that's the same for you!
# M Frank 2019-04-01 18:06
"Yo you better wrap that gavel up B!"


Thanks Max!
# bang meng 2019-04-02 08:50
If the script file is named qwert.sc01.vfx0 3010.v001.nk, version 1.2 will not work. 1.1 can complete the work, but the name of the saved script will be changed to v001. I think this is the reason for the script name "."
# bang meng 2019-04-02 08:53
Great script. Thank you for sharing.
# Max van Leeuwen 2019-04-02 10:59
Thank you for letting me know!
You are absolutely correct, I have fixed this issue (and some others) in 1.3!
# bin zhuang 2019-04-03 02:27
v1.3 seems does'n work with follow:
line 1029 in Refreshthreaded
line 781 in ReadComotherDat a
coering to Unicode : need string or butter, NoneType found

v1.2 is work complete

tested in 10.5v2 and 11.2v1
# Max van Leeuwen 2019-04-03 09:56
Thanks for the info! This issue should be fixed in 1.4 now - it seemed to pop up when the project font path was empty.
# Elizar Knyazev 2019-06-19 21:03
Thank you for beautifully made script. My suggestion for next update is to make some kind of Project Root folder field. And save all path relative to this one if files inside Project Root. If not - just put them in predefined subfolder "External" or something. And this can be as second way to deal with subfolders.
+1 # zhang yongzheng 2019-08-04 10:00
Under nuke 10.5 V5 windows system, the plug-in prompt "pyside.QtGui.Q ComboBOX" object has no attribute'setCy rrenText'is not an error and can be executed normally.
# Max van Leeuwen 2019-08-04 11:49
Fixed! WrapItUp 1.8 also works on Nuke 10.5!
Thanks for letting me know :)
# zhang yongzheng 2019-08-04 10:04
Under nuke 10.5 V5 windows system, the plug-in prompt "pyside.QtGui.Q ComboBOX" object has no attribute'setCy rrenText'is not an error and can be executed normally. Shield the language and you'll be OK.
# Erman Zambak 2019-09-04 19:15
thanks man.. this is fantastic!!!
# Mike Gratton 2020-05-13 23:03
Many tools can save you from getting fired, but once in a while, something like WrapItUp comes along, and stops you from quitting. Great Job!
# Jung Keun Kim 2020-09-24 14:01
Thank you for the sharing this nice script. and I just find a little problem. it doesn't works with no padding number sequence, like a name.1.exr, name.2.exr ... name.9.exr, name.10.exr
# Javier Delgado 2021-03-27 22:59
Great tool! .Can you update it to Nuke 13?
# Max van Leeuwen 2021-04-12 19:19
# Javier Delgado 2021-04-13 12:23
Quoting Max van Leeuwen:

# Max Steven 2021-07-10 13:09
Hello is it possible to choose a specific frames instead of collect all the frames? We want to do backup but keep everything make it costly to store these backups

You have no rights to post comments

We have 2551 guests and 74 members online