Promoting a secondary domain to primary

It is possible to modify your primary domain in MDaemon, but when you do so, MDaemon will rename all users, aliases, lists and other goodies as well.  Sometimes this isn’t desired, one such case is to make an existing secondary domain into a primary domain.

Shut down MDaemon, backup the entire MDaemonApp directory, then open the MDaemon.ini file and find the following key:

[Domain]
DomainName=primary.com

Change the DomainName key to be your ‘new’ primary domain, then restart MDaemon and you should be good to go.

Make sure that your IP bindings, and account pruning are set the way you want as these settings follow the domain, and so the secondary domain’s settings will become the system-wide defaults when it’s converted to a primary domain.

One other thing you might need to update, the mdaemon@ system account *should* change automatically, but if anything goes wrong, do not try to change this account manually, instead just remove it from userlist.dat yourself, MDaemon will recreate it when MDaemon next starts. If you corrupt this account, any number of things will break.

Also, you need to manually update aliases pointing to the mdaemon@ account.

Disable WorldClient language and Theme selector

Some users want to completely disable the new option available to users to pick their language & theme at the WorldClient login.

This is an easy one, add either or both of these items into the [Default:Settings] section of \MDaemon\WorldClient\domains.ini:

HideLoginLanguage=Yes
HideLoginTheme=Yes

Note that users can still change their language and theme from within WorldClient’s option page as was possible prior to MDaemon 10.

Changing and overriding WorldClient user preferences

Lets say you wanted to force a specific setting for all WorldClient users.  For example, say you want to show all folders to all users, regardless of whether or not they are subscribed.  This is possible, if you’re willing to edit some configuration files.

Although it’s possible modify nearly any WorldClient setting this way, I’ll use this one as an example.

This particular setting is called “HideUnsubscribedFolders” and it potentially lives in \MDaemon\WorldClient\domains.ini in several places (potentially), and in each user’s $MAILBOX$\WC\user.ini

The domains.ini file is fairly complex in terms of INI files, but it’s fairly straightforward once you understand it’s format.

To set the default for all users who have not changed it themselves, look for the [default:UserDefaults] section and set the appropriate option (in this case HideUnsubscribedFolders=No)

The fun part is this: To force a setting to apply to all users and override their own settings, use “UserOverrides” instead of “UserDefaults” — In other words, look for or create the section [default:UserOverrides] and add the “HideUnsubscribedFolders=No” command.

To make a change apply to just one domain, use the domain name instead of “default”, for example, use [example.com:UserDefaults] or [example.com:UserOverrides]

For your own information, user options are stored in the “user.ini” file located in the “WC” subfolder of a user’s mailbox — Any option in the [User] section can be applied as a default or an override as desired.