Requirements

You need to have the below installed to be able to use FetchYahoo effectively.

    * A mail client that can read from a mail spool or an mbox-formatted file
      (almost all Unix mail clients, Netscape Mail for Windows)
    * A working installation of Perl (comes with almost all Unix installations
      , needs to be installed for Windows - try ActivePerl
 ( http://www.activestate.com/Products/Download/Get.plex?id=ActivePerl&a=e )
    * Several Perl modules are required. The following module-collections
      contain the required modules: libwww-perl, html-parser, MIME-tools,
      libnet (for mail forwarding), Crypt-SSLeay (for https). Some users
      report additionally requiring the following: URI, MailTools, IO-stringy,
      MIME-Base64. There are several methods for getting these :
          o If you have an RPM-based distribution, search at RPMfind.net 
            ( http://rpmfind.net/linux/RPM/ ) for
            perl-MIME-tools, perl-html-parser, perl-libwww-perl, perl-libnet
            (for mail forwarding) and perl-Crypt-SSLeay (for https) and get
            the required RPMs for your distribution
          o For deb-based systems (properly configured), you can just do
            "apt-get -u install libnet libhtml-parser-perl libmime-perl
             libwww-perl libcrypt-ssleay-perl"
          o For windows, you can use the Perl Package Manager which comes with
            ActivePerl
          o If you have the CPAN perl module installed and working you can
            run "perl -MCPAN -e shell" and then install each of the following
            separately: HTML::Entities, LWP::UserAgent, MIME::Entity,
            Net:SMTP (for mail forwarding - use the libnet version),
            Crypt::SSLeay (for https)
          o Go to the CPAN repository ( http://www.cpan.org/ ). Go to the
            first search choice (Perl
            core and CPAN modules). Search for MIME-tools, libwww-perl,
            html-parser, libnet (for mail forwarding) and Net_SSLeay
            (for https). Follow the appropriate installation instructions.

Usage notes

    * Download the package and uncompress it (tar -xvzf fetchyahoo-x.y.tar.gz)
    * cd fetchyahoo-x.y ; chmod a+rx fetchyahoo.pl
    * Edit fetchyahoo.pl 
      OR copy fetchyahoorc to /etc/fetchyahoorc or ~/.fetchyahoorc and edit that
      OR just run fetchyahoo.pl from the commandline

    * Run fetchyahoo.pl
          0 --help to see all options
          o --newonly to download new msgs only
          o --nodelete to not delete messages after downloading
          o --configfile=/path/to/configfile to specify an alternate
              configuration file
          o --username=yahoousername to specify a Yahoo! username
          o --password=yahoopassowrd to specify a Yahoo! password
          o --spoolfile=/path/to/spoolfile to specify the file to send
              messages to
          o --quiet to suppress regular (non-error) messages
          o --noerrors to suppress error messages
          o --nodownload to only delete messages, do not download them
          o --inlinehtml to transmit HTML messages inline
          o --emptytrashbefore to empty trash before downloading messages
          o --emptytrashafter to empty trash after downloading messages
          o --logout to log out of Yahoo! when done
          o --repeatinterval=N to check for mail every N minutes
          o --nofromline to leave out the leading From_ line
          o --leaveunread to leave messages unread on the server
          o --getexternal to retrieve messages from external mailboxes as well
          o --folder=folder-name to download messages from folder-name instead
          o --nohttps to use an insecure plaintext login instead of HTTPS
          o --append to append messages to spool-file (default)
          o --overwrite to overwrite spool-file (instead of appending)
          o --pipe to pipe messages to a program instead of a spool-file
          o --proxyhost=proxy.host.org hostname to use for proxy [ DEFAULT off ]
          o --proxyport=N to use port N for proxy [DEFAULT 80 ]
          o --proxyuser=proxy-user username to use for proxy
              authentication[ DEFAULT none]
          o --proxypass=proxy-pass password to use for proxy
              authentication[ DEFAULT none]


    * Use your mail client to get mail from your spool or mbox file
    * optionally use cron or gkrellm ( http://www.gkrellm.net/ )
      to download messages periodically
    * e-mail author ( ravi_ramkissoon AT yahoo.com) with bugs and feature
      requests


NB: Options specified on the commandline take precedence over options
    specified in the configuration file, which in turn take precedence over
    options hardcoded within the fetchyahoo program file. Note the useHTTPS
    option to use SSL to connect securely !

Procmail instructions

    * use "/path/to/procmail" as your mail spool name
    * set spoolMode to "pipe"
    * if you want procmail to send mail to your local MTA use the following in
      your .procmailrc - ":0<return>! yourlocaluser@localhost"


Windows Instructions
This is reported to work fine under Windows (thanks to Shiraz Kanga for
pointing this out). It works with the Netscape mail client which uses the mbox
format (output by FetchYahoo) for its local folders. If you know of any other
Windows mail clients which will work, please tell me.

    * Download Perl for Windows (e.g. ActivePerl -
   http://www.activestate.com/Products/Download/Get.plex?id=ActivePerl&a=e )
    * Edit fetchyahoo.pl or the configuration file as shown above
    * Use Netscape Mail to get your mail from the mailbox you specified
    * e-mail author (ravi_ramkissoon AT yahoo.com) with bugs and feature
      requests

If you do not use Netscape Mail, you can try the following methods (these are
untested):

* For Eudora specify a new or existing Eudora mailbox as the spool file.
* For Outlook or Outlook Express, specify a temporary (existent but empty)
  file as the spool file, and then after fetchyahoo has completed, choose
  File -> Import -> Messages from Outlook (or Outlook Express) and choose the
  temporary file you specified. This has been tested successfully.
