EMAIL

Disclaimer

I have consciously avoided network stuff in cLIeNUX, but the email HOWTO is horrid, cLIeNUX doesn't provide sendmail (but see below), and some help is better than no help. I hope.

INTRODUCTION

What is email? An email message is ASCII text with a header. The defining document on the header and so on is the Internet RFC822, "Request for comments", http://www.rfc-editor.org. See /help/rfc also. The one in there, rfc1122, is an overview of the major concepts of the Internet.

There are a couple fields an email header MUST have, and then there's a bunch of possible other header fields that various transmitters and viewers may use for copies, attachments and so on. The header acts as the "envelope" for the email massage. Email is 7 bit ASCII. That's why you have to uuencode binaries via email (and Usenet, which is similar.)

How you set up to handle email will depend on your needs and connectivity. Email works via slow and periodic connections like UUCP, but the unix view of email somewhat assumes a 24x7 connection to "the site". The terminology of the RFC's mentions MTA's, Mail Transfer Agents, and MUA's, Mail User Agents. The classico MTA is sendmail, which is not in cLIeNUX Core. The classico MUA is the mailcommand, which is in cLIeNUX, and is also known as mailx.

Consider a unix or other system with numerous users, dozens of login accounts. On such a system an MTA like sendmail is analagous to a town's post office. Each user has a mailbox. The MTA sends and recieves mail to and from the box it runs on via the various network interfaces the box is connected to. That could be a LAN, the Internet, a modem bank, and so on. Other MTA's and so on are like the post offices in other towns. The MTA talks to the other MTAs in bulk, and talks to the users local to it via thier mailbox forders and via MUA and other commands the users may invoke.

This is the world the documentation on email models. cLIeNUX is intended for a somewhat different world. A cLIeNUX box isn't intended to be a shell server. Not by default anyway. In a client-use perspective, your MTA that talks to the world for you is at your ISP usually. You probably have a POP account there, Post Office Protocol, or you may get your mail in a regular shell mailbox. I do. The point here is that I haven't configured cLIeNUX to serve as the local mail distributor for a number of users. Sendmail is a bit much in this context. Sendmail does all the things an MTA might ever be called on to do, such as UUCP, forwarding and so on. The cost though is that sendmail is a legendary configuration nightmare.

cLIeNUX provides putmail/pmail, which is a tight little POP/SMTP client. It gets and sends emails from a mailserver. It only does two protocols, and it runs as a command rather than a 24x7 service. It is capable of serving in lieu of sendmail as far as sending mails from a local-to-your-box MUA like mail (or elm), or a mailto: tag in a web document, which will cause your browser to look for sendmail or similar.

mailx is in cLIeNUX because it is the classic emailer, determined the format of a unix mail folder, and is small and versatile. The cLIeNUX PIRDE email schema is based on mailx folders. Really though, the MUA is analagous to walking out to your mailbox. It's not a big deal. Given a way to talk to a POP server, you can use just about any text utility to read emails. If they contain encoded binaries though, metamail enters the picture. Metamail handles non-text in emails. This process is based on /.et/mailcap and /.et/mime.types, which map media types to local programs to experience those media. Now you're all set. Well, you have a sound base, I hope.

Rick