Skip to main content

Plugin directory

ftrack Connect supports addons through the use of a plugin directory. The directory will be automatically searched for plugin folders containing a hook directory where users can add their own custom event processing, actions, locations, Connect widgets and dcc integrations.

The path for the default plugin directory differs between platforms:

  • OS X: ~/Library/Application Support/ftrack-connect-plugins
  • Windows: C:\Documents and Settings\<User>\Application Data\Local Settings\ftrack\ftrack-connect-plugins
  • Linux: ~/.local/share/ftrack-connect-plugins

An easy way of finding your default plugin directory is to open the ftrack connect menu and click `Open plugin directory`:

This will create the directory if not already existing and open it in the file browser. Downloaded Connect plugins can be unzipped and placed in this directory.

tip

See also: For development of plugins please refer to this developing plugins.

Environment variable

Advanced users may want to control where Connect looks for plugins. It may be because you want to centralise hooks on a network share for everyone in the Company or just want to have them somewhere else than default.

By setting the FTRACK_CONNECT_PLUGIN_PATH you can override the folder where Connect will search for plugin hooks. E.g:

export FTRACK_CONNECT_PLUGIN_PATH=/Users/mattiaslagergren/Desktop/my-plugins

This will make Connect look for plugins in the my-plugins folder on the desktop, and no longer search the default plugin directory. Multiple paths can be added FTRACK_CONNECT_PLUGIN_PATH, if they are properly separated by a : (unix) or ; (windows). Connect will respect the order of the paths and search for plugins in the first path, then the second and so on.

tip

To have local plugins and network plugins at the same time (legacy Connect 2 behaviour), you can set the FTRACK_CONNECT_PLUGIN_PATH to \\Server\NetworkShare\ftrack-connect-plugins;C:\Users\mattiaslagergren\Desktop\my-plugins (windows).

Dependencies

If you find yourself in need of using third party modules, please see how ftrack plugins are usually packaged. In general, Python dependencies should be placed in the dependencies sub folder which then should be added to PYTHONPATH as needed by the hook(s):

<$FTRACK_CONNECT_PLUGIN_PATH>/dependencies

A example is available as part of our recipes repository

Override default Github repository URL

By default, Connect will look for plugin release artefacts within the ftrack Integration repository, to override this behaviour you can set the FTRACK_CONNECT_GITHUB_RELEASES_URL environment variable to a custom URL or disable the fetch of plugins from Github by setting the variable to 'none' or 'false'. This might useful for security reasons or in an airgapped environment.

Disable plugin manager

To disable (hide) the Connect plugin manager, set the environment variable FTRACK_CONNECT_DISABLE_PLUGIN_MANAGER to true. This will still have Connect load plugins but the widget will be disabled.