0

Need help with first-time linux configuration

Hi!

I'm trying to set-up shotgun to work in linux.

I'm able to launch maya via the shell (ex: tank Asset myAsset launch_maya) and everything work well.

However I'm not able to see the "Launch Maya" in the browser. (see linux.png and windows.png)

In the config paths.yml, the "maya_linux" field is set to "maya". If I run "maya" from the shell, maya open without problems.

Also, I've made sure the paths in install_location.yml & roots.yml are correct.

Also, the primary storage in the Site Preferences is correctly setuped on linux.

 

Is there something I'm missing? Any help is greatly appreciated.

I'm testing in Centos6.5 on firefox and chrome with the shotgun browser plugin installed and active.

 

Thanks!




windows.png
linux.png

23 comments

  • 0
    Avatar
    Renaud Lessard Larouche

    FYI, if I run my command from the studio tank, I got the following error:

    "The Shotgun Project 'dev_rllarouche' has a Primary pipeline configuration but it has not been configured to work with the current operation system."

    This make sense, it seems the linux path was not initially setuped when the project was created.

    Is there any way to change it without deleting the project? I'm an admin and in the web browser am not able to change it in the "Pipeline Configurations" page (see attached picture).

    Thx again!

  • 0
    Avatar
    Renaud Lessard Larouche

    FYI I've been able to change the Primary Pipeline configuration by using the two following commands:

    tank Project dev_rllarouche move_configuration "/mnt/software/shotgun/dev_rllarouche" "S:/mnt/software/shotgun/dev_rllarouche2" "/mnt/software/shotgun/dev_rllarouche"

    tank Project dev_rllarouche move_configuration "/mnt/software/shotgun/dev_rllarouche" "S:/mnt/software/shotgun/dev_rllarouche" "/mnt/software/shotgun/dev_rllarouche"

    This feel extremely "hacky" but I don't have the choice to move the configuration to a temp folder since otherwise I got a warning that the path already exist.

     

    In a nutshell, I'm able to load shotgun via shell but still have the problem with the browser (see mysteriouserrormsg.png) in my previous post.

    I'm pretty much out of options on this one, so any help is greatly appreciated, thx!

  • 0
    Avatar
    Renaud Lessard Larouche

    For the sake of testing, I've created a placeholder project with a correct Pipeline Configuration.

    However now I got this mysterious error message when using the toolkit (see mysteriouserrormsg.png).

    That's in chrome, in firefox it didn't provide any info (similar to windows).

     

  • 0
    Avatar
    Renaud Lessard Larouche

    Any feedback on the error msg?

    It's an urgent matter since it's the only thing missing for our linux people to work.

    Thx

  • 0
    Avatar
    Alan Dann

    Hi Renaud,

    Sorry for the slow response!

    Regarding updating the paths for the config, using the move_configuration command like that is currently the best approach as it's updating the config as well as setting the field on the Pipeline Configuration entity.  And yes, we know it feels hacky :(

    Regarding the error message, I haven't seen this before but it might just require your command cache being cleared - to do this try running

    ./tank clear_cache 

    and see if that makes any difference?

    Thanks

    Alan

  • 0
    Avatar
    Renaud Lessard Larouche

    Sadly, the clear_cache command don't make a difference.

    Is there any way that I can get more info on the error? Like a log?

  • 0
    Avatar
    Alan Dann

    Hi Renaud,

    Could you try running the following command:

    ./tank shotgun_cache_actions Task <pipeline_config_root>/tank/cache/shotgun_tasks.txt --debug

    (replace <pipeline_config_root> with your pipeline configuration root!)

    This is the Toolkit command that Shotgun will execute to try to determine the list of Toolkit actions that are available within the Task environment - hopefully the debug of the contents of the shotgun_tasks.txt file will shed some light on why this isn't working correctly.

    Thanks

    Alan

  • 0
    Avatar
    Renaud Lessard Larouche

    Is it possible that the tank folder doesn't exist?

    I've tried the following command:

    /mnt/software/shotgun/dev_rllarouche/tank shotgun_cache_actions Task /mnt/software/shotgun/dev_rllarouche/cache/shotgun.tasks.txt --debug

    And here's the output:

    bash-4.1$ ./tank shotgun_cache_actions Task /mnt/software/shotgun/dev_rllarouche/cache/shotgun_tasks.txt --debug
    DEBUG [14:40:29 816.283941269]:
    DEBUG [14:40:29 816.819906235]: Running with debug output enabled.
    DEBUG [14:40:29 816.917896271]:
    DEBUG [14:40:29 817.007064819]: Full command line passed: ['/mnt/FX-
    Prod/SHOTGUN/mnt/software/shotgun/studio/install/core/scripts/tank_cmd.py',
    '/mnt/FX-Prod/SHOTGUN/mnt/software/shotgun/studio', 'shotgun_cache_actions',
    'Task', '/mnt/software/shotgun/dev_rllarouche/cache/shotgun_tasks.txt', '--
    debug', '--pc=/mnt/FX-Prod/SHOTGUN/mnt/software/shotgun/dev_rllarouche']
    DEBUG [14:40:29 817.23690033]:
    DEBUG [14:40:29 817.312002182]:
    DEBUG [14:40:29 817.384958267]: Code install root: /mnt/FX-
    Prod/SHOTGUN/mnt/software/shotgun/studio
    DEBUG [14:40:29 817.48509407]: Pipeline Config Root: /mnt/FX-
    Prod/SHOTGUN/mnt/software/shotgun/dev_rllarouche
    DEBUG [14:40:29 817.586898804]:
    DEBUG [14:40:29 817.656993866]:
    <span><b>DEBUG:</b> Running shotgun_cache_actions command</span>
    <span><b>DEBUG:</b> Arguments passed: ['Task', '/mnt/software/shotgun/dev_rllarouche/cache/shotgun_tasks.txt']</span>
    <span><b>DEBUG:</b> Exiting with exit code None</span>
    bash-4.1$

     I don't see any usefull info, is None a valid return code?

    I can see that a shotgun_tasks.txt file was created (it didn't exist before) but the content batch other working projects:

    launch_nuke$Launch Nuke$$False
    launch_houdini$Launch Houdini$$False
    launch_nukex$Launch NukeX$$False
    launch_maya$Launch Maya$$False

    I don't know what the False value stand for but other working projects have the same content.

  • 0
    Avatar
    Renaud Lessard Larouche

    **correction at line 5

    /mnt/software/shotgun/dev_rllarouche/tank shotgun_cache_actions Task /mnt/software/shotgun/dev_rllarouche/cache/shotgun_tasks.txt --debug

     

    Thx!

     

  • 0
    Avatar
    Alan Dann

    Hi Renaud,

    That looks like the cache command executed correctly and without any errors but this is writing to a different file than Shotgun - deliberately I might add!

    Can you now check that the file:

    /mnt/software/shotgun/dev_rllarouche/cache/shotgun_linux_task.txt

    exists and is writable by Toolkit - this is the file the Browser plug-in will be trying to load.  My suspicion is that this file is empty and not writable...

    One other thing - I'm assuming the error message also leads to no Toolkit commands (launch Maya, etc.) being available from the Action menu - or are the commands available but don't work?

    Thanks

    Alan

  • 0
    Avatar
    Renaud Lessard Larouche

    Hi Alan, 

    The file /mnt/software/shotgun/dev_rllarouche/cache/shotgun_linux_task.txt doesnt exist by default.

    However the file /mnt/software/shotgun/dev_rllarouche/cache/shotgun_tasks.txt exist.

     

    I've tried to modify my command to:

    /mnt/software/shotgun/dev_rllarouche/tank shotgun_cache_actions Task /mnt/software/shotgun/dev_rllarouche/cache/shotgun_linux_task.txt --debug

    It created the file and it was not empty (same content as shotgun_task.txt). I've done a chmod 777 on everything but with no luck.

    How do I know that shotgun try to read shotgun_linux_task.txt? Is it in a config path somewhere?

    I'll try other things, if you have other ideas I'm all open!

  • 0
    Avatar
    Renaud Lessard Larouche

    Also everything work fine with the toolkits command, that's the strangest part!

    ex: tank Asset dev_rllarouche:asset01 launch_maya work flawlessly.

    For now we're using tank in command line to do the work. 

    The error seem to be browser-related only.

  • 0
    Avatar
    Renaud Lessard Larouche

    Maybe you can try installing centos (our linux distribution) on a virtual machine and check if the shotgun browser plugin work on your end? (http://www.centos.org/)

    I have the strong feeling that's it either a bug or a permission issues, but I've open all access on all executable files (desesperately).

  • 0
    Avatar
    Benoit Leveau

    Hi,

    One possible difference to take into account between launching from a browser and launching form command line is that in the browser your shell startup file hasn't been executed, eg. the .bashrc file. If you define environment variables, aliases or source other scripts that are needed by your setup, then it won't work from firefox.

    Example: in my current setup, developers have an extra line in their bashrc to tweak the environment. This only works when I use the tank command and not from the browser.

    Might not be it but hope it can help,

    Benoit

     

  • 0
    Avatar
    Alan Dann

    Hi Renaud,

    Benoit could be on to something here (thanks Benoit).  

    The error you get is a result of the tank command used to generate the command cache returning an unexpected return code (rather unhelpfully not displayed in the error!).  This could be because the browser doesn't have permission to run it, is unable to access it on the file system or something else like the scenario Benoit describes.

    Regarding the cache file '/mnt/software/shotgun/dev_rllarouche/cache/shotgun_linux_task.txt' - if you are trying to launch from a Task page then this file should definitely be written so the fact it's not reinforces the problem being with the Browser plug-in trying to run the tank command.  

    And looking at the code, I think that if it were the browser plug-in at fault then you would get a different (clearer) error - we definitely run the browser plug-in under centos without problems...  Would you be able to try disabling the browser plug-in and fall back to Java to see if you get any more information from the error?

    Thanks

    Alan

     

  • 0
    Avatar
    Renaud Lessard Larouche

    Hi Benoit!

    What you're saying is really interesting. We effectively have environment variables defined. 

    However they are defined in /etc/profile.d/ instead of .bashrc.

    I'll check if they are visible in firefox, maybe that's the problem!

     

    Did you found a solution in your setup to bypass this?

  • 0
    Avatar
    Renaud Lessard Larouche

    Hi Alan, didn't see you reply before posting. I'll also try to disable the browser plugin.

    I'm happy I have things to try now, I'll keep you informed!

  • 0
    Avatar
    Renaud Lessard Larouche

    Update: I've setupped a new computer today and the browser-plugins worked correctly and I didn't have to setup java to make it work.

    That is super-weird, maybe the bug is related to a specific configuration that was only present on a specific computer.

  • 0
    Avatar
    Renaud Lessard Larouche

    FYI if I desactivate the browser-plugin and use java it work on firefox! I think we'll go with this workaround.

    @Alan is there any downfall from using java instead of the browser-plugin?

  • 0
    Avatar
    Renaud Lessard Larouche

    Update: After searching deeper, it seems that one of the only differences between the two machines is that the working one have pidgin installed.

    I've installed pidgin on the non-working one and not the shotgun browser plugin work...

     

    I've dig and found on the shotgun browser plugin wiki that the only dependency is libgtk2. 

    I've installed pidgin on the non-working one and now it work...

    I finally understand!

    The bare Centos install don't provide by default all the libraries needed by the npShotgunIntegration.so.

    The difference between the working and not-working machine was that pidgin was installed.

    It's sheer luck, but installing pidgin fix the problem by providing missing libs on the computer.

    I'll have to dig deeper to find which exact library was missing but maybe providing a .rpm would prevent future users to have the problem?

    Or at least throw a message if a dependency is missing.

  • 0
    Avatar
    Renaud Lessard Larouche

    (ouch, sorry for my last response, I forgot to remove my draft before posting the comment and there's no edit button)

     

    TLDR; Can you provide an .rpm instead of a .so or at least throw an error if a dependency if missing? Thx!

  • 0
    Avatar
    Renaud Lessard Larouche

    I've provided a ticket for a fix: https://toolkit.shotgunsoftware.com/requests/3249

     

    Thanks everybody for the help! :)

  • 0
    Avatar
    Alan Dann

    Hi Renaud,

    Great detective work and thanks for finding and submitting a ticket for the problem!

    Thanks

    Alan

Please sign in to leave a comment.