The releases.exs script allows developers to execute some elixir code in the release before any applications are started. This is a helpful way to make modifications to the Application env's sys.config values but because :init.restart/0 is called this means that the values placed into the Application env are subject to the restrictions of sys.config encoding.
One example of this is with erlang ssl options and ssl engines. Nerves devices can delegate ssh to be performed on a hardware security module through the use of ssl engines. The data structure that is used to configure ssl to use an ssl engine contains a reference which is unable to be serialized back to the sys.config. It would be helpful if we could evaluate the releases.exs file without rebooting or writing back to the sys.config file. Since these two aspects are closely related, the option name could be something like read_only: true.