Marsmail Tools
Legacy tools for user provisioning, mail handling, and workstation support in a Mars/Linux server environment.
This repository preserves a historical toolkit originally used to manage user accounts, Pegasus Mail workflows, and supporting admin utilities in a mixed Linux/DOS network setup.
Features
This repository includes tools for:
- user account creation and removal
- mail conversion for Pegasus Mail clients
- outgoing mail posting back to Unix systems
- quota and expiry handling
- login and notification scripts
- user application processing
- default homepage generation
Documented components include: marsmail.exe, newuser.pl, ohmasteruser, nomasteruser, ohpostme, ohquota, ohmail, ohmessage, ohform.htm, pmail.bat, pmgate.sys, pmdflts.ini, and wwwhomepage.
What is Marsmail?
Marsmail is described in the original documentation as a Pascal-based frontend that translates Unix mail files into a format readable by Pegasus Mail. The surrounding scripts automate account setup, notifications, quota reporting, and mail gateway tasks.
Repository Goals
This project is useful for:
- preserving historical sysadmin tooling
- studying legacy mail gateway workflows
- exploring early campus/lab network automation
- adapting older operational ideas for modern migrations
Included Files
A few notable files in this repository:
marsmail.exe— mail conversion utilitypmail.bat— Pegasus Mail launcher/helperpmgate.sys— Pegasus Mail gateway configurationpmdflts.ini— default Pegasus Mail settingsohform.htm— HTML user application formnewuser.pl— form processor for new accountsohmasteruser— account creation helpernomasteruser— account removal and cleanup helperohpostme— outgoing mail handoff scriptwwwhomepage— default homepage generator
These names are taken from the original package documentation.
Build and Install
A provided CMakeLists.txt shows an install step that deploys several runtime files, including:
marsmail.exepmail.batpmgate.sysohlogscr.batpmdflts.ini
into a public installation directory. It also defines Linux-specific compiler flags and version macros.
Example:
install(FILES marsmail.exe pmail.bat pmgate.sys ohlogscr.bat pmdflts.ini
DESTINATION ${MARS_NWE_INSTALL_FULL_FILEDIR}/SYS/public)
Legacy Environment
The original documentation assumes a historical environment with:
- a Linux-based Mars server
- DOS workstations
- Pegasus Mail clients
- Unix mailbox storage
- custom login scripts and mapped drives
This software is not plug-and-play on modern systems and will likely require adaptation.
User Application Form
The repository includes an HTML application form for requesting a user account. It collects applicant details, preferred usernames, skill levels, operating system preferences, support expectations, and requested services. The form is intended to submit data to newuser.pl.
Status
This is a legacy preservation project.
It is best treated as:
- archival software
- reference material
- migration input
- a starting point for modernization
Security Warning
These tools were designed for an older environment and may contain assumptions that are unsafe on modern systems.
Review carefully before running anything, especially code related to:
- user creation and deletion
- mailbox processing
- file permissions
- web publishing
- shell or batch execution
The original documentation also recommends making backups before changing account-related data.
License
The original documentation states that the package is distributed under the GNU Public License and references a COPYING file for details.
Credits
Originally credited to:
- Eddie Dunckley
- Gert Cronje