SharedToolSets v1.7


 
This location is for Registered Users Only.
Perhaps you need to login or register.
Contributor: Vitaly Musatov
Share your ToolSets
Requirements:
13.1, 13.0, 12.2, 12.1, 12.0, 11.3, 11.2, 11.1, 11 or later
Linux, Mac, Windows
22 Jan 2024
819

 

Vimeo

 

This tool based on Nuke's ToolSets, but the only difference, it works across your shared folder. Everybody can create a some useful block of script and share it with co-workers. No need to copy folders and scripts to somewhere, you can do it completely in Nuke.
An addition you can edit, rename and move your toolsets from the panel.


1. Setup a shared folder accessable for everybody in your network. Shared folder must be called SharedToolSets.
2. Copy files and folders in your nuke pluging's folder
3. Add information from add_me_to_menu.py to your menu.py and add_me_to_init.py to your init.py
4. Have fun!

Also available on: https://github.com/greenvfx/shared_toolsets


v1.2 - Minor bug fixes

v1.3 - Added tooltip in a menu. A crossplatform way to define a root folder. Added undistractive filefiltering.

v1.4 - Opps... into menu.py added this line of code: toolbar = nuke.menu('Nodes') 

v1.5 - Support of Nuke 11 and backward compatibility of previous versions.

v1.6 - Fixed a bug that caused Nuke crashing when loading of 'big' toolsets.

 UPDATE:

 v1.7 - added a support of nuke13.x, python 3

 

 

If you have found this tool helpful, please consider supporting me with a donation.
This will help me maintain current tools and develop new ones. Thanks for your support!


PayPal

 

 

Please login in order to download these files.

Comments   

 
+1 # Alex Fry 2016-05-18 01:59
Nice!
 
 
0 # Vitaly Musatov 2016-06-08 22:47
Thanks! I hope this will be useful to you.
 
 
0 # rafal kaniewski 2016-11-10 13:33
Awesome - I like your work.

Here are some mods that for me would be the glint in the robot wink.

1) add text in 'create window' that informs user that a forward slash creates a folder i.e. add folder: /newfolder/myNewNode

2) have user control (add root id to .nk?) so only the owner can edit, but anyone can version up

3) integrate it to replace the existing toolset. i.e. menu.py & add feature to create local [user] and use the default nukescript.tool set object.

will github fork if i find time with these changes.

Again thanks ++++
 
 
0 # Vitaly Musatov 2016-11-10 14:11
Rafal, thank you. I really glad that you found it useful.
Nice ideas actually. Then I find spare time I will add new features.

1. Definitely. I will add information about it.
2. Interesting idea, I need to think about it. It would be nice if you would give me some examples, because in my practice I haven't encountered situations then I would need to lock some toolsets.
3. I believe that it is possible and it could be a some extra feature.
 
 
0 # Andrew Rea 2017-05-10 08:08
Very useful tool, have used it to make a stock footage library where I am currently working, thanks again
 
 
0 # Vitaly Musatov 2017-05-10 21:04
Andrew, it's my pleasure! I am really glad to hear that this tool is useful! Thank you!
 
 
0 # han cao 2017-05-12 18:36
This seems like a really useful tool! im getting an error when installing says name'toolbar is not defined'. :cc
 
 
0 # Vitaly Musatov 2017-05-12 19:13
han cao, thank you for feedback. I have updated the tool.
So, you can download a new version or just add this line to menu.py, before sharedToolSets:

toolbar = nuke.menu("Node s")
 
 
0 # han cao 2017-05-12 21:27
omg thank u so much, its working great. its something that am working on but ur tool is perfect.
here are 2 things i think will improve the tool:
1,i totally agree with kaniewski about having user control. and only certain people have access to updating the tools.
2,a option of copying over and relink the plates/assets will be nice since the plates/assets wont sit where they are forever.
realy nice tool man!!
 
 
0 # Vitaly Musatov 2017-05-12 22:02
Thanks, mate!
Actually I've recently continued working to this tools and I am working on assets and user controls. But because of lack of time it goes not so fast.
 
 
+1 # Jung Keun Kim 2017-08-28 05:45
thank you for the update :D
 
 
0 # Andrew Rea 2017-09-06 13:48
Trying with my rudimentary python to add a test to see if the drive where the shared toolset scripts are stored is mounted, something like this:

import os
if nuke.GUI && os.path.ismount ("/Volumes/EDri ve") == True:

It's not working and I'm sure I am missing something obvious, if anyone had any suggestions would be great, thanks again for developing the tool Vitaly
 
 
0 # Vitaly Musatov 2017-09-09 19:42
Hello Andrew! Sorry for a late response. Just found it))

I not have a Mac, so it hard for me to check how "os.path.ismoun t()" works.
But I believe this one should works:

import os

if nuke.GUI and os.path.isdir("/Volumes/EDrive/nukeplugins"):

"nukeplugins" is some constantly existing folder on a external drive.
 
 
0 # Andrew Rea 2017-09-09 20:14
Vitaly,
I will try this on Monday and thank you for your reply, appreciate it, I probably need to go learn python properly instead of copying and pasting bits together!
 
 
+1 # Vitaly Musatov 2017-09-10 10:53
Not at all. I would recommend to learn Python is quite useful for many situations and not hard to learn. Look at this:
https://www.codecademy.com/learn/learn-python
I think it a good pIace to start and get basic concepts.
Good luck!
 
 
0 # Andrew Rea 2018-08-20 16:23
Have been using this in Nuke 11 in Windows 10, still great but it seems hang/crash when trying to pull in bigger scripts (seems to be anything over about 3000 lines of code which with a few gizmos is easy to hit unfortunately!)
Would the changes to Nuke 11 using the VFX Platform have affected this by any chance?
 
 
0 # Vitaly Musatov 2018-08-22 03:46
Hi Andrew! Unfortunately I have not Nuke 11 right now and just a little spare time so I couldn't promise to make it quickly. Yup, 3000 lines it is not so much. I will try to do my best. Sorry for that.
 
 
0 # Andrew Rea 2018-08-22 06:42
No need for apologies Vitaly! It could be to do with my network at work or something else at my end and this is a free resource after all
 
 
0 # Brian Thompson 2019-06-12 20:30
Vitaly,


I have followed the instructions for installation instructions and Nuke launches fine. However, when trying to load a toolset I get the following error: "name 'shared_toolset s' is not defined". Any thoughts what could be causing this?
 
 
0 # Vitaly Musatov 2019-06-12 21:03
Hi Brian!

Have you adjusted sharedToolSetsP aths in meny.py?
 
 
0 # Brian Thompson 2019-06-12 21:39
Yup: Here's a bit more information. Our studio loads multi-user scripts as follows:

User menu.py imports a studiomenu.py from a shared location (this allows us to not have to edit each users menu.py to deploy changes)
studiomenu.py has the SharedToolKit code snippet in it.

User init.py imports a studioinit.py from shared location
studioinit.py has the SharedToolkit code snippet in it

studioinit.py was modified to have explicit paths to the scripts and icons folder (we are a single OS environment and don't need path mapping). ex:
nuke.pluginAddPath("P:/VFX/nuke/scripts")
nuke.pluginAddPath("P:/VFX/nuke/icons")

SharedToolSets.py is also in a shared location ("P:/VFX/nuke/scripts")

When launching Nuke, it seems as though shared_toolsets is not loaded from our studiomenu.py.

If the local menu.py has 'import shared_toolsets ' then it loads fine. If I manually enter import shared_toolsets into the console then the plugin works fine. It just doesn't seem to want to load when read from studiomenu.py

haha, sorry I know I'm not installing the plugin exactly as described so not your fault it's not working!
 
 
0 # Vitaly Musatov 2019-06-12 22:09
That's tricky. I could only guess that went wrong.

1. Try to check is that module is loaded or not:
import sys
print sys.modules.keys()
2.Have you renamed shared_toolsets .py to SharedToolSets. py?
3. Well I never used an approach that you do, Usually I use environment variables for a centalised nuke library. Maybe you should try to do same.
 
 
0 # Brian Thompson 2019-06-12 22:24
the shared_toolsets module is loaded when the above command is run.
shared_toolsets.py has not been renamed

I'll look into using the environment variable approach - which The Foundry recommends. I inherited this setup, so working with what I got :) thanks for the suggestions!
 
 
0 # Vitaly Musatov 2019-06-14 13:22
I see. For now you could try to force it to load the module, as you said. I am gonna try to replicate your studio approach maybe i find a solution.
 
 
0 # li zhaohui 2019-11-27 04:24
The plug-in is installed on the server, and nuke starts very slowly!
 
 
0 # Vitaly Musatov 2019-12-01 21:32
Hi li zhaohui!
Could you provide more details? I've never had this issue before.
 
 
0 # phil massimino 2020-07-01 11:12
Is Nuke 12 supported?
 
 
0 # Vitaly Musatov 2020-07-01 14:04
Hey Phil!
Yeah, it should work fine. I have updated the list of supported versions.
 
 
0 # phil massimino 2020-07-01 15:44
Hey Vitaly
Thank you for your quick response!
 
 
0 # Lukasz Stolarski 2021-05-17 13:19
Hello Vitaly. Your tool is very useful.
However, it stopped working in Nuke 13 :/ Is there a chance for an update?
 
 
+2 # Vitaly Musatov 2021-05-17 13:39
Hi Lukasz!
Sure, I am gonna update it soon!
I hope I will have time this week :)
Thank you for the comment it inspires to support the tool :)
 
 
+2 # Vitaly Musatov 2021-05-24 14:18
Hi Lukasz! I have finally updated the tool. :)
 
 
0 # Lukasz Stolarski 2021-05-26 13:26
Vitaly - thank you so much! I've just checked it and I confirm it's working.
My respect :)
 
 
0 # Vivek Sharma 2021-05-24 20:46
Awesome tool, great job Vitaly :-)
 
 
+1 # Vitaly Musatov 2021-05-24 22:59
Wow, Vivek!!! Thanks mate!!!
 
 
0 # li zhaohui 2021-07-05 08:25
File "E:/nukeplugins erver/Universal plug-in/NUKEPlu ginManager/Shar edToolSets\shar ed_toolsets.py" , line 246, in toolsetLoader
data = fileFilter(full FileName, FILE_FILTER)
File "E:/nukeplugins erver/Universal plug-in/NUKEPlu ginManager/Shar edToolSets\shar ed_toolsets.py" , line 264, in fileFilter
content = f.readlines()
UnicodeDecodeError: 'gbk' codec can't decode byte 0x9c in position 1486: illegal multibyte sequence
 
 
0 # Vitaly Musatov 2022-08-29 02:21
Hi Li!
I wonder, do you use this NukePluginManag er
http://www.nukepedia.com/python/ui/nukepluginmanager ?
 
 
0 # han cao 2022-08-26 22:42
Receiving a error opening nuke: name 'fullfilename' is not defined
 
 
0 # Vitaly Musatov 2022-08-26 22:54
Quoting han cao:
Receiving a error opening nuke: name 'fullfilename' is not defined

hey han!

May I ask you to provide me with some details? What version of Nuke do you use? How have you installed it?
 

You have no rights to post comments

We have 3619 guests and 79 members online