WrapItUp v2.0


 
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.
Requirements:
14.0, 13.2, 13.1, 13.0, 12.2, 12.1, 12.0, 11.3, 11 or later
Linux, Mac, Windows
25 Sep 2023
4237

nuke collect all files for nuke script

 

 

collect nuke get all media for nukescript

 

 

 

 

 

WrapItUp

 

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).

-> If relinking is not working, try changing the Nuke license under 'Misc -> Relink License' to '-ti'!

 

 

 

 

下载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!

 

 

 

 

Installation

 

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:
    nuke.pluginAddPath('./WrapItUp')

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)!

 

 

 

 

Updates

 

 

2.0

 

Added -d flag in terminal to skip all disabled nodes, and (*) in UI list to show when nodes are disabled

 

 

1.9

Fixed Nuke 13 (Python 3) compatibility

 

1.8

Fixed Nuke 10.5 compatibility

 

1.7

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

 

1.6

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

 

1.5

fixed 'open folder' keyboard shortcut
code cleanup

 

1.4

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

 

1.3

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

 

1.2

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

 

1.1

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

 

1.0

Initial release

Please login in order to download these files.

Comments   

 
0 # Frank Rueter 2019-03-25 19:37
looks fantastic, looking forward to giving it a go!
 
 
0 # Max van Leeuwen 2019-03-25 19:43
Thanks!
 
 
0 # bin zhuang 2019-03-26 02:22
error "Gobal name 'QTwidgets is not define'"
nuke 10.5v2 win7
 
 
0 # 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):
https://github.com/mottosso/Qt.py
 
 
+1 # bin zhuang 2019-03-26 04:48
Thx Frank :-)
 
 
0 # 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!
 
 
0 # Yunsik Noh 2019-03-26 15:08
Thank you so much for this py.
 
 
0 # Mads Hagbarth Damsbo 2019-03-27 10:24
Neat Max!
 
 
0 # Max van Leeuwen 2019-03-27 10:34
Thanks! :)
 
 
0 # Way the 2019-03-28 09:41
ignore is working?
 
 
-1 # 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
 
 
+1 # 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.
 
 
0 # 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!
 
 
0 # M Frank 2019-04-01 18:06
"Yo you better wrap that gavel up B!"

https://www.youtube.com/watch?v=j-emlb2_jdI

Thanks Max!
 
 
0 # 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 "."
 
 
0 # bang meng 2019-04-02 08:53
Great script. Thank you for sharing.
 
 
0 # 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!
 
 
-1 # 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
 
 
0 # 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.
 
 
0 # 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.
 
 
0 # Max van Leeuwen 2019-08-04 11:49
Fixed! WrapItUp 1.8 also works on Nuke 10.5!
Thanks for letting me know :)
 
 
0 # 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.
 
 
0 # Erman Zambak 2019-09-04 19:15
thanks man.. this is fantastic!!!
 
 
0 # 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!
 
 
0 # 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
 
 
+1 # Javier Delgado 2021-03-27 22:59
Great tool! .Can you update it to Nuke 13?
 
 
0 # Max van Leeuwen 2021-04-12 19:19
Updated!
 
 
0 # Javier Delgado 2021-04-13 12:23
Quoting Max van Leeuwen:
Updated!

Thanks!
 
 
+1 # 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
 
 
0 # Max Peillon 2021-12-15 17:09
Hey Max, Thanks for the good work! It's such a good tool.
Everything seems to work fine BUT the relink and relinked-relati ve new scripts are still showing the original path for each read node. Am I missing something? I use the 1.9 version of your script on nuke 13.0v05.

Thanks!
 
 
0 # Max Peillon 2021-12-15 17:09
Hey Max, Thanks for the good work! It's such a good tool.
Everything seems to work fine BUT the relink and relinked-relati ve new scripts are still showing the original path for each read node. Am I missing something? I use the 1.9 version of your script on nuke 13.0v05.

Thanks!
 
 
+1 # Jung Keun Kim 2021-12-22 07:04
I got a same problem with relink and relinked-relati ve script option.
 
 
0 # andrew emmerson 2022-01-03 22:14
Does this work with UNC paths? I checked the relinked relative script and it still seems to link to the original footage not the created MEDIA folder
 
 
+1 # Martin Rombos 2022-01-12 12:29
Tried it with a simple script. The resulting files still have the same path as the original (everything is copied but nothing gets relinked). I'm on NukeX v13.1.
 
 
0 # kire timov 2022-01-19 14:47
Thank you for this script. It's very useful.

If you can, i would suggest you improve the functionality of the projet_dir - right now it seems it's not working if an expression is used, so maybe you can use evaluate() if it's an expression to get the abs path of the project dir knob.

Secondly, the path when it's copied it keeps the folder structure from when it was copied - this is needlessly long and sometimes deep folder structures make issues in certain OS.
What you can do is simplify the path as you do in the MEDIA folder, just update the project dir in root() to reflect that path without keeping the new+original folder structure.
 
 
0 # kire timov 2022-01-19 18:52
Quoting kire timov:
Thank you for this script. It's very useful.

If you can, i would suggest you improve the functionality of the projet_dir - right now it seems it's not working if an expression is used, so maybe you can use evaluate() if it's an expression to get the abs path of the project dir knob.

Secondly, the path when it's copied it keeps the folder structure from when it was copied - this is needlessly long and sometimes deep folder structures make issues in certain OS.
What you can do is simplify the path as you do in the MEDIA folder, just update the project dir in root() to reflect that path without keeping the new+original folder structure.


Actually, this is a bug with the project dir (the project dir root setting gets updated, but the copied stuff in there keeps HAS to keep have the same relative path and the read nodes just don't work in this case)
 
 
0 # Dmtrii V 2022-04-22 10:42
Unfortunately relinking is not working. But functionality is good!
 
 
0 # Dmtrii V 2022-04-22 10:42
Unfortunately relinking is not working. But functionality is good!
 
 
0 # Renat Gabdrakhmanov 2022-06-08 16:32
Yes. I can confirm: Relinking is not working now. I bet something has happened in the last update. I did find an old version for now (where everything was fine), this old version works fine.
 
 
+1 # Aleh Maksimovich 2022-07-12 04:31
does not work with relative paths
 
 
0 # Damien Keraudren 2022-11-16 14:15
Great tool. Used it today for several scenes. I noticed that the copy was pretty slow.
I modified the code to use window's xcopy instead of shutil copy2. Got really quicker. Could be a nice improvment for futures releases.
(copy2 works well on linux)
 
 
0 # John Martini 2022-11-26 15:47
i don't think it works with relative pathing
 
 
0 # s v 2023-02-17 17:57
Very good solution.
Good health and prosperity to it`s creator!
 
 
0 # Ezequiel Pereyra Lucena 2023-05-16 17:40
The reads all point to original source files and not new folder, am i missing something?

the auto relinking isnt working for me.
 
 
0 # Ezequiel Pereyra Lucena 2023-05-16 17:40
The reads all point to original source files and not new folder, am i missing something?

the auto relinking isnt working for me.
 
 
-1 # Ezequiel Pereyra Lucena 2023-05-16 19:04
dont mind me its working fine, had trouble with some weird nodes
 
 
0 # mark timms 2023-08-10 16:43
Installed in Nuke 14, but I'm getting this message: module 'WrapItUp' has no attribute 'WrapItUp'. Any ideas?
 
 
+3 # Javier Delgado 2023-09-27 19:44
Still not working RELINKED-RELATI VE on version 2.0
 

You have no rights to post comments

We have 4558 guests and 158 members online