If I already have a “Library” project that I use to hold windows and project resources that I inherited into other projects, can I also set that project to be my Gateway Scripting Project? I know inheritable projects aren’t about to be executed on their own, so I wasn’t sure if it would break the gateway to use them as the scripting project.
Yes, I think the setup you are describing (having a main, inheritable project that houses all your custom scripting that other projects inherit from and the gateway is configured to use for its own scoped functions) is probably best practice. This way you will have access to your custom scripts from as many scopes as possible.
Thank you. It’s a live system, so I didn’t want to just try it without some evidence that it wouldn’t break things.
The only thing it should change is the gateway’s ability to call your scripts. When in doubt, install a fresh copy of Ignition in a VM or on another computer and mock up your project architecture to see how those changes behave. That’s one of the beautiful parts of having software that runs without any limitations beyond the 2 hour trial when it’s unlicensed.
@swolnisty And in addition I do all of my mockups running under Linux VM in order to avoid pesky MS nagging messages about licensing and pirating software.
I’d probably argue that it’s better to use whatever the production environment’s OS is if one wanted as close to the same sandbox environment as production. I have run into issues where a specific linux instance would behave a little differently than on a windows gateway. For example, system.dataset.exportExcel() will fail by default on a headless install of ubuntu due to that method’s dependency on certain font files being present in the OS.
Otherwise, yes, I’d prefer to use Linux for development as well.