]> Pileus Git - ~andy/fetchmail/commitdiff
Initial revision
authorEric S. Raymond <esr@thyrsus.com>
Tue, 9 Mar 1999 22:07:55 +0000 (22:07 -0000)
committerEric S. Raymond <esr@thyrsus.com>
Tue, 9 Mar 1999 22:07:55 +0000 (22:07 -0000)
svn path=/trunk/; revision=2407

contrib/fetchsetup [new file with mode: 0755]

diff --git a/contrib/fetchsetup b/contrib/fetchsetup
new file mode 100755 (executable)
index 0000000..6434d2c
--- /dev/null
@@ -0,0 +1,161 @@
+#!/bin/sh
+
+MSG() {
+cat << EOF
+
+# Fetchsetup is a shell script for creating a $HOME/.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 <krobotti@erols.com> (7-29-98)
+
+EOF
+}
+
+if [ ! "$UID" = "0" ]; then
+echo "NOTICE: * $LOGNAME * You need to be 'root' to run this script."
+echo "You could login: root"
+echo "You could also try this: # sudo fetchsetup"
+echo "You could also try this: # su -c fetchsetup"
+echo "This assumes the permissions on 'sudo' and 'su' are 4111."
+echo "To give 'su' or 'sudo' these permissions, you have to be root."
+echo "~# chown root.root sudo ; chmod 4111 sudo"
+echo "You also need a /etc/sudoers file for 'sudo'."
+exit 1
+fi
+
+MSG
+echo -n "Continue? (Y/n) : "
+read ans
+if [ "$ans" = "n" -o "$ans" = "N" ]; then
+echo "Cancelled."
+exit 0
+fi
+
+echo
+echo "Remote mail site?: foo.boo.com   <-Your service providers mail domain name.)"
+echo -n "Remote mail site?: "
+read SITE
+echo
+echo "Protocol?: pop3   <-My service provider uses the 'pop3' mail protocol.)"
+echo "Protocol?: auto   <-If not sure put: auto"
+echo "Choices: pop2 pop3 apop imap imap-k4 kpop rpop etrn auto" 
+echo -n "Protocol?: "
+read PROTO
+echo
+echo "Remote username?: jerry   <-My username or login is jerry.)"
+echo -n "Remote username?: "
+read USR
+echo
+echo "Remote password?: ?       <-What's the password for?: $USR"
+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
+
+if [ -s $HOME/.fetchmailrc ]; then
+mv $HOME/.fetchmailrc $HOME/.fetchmailrc.OLD
+fi
+
+echo 'poll "'$SITE'"' > $HOME/.fetchmailrc
+echo "protocol $PROTO" >> $HOME/.fetchmailrc
+echo 'username "'$USR'"' >> $HOME/.fetchmailrc
+echo 'password "'$PASS'"' >> $HOME/.fetchmailrc
+
+ps x >/tmp/grep.tmp 2>/dev/null
+
+if [ -s /tmp/grep.tmp ]; then
+if cat /tmp/grep.tmp | grep "sendmail: accepting" >/dev/null 2>&1 &&
+grep "A=procmail" /etc/sendmail.cf >/dev/null 2>&1 ; then
+MDA="1"
+fi
+fi
+
+rm -f /tmp/grep.tmp
+
+if [ ! "$MDA" = "1" ]; then
+if [ -x /usr/bin/procmail ]; then
+echo mda '"/usr/bin/procmail -d %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /usr/local/bin/procmail ]; then
+echo mda '"/usr/local/bin/procmail -d %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /usr/sbin/procmail ]; then
+echo mda '"/usr/sbin/procmail -d %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /bin/procmail ]; then
+echo mda '"/bin/procmail -d %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /sbin/procmail ]; then
+echo mda '"/sbin/procmail -d %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /bin/mail.local ]; then
+echo mda '"/bin/mail.local %s"' >> $HOME/.fetchmailrc
+MDA="2"
+elif [ -x /usr/bin/mail.local ]; then
+echo mda '"/usr/bin/mail.local %s"' >> $HOME/.fetchmailrc
+MDA="2"
+else
+MDA="3"
+fi 
+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: $MAIL"
+if [ ! -s "$MAIL" ]; then
+touch $MAIL 2>/dev/null
+chmod 600 $MAIL 2>/dev/null
+fi
+fi
+
+echo
+if [ "$MDA" = "1" ]; then
+echo "You seem to have sendmail running, 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 in the" 
+echo "/etc/sendmail.cf file, for delivery of local mail."
+echo 
+elif [ "$MDA" = "2" ]; 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" = "3" ]; then
+echo "I Don't know what (m)ail (d)elivery (a)gent you're going to use."
+echo "You need a <mda> to deliver the mail to you, after <fetchmail> retrieves it."
+echo
+echo "Put the <mda> in your .fetchmailrc file, like below."
+echo "password $PASS"
+echo mda '"/usr/bin/procmail -d %s"'
+echo mda '"/bin/mail.local %s"'
+echo
+echo "The first time you run fetchmail, you should run it"
+echo "this way. -> ~# fetchmail -k"
+echo
+fi