I am using Mongooseim 3.2.0 and after compiling it from the source code, I can see the mongooseim.cfg at:
1. /MongooseIM/_build/prod/rel/mongooseim/etc/mongooseim.cfg
I can also see that in the docs here that there is another mongooseim.cfg at root level -
2. /MoongoosIM/rel/files/mongooseim.cfg
What is the difference between the two? My guess is path 1 file is copied to the path[2] after compiling the project.
Path 1 (
/MongooseIM/_build/prod/rel/mongooseim/etc/mongooseim.cfg) is the actual config file of MongooseIM once it's built. You can tell that byMongooseIM/_buildin the path - the_builddirectory doesn't exist in a fresh clone of the repository. To give you more context,/MongooseIM/_build/prod/rel/mongooseimis a self-contained Erlang release of MongooseIM. Change this file if you want to modify the config of this particular MongooseIM build - the changes will be lost after you rebuild.Path 2 (
/MoongoosIM/rel/files/mongooseim.cfg) is cloned as part of the repository - it's a config template. The specific values are defined inrel/*vars.configfiles and are substituted for the variables in the template file at build time depending on the Rebar3 profile in use (seerebar.configfor profiles). Change this file if you want your changes to remain after consecutive rebuilds of the project.To cut the long story short, when you run
make relthe files/MoongoosIM/rel/files/mongooseim.cfgand/MoongoosIM/rel/vars.configare used to create/MongooseIM/_build/prod/rel/mongooseim/etc/mongooseim.cfg.