xLightsSequencer / xLights

xLights is a sequencer for Lights. xLights has usb and E1.31 drivers. You can create sequences in this object oriented program. You can create playlists, schedule them, test your hardware, convert between different sequencers.
GNU General Public License v3.0
549 stars 209 forks source link

Relocate directory configuration for FSEQ, RenderCache and Backup out of RGBEffects #4657

Open mjunek opened 2 months ago

mjunek commented 2 months ago

Problem

xLights saves the location of FSEQ, RenderCache and Backup to the rgbeffects file.

This is a real pain for anyone who switches and changes machines, like I do, as when they are not found, they get defaulted back into the show folder. This is definitely pronounced when using shared storage, such as a NAS, Cloud, or Git to move machines.

As an example of my my configruation:

I switch between Windows, Mac and Linux installations of xLights, across a few machines depending on my physical location.

As these directories are not found on the "other" machines when loading xLights (after the sync of show folder), they are automatically recreated in the show folder.

This was a big problem whilst storing the show directory in cloud storage as this caused large amounts of data to be resync'd to the cloud. I've mitigated it by switching to git (The defaults are in .gitignore); however disk space arrangements on some machines is a reason to move it elsewhere.

Proposed Solution

The configuration for the FSEQ, RenderCache and Backup directories are set in the xLights settings dialog. These should be saved with the machine, such Windows Registry, a local configuration file or somewhere machine specific.

This would then allow me to have different configurations depending on the machine I'm sequencing on, without it being overwritten every time the machine is changed.

keithsw1111 commented 2 months ago

I dont think this is as simple as this. When you work with multiple show folders on a machine you do not want to be mixing these folders. So then you end up with needing in the registry to distinguish show folders ... so create a subfolder under the folder you might say ... but this assumes all show folders are uniquely named ... which they are not ... unless you include the whole path ... and now you have path length issues.

mjunek commented 2 months ago

Thanks Keith - that makes perfect sense when running across multiple show directories. Not something we considered when we discussed it in Melbourne; but obviously a glaring issue :)

A potential alternate proposal then: Within each show folder have a separate file xlights_prefs.xml or something along those lines; sitting next to the rgbeffects/networks files which store the UI specific settings. This way it would be per-show-folder; and then the user could choose whether to synchronise the settings across machines or not.