Contact Support

flixApp Folder Structure

The flixApp folder contains four other folders: apps, builds, flixConfig, and plugins.

Note:  The flixApp folder must allow full read, write, and execute permissions to the administrator, and read and execute permissions to every user working with Flix, which means 755 permissions.

The apps Folder

In the apps folder, you can find the following Flix 5 launchers organized by Operating System in sub-folders:

Flix - to launch Flix 5’s main interface.

Flix_Next - to launch the version of Flix 5 you set as your next version for testing.

Flix_Editorial - to launch Flix 5’s editorial interface.

Flix_Editorial_Next - to launch the version of Flix 5’s editorial interface you set as your next version for testing.

Tip:   Create shortcuts for these launchers on the desktop of every Flix 5 user’s machine to avoid navigating to this folder to launch Flix 5.

If the Flix 5 launchers are installed on your machine, the apps folder's structure changes. You can find the following organized by Operating System in sub-folders:

Flix - contains the Flix 5 executable launchers.

Flix.exe, Flix.app, or Flix - depending on whether you're on Windows, OS X, or Linux.

Flix.yml - contains paths to the Flix_Variables.yml file needed for the executable to find Flix 5.

Flix_Next.exe, Flix_Next.app, or Flix_Next - depending on whether you're on Windows, OS X, or Linux.

Flix_Next.yml - contains paths to the Flix_Variables.yml file needed for the executable to find Flix 5.

launchers - contains the launchers used previously, which are no longer necessary, see above.

nuke - contains the Nuke files.

thirdParty - contains the third-party applications files.

Flix_Variables.yml - contains all the variables Flix 5 needs to run.

The builds Folder

In the builds folder you can find all the versions of Flix 5:

flix_web.release - contains the build used for the current version of Flix 5.

flix_web.next - contains the build used for the next version of Flix 5 for testing purposes.

If you don't know which build is your release build, you can find this information in the following location:
FLIX_ROOT/flixApp/builds/flix_web.release/assets/about.txt

Warning:  We don't recommend you edit the files contained in the builds folder as it could damage your Flix 5 installation.

If the Flix 5 launchers are installed on your machine, the builds folder's structure changes as the builds use .txt files instead of symlinks:

flix_web_<build_version_number> - contains the build currently in use or previously used.

flix_web.release.txt - text file pointing to the build used for the current version of Flix 5.

flix_web.next.txt - text file pointing to the build used for the next version of Flix 5 for testing purposes.

The flixConfig Folder

In the flixConfig folder, you can find the files used for customizing Flix 5. You can customize Flix 5 by setting the required parameters for your studio, setting on which VM and port each Flix 5 service is running, writing your own plug-ins, and so on. The files are stored in four separate folders: context, core, plugins, and remote.

context

In the context folder, you can find the localContext.py file that defines the global Flix 5 configurations.

The localContext.py file contains the following classes:

LocalContext - defines the context configurations for the release version of Flix 5.

LocalNextContext - defines the context configurations for the next version of Flix 5 you intend to use for testing.

Overriding Flix Python Modules

Every Flix Python module can be overridden. To override a module, specify in the localContext.py file that you want to load your own customized modules as opposed to the default Flix 5 modules. For example, to override the default pluginConfig module, add the following line in the localContext.py file:

self.pluginConfig = 'flixConfig.plugins.localPluginConfig.LocalPluginConfig'

To access the Flix 5 modules that can be overridden, navigate to the following location:
FLIX_ROOT/flixApp/builds/flix_web.release/pythonSource/flix

Warning:  We don't recommend you edit the files directly in the FLIX_ROOT/flixApp/builds/flix_web.release/pythonSource/flix folder. Instead, you can override everything from the flixConfig folder.

Setting Flix Shows Location

Your Flix 5 shows might not live in the default location, see the flixProjects Folder Structure section. To set where your Flix 5 shows live, in the localContext.py file, point Flix 5 to the actual location by setting the localRoot variable. For example, if the Flix 5 shows live in /shared/flixShows/, you can set the localRoot variable to:

self.localRoot = '/shared/flixShows'

Pointing to a Different Parameters File

You might want to use different sets of parameters depending on your Flix 5 version, for instance, Release, Next, Dev, and so on. By default, Flix 5 loads the parameters defined in:
FLIX_ROOT/flixApp/flixConfig/core/localParameters.yml.

If you want Flix 5 to load parameters defined in a different file inside the core directory, for instance, LocalNextParameters.yml, you can set the following variable in the localContext:

self.localParameters = 'LocalNextParameters'

core

In the core folder, you can find the localParameters.yml file. With this file, you can set parameters for your Flix 5 installation.

Note:  For more information on the Flix 5 parameters, refer to the Setting Parameters section.

Note:  From Flix 5.2 onwards, the localParameters.py files are being deprecated and replaced by localParameters.yml.
When first starting Flix 5.2, the localParameters.py file is converted to a .yml file (localParameters.yml.tmp). Review the parameters to ensure the conversion was successful and then rename it to localParameters.yml for Flix 5 to start using the .yml file instead of the .py file.
The .py file is only picked up by versions prior to 5.2.

Note:  As Python files are being deprecated and replaced by YAML files from Flix 5.2 onwards, you can no longer define the parameters for your different versions of Flix 5, for instance, Release, Next, Dev, and so on. To define parameters for a different version of Flix 5, you can create a new YAML file, for instance, localNextParameters.yml, and refer to the Pointing to a Different Parameters File section for information on how to load this new parameters file instead of the default one.

plugins

You can set a particular plug-in to display as the default plug-in in the Editing, Export, and Editorial Plug-in Group and Maya dropdown menus. You can also disable plug-ins from these dropdown menus if you don't need them.

The example below shows how to set the Avid plug-in as your default Editorial plug-in and how to disable the StoryBoard Pro plug-in from the Export Plug-in Group dropdown menu.

1.   Navigate to FLIX_ROOT/flixApp/flixConfig/plugins/localPluginConfig.py file.

By default, the file contains the following:

from flix.plugins.pluginConfig import PluginConfig class LocalPluginConfig(PluginConfig): def __init__(self): """Initialize the plugins that will show up in Flix gui""" super(LocalPluginConfig, self).__init__()

To set the Avid plug-in as your default plug-in in the Editorial Plug-in Group:

2.   Import the module by adding this line:

from flix.plugins.avid import Avid

3.   Add the following line under the super(LocalPluginConfig, self).__init__() line:

Avid().default()

To disable the StoryBoard Pro plug-in:

4.   Import the module by adding this line:

from flix.plugins.sbp import SBP

5.   Add the following line under the super(LocalPluginConfig, self).__init__() line:

SBP().disable()

After setting Avid as your default Editorial plug-in and disabling the StoryBoard Pro plug-in, your file contains the following:

from flix.plugins.pluginConfig import PluginConfig from flix.plugins.avid import Avid from flix.plugins.sbp import SBP class LocalPluginConfig(PluginConfig): def __init__(self): """Initialize the plugins that will show up in Flix gui""" super(LocalPluginConfig, self).__init__() Avid().default() SBP().disable()

Below is the list of all the plug-ins you can either set as default or disable:

Editing Plug-in Group

Editorial Plug-in Group

ExportPlug-in Group

Maya

photoshop

tvPaint

originalFiles

PsdFCPEditing (called Split PSD Layers to Clips)

fcp

avid

nukeStudio

toShotgun

fromShotgun - Imports shots from Shotgun into your sequence.

psdFCP (called Split PSD Layers to Clips)

dialogueToFile

toMov

toJPGs

toPSDs

sbp

toCSV

toNuke

recomp

Maya

MayaNoImagePlane

MayaDataOnly

MayaShots

remote

In the remote folder, you can find the localProcConfig.py file that defines which services run on which server and port.

For example:

self.PROCS[self.FILE] = ["flix001", "flix002", "flix003"]

self.PORTS[self.FILE] = [35901, 35902, 35903]

This shows that the File service runs on the servers flix001, flix002, and flix003 on ports 35901, 35902, and 35903.

The localContext.py file contains the following classes:

LocalProcConfig - defines the server and port configuration for each service for the release version of Flix 5.

LocalNextProcConfig - defines the server and port configuration for each service for the next version of Flix 5 you intend to use for testing.

The plugins Folder

In the plugins folder you can find the Maya shelves and icons needed for the Flix 5 and Maya workflow.

Note:  To install the Flix 5 shelves in Maya, refer to the Enabling the Third-Party Applications section.