#!/bin/sh MSG() { cat << EOF # Fetchsetup is a shell script for creating a .fetchmailrc file, that will be # used by the program "fetchmail" to connect to your mail domain and retrieve # your mail. # This script is linux specific, so it may not work on another system. # Kent Robotti (3-31-99) EOF } if [ "$(id -ur)" != "0" ]; then echo >&2 "$0: You need to be root [found $(id -un)] to run this script." echo >&2 "You could login as root" echo >&2 "You could also try one of these: # sudo fetchsetup" echo >&2 " # su root -c fetchsetup" exit 1 fi MSG echo -n "Continue? (Y/n) : " read ans if [ "$ans" = "n" -o "$ans" = "N" ]; then echo "Cancelled." exit 0 fi stty erase "^?" 2>/dev/null echo echo "Remote mail site?: pop.boo.com " echo -n "Remote mail site?: " read SITE echo echo "Protocol?: pop3 " echo "Protocol?: auto " echo "Choices: apop auto etrn imap imap-gss imap-k4 kpop pop2 pop3 rpop sdps" echo -n "Protocol?: " read PROTO echo echo "Remote username?: jerry " echo -n "Remote username?: " read USR echo echo "Remote password?: ? " echo -n "Remote password?: " read PASS echo echo -n "Create $HOME/.fetchmailrc file? (Y/n) : " read ans if [ "$ans" = "n" -o "$ans" = "N" ]; then echo echo "Fetchsetup cancelled." echo exit 0 fi echo 'poll "'$SITE'"' > $HOME/.fetchmailrc echo "protocol $PROTO" >> $HOME/.fetchmailrc echo 'username "'$USR'"' >> $HOME/.fetchmailrc echo 'password "'$PASS'"' >> $HOME/.fetchmailrc PROCMAIL=`type -all procmail | sed -n "1 p" | cut -d' ' -f3` SENDMAIL=`type -all sendmail | sed -n "1 p" | cut -d' ' -f3` if [ ! "$PROCMAIL" = "" ]; then echo 'mda "'$PROCMAIL -d %s'"' >> $HOME/.fetchmailrc MDA="1" elif [ ! "$SENDMAIL" = "" ]; then echo 'mda "'$SENDMAIL %s'"' >> $HOME/.fetchmailrc MDA="2" else MDA="3" fi echo >> $HOME/.fetchmailrc echo echo "This is your $HOME/.fetchmailrc file." chmod 600 $HOME/.fetchmailrc echo cat $HOME/.fetchmailrc if [ ! "$MAIL" = "" ]; then echo "Fetchmail will retrieve your mail and put it in:" echo "$MAIL" if [ ! -f "$MAIL" ]; then touch $MAIL 2>/dev/null chmod 600 $MAIL 2>/dev/null fi fi echo if [ "$MDA" = "1" ]; then echo "I put that (m)ail (d)elivery (a)gent in .fetchmailrc" echo "because i found it on your system, this doesn't mean" echo "it's correct or the one you want to use." echo echo "The first time you run fetchmail, you should run it" echo "this way: # fetchmail -k" echo elif [ "$MDA" = "2" ]; then echo "You seem to have sendmail, sendmail will be used" echo "as the (m)ail (d)elivery (a)gent for fetchmail." echo echo "WARNING! There's no way to know if sendmail is set up" echo "properly for local mail delivery, so the first time you" echo "run fetchmail run it this way: # fetchmail -k" echo echo "If the mail that fetchmail retrieves is not put in your mailbox," echo "you'll know that sendmail is not set up properly for the delivery" echo "of local mail." echo elif [ "$MDA" = "3" ]; then echo "I Don't know what (m)ail (d)elivery (a)gent you're going to use." echo "You need a to deliver the mail to you, after retrieves it." echo echo "Put the in your .fetchmailrc file, like below." echo "password $PASS" echo mda '"/usr/bin/procmail -d %s"' echo mda '"/usr/sbin/sendmail %s"' echo echo "The first time you run fetchmail, you should run it" echo "this way: # fetchmail -k" echo fi