When the public URL is not configured, GetMailDomain() now tries os.Hostname() before falling back to the hardcoded "vikunja" string, and logs a warning in both fallback cases.