Why do we need two config sources part 2 electric boogaloo.
Continuation of #276 (closed) and discussion over IRC. New issue because turbodevs couldn't wait for me to actually comment on that issue.
So config.exs i needed because in currently proposed binary package FE is bundled in in such a way configuration for it is awkward.
config.exs/pleroma.conf + config.json if you set some flag in config.exs
Pros:
- "easy" configuration in binary package (in quotes because it doesn't seem all that easy)
Cons:
- one configuration for ALL the FEs, impossible to have separate configs unless you switch to config.json
- to apply new config you need to restart entire server
- need to sync PleromaFE settings to PleromaBE
- FE devs have little control over what is synced to BE as we recently saw
- FE devs don't really know how to configure FE in binary-package enviroment (logoMask vs logo_mask, where config file is located) therefore tough to help users struggling with new changes (i wrongly directed people to config.json initially)
- Having a switch to disable config.exs will lead to FE devs to recommend people to toggling that off and using config.json instead
just config.json and nothing else
Pros:
- easy configuration of FE itself
- can have separate configs for different FEs (possible to run stable FE + unstable FE for example)
- FE devs are happy
Cons:
- Need to uncouple FE from BE or make configuration less awkward (symlink?)