The client really is little more than a scheduler for a unix mail-fetching command that you provide (it is not itself a POP or IMAP client; you need to get a mail-fetching client, on which see below). You configure the client by telling it what unix command will get your new mail from your remote server, and (optionally) what remote command will fetch an entire remote mailbox (including old messages), and replace a local mailbox with it.
One convenient feature is that the Net client knows about PopImap and vice versa, so that if both clients are used, PopImap doesn't try to check for mail when the Net line is down, and when the Net line goes up, Net schedules the periodic PopImap new mail checking to start right away (so that your new mail gets to you quickly).
PopImap knows about Biff, too. If both clients are loaded, then by default, when PopImap issues the unix command to look for new mail in the remote mailbox, it also signals Biff to heighten vigilance for a while in checking the local mailbox for new mail (i.e., to check more often).
With the Net, Biff, and PopImap clients running, then, all you have to do to check your mail on a remote server via dial-in access is to click on the Net button (which dials and sets up the network link). Soon after the Net button has indicated "Net up", the Biff button will indicate "New Mail" (and beep and pop up a list new messages if so configured), if you have any.
Here's how I use it: my mail comes to an imap server (which in my case actually is my office machine). I want my office (linux) machine (with an imap serving daemon) to have my real mail archives, but I also want to get my new mail on my home (linux) machine, and I prefer that it get there by showing up in my spool file. So I use a nondestructive IMAP fetching program which copies from the remote mailbox (my spool file on the remote machine) all messages not marked "Seen", and then marks them "Seen". The "Seen" designations are in my case for IMAP's use only---my mailreader (exmh) ignores them. Since my office machine has my "official" mailboxes, I use another IMAP utility when I want to set my home mailboxes (especially my mh "inbox") to be identical with my office mailboxes. The PopImap client adds a popup menu command to do this (for just one mailbox, as it is coded now). The end effect is a pretty nice solution to the problem of dealing with mail on remote machines without straightjacketing you into using a mail agent you don't like.
That's just one way of handling just one situation. The PopImap
client also would be very nice for anyone who reads mail on just one
machine (getting the mail from a server); for that purpose, you would
use any standard destructive copy program (imapmove, say, or popclient
without the -k option).
Use
In your ~/.tkgoodstuffrc file you will need to set variables that
indicate how frequently to look for new mail on the remote server, as
well as the unix command that does the looking, and (optionally) the
unix command that copies the entire remote mailbox over the local one
(replacing it). The real work comes in setting up these unix
commands, which may require finding some programs you don't yet have.
Where to Find POP and IMAP Fetching
Utilities
Here I have a decided lack of expertise. I would very much appreciate
pointers to stuff I don't know about.
set XXXX YYYYHere are the variables relating to PopImap and their default values:
Variable | Function | Possible Values | Default |
---|---|---|---|
PopImap_interval | How often to check for new mail on remote server | (number of seconds) | 180 |
PopImap_offset | How long after program execution to wait before first check | (number of seconds) | 2 |
PopImap_command | Command to get new messages on remote server | (any unix command) | "" |
PopImap_fetch_command | Command to entirely replace local mailbox with remote one | (any unix command) | "" |
As an example, here is an excerpt from my home .tkgoodstuffrc:
set PopImap_user markcrim set PopImap_host merv.philosophy.lsa.umich.edu set PopImap_password notreally set PopImap_command "echo -e \"$PopImap_user\\n$PopImap_password\" \ | imapupdate -verbose $PopImap_host" set PopImap_fetch_command get-remote-mailboxHere, I define three new variables and use them in defining the PopImap_command. The command "get-remote-mailbox" is just a shell script that calls imapcopy. To be honest, this is not quite what I do. I get a little fancier, with "if" structures to tailor the parameters to the current user (so that my wife can use the same .tkgoodstuffrc file, and so that when I am running as root, markcrim's mail gets checked). This sort of thing is straightforward with a little tcl knowledge. Sep 14, 1995. Mark Crimmins markcrim@umich.edu