#!/usr/bin/perl -w
###############################################################################
# AmphetaDesk                                           (c) 2000-2002 Disobey #
# morbus@disobey.com                      http://www.disobey.com/amphetadesk/ #
###############################################################################
# AmphetaDesk is a news aggregator - it sits on your desktop, downloads the   #
# latest news that interests you, and displays them in a quick and easy to    #
# use webpage. With thousands of channels for selection, AmphetaDesk can      #
# shave hours off your day when it comes to news reading. And you'll look     #
# smart to all your friends! Egotism never had it better!                     #
#                                                                             #
# NOTE: This is a "wrapper" script, whose primary usage is to create single   #
# simple binaries on systems that don't come with perl preinstalled (Win and  #
# Macs). It's only purpose should be to create a .exe file that will load in  #
# pure perl code located in our ~/lib directory. Keep this slim!              #
#####################################################                         #
                                                    #                         #
use lib;                                            #   Explicit for compile. #
use FindBin qw($Bin);                               #  Find out where we are. #
use File::Spec::Functions;                          #     Path handling love. #
BEGIN { unshift(@INC, catdir($Bin, "lib")); }       # And add to our lookups. #
                                                    #                         #
# these modules should be binaried to have a        #                         #
# smaller lib/. Note that @INC is set to our lib/   #                         #
# before it's set to use the binaried, so we can    #                         #
# always override/upgrade into lib/ if need be.     #                         #
use constant;                                       #    Declaring constants. #
use strict;                                         #        Do things right. #
use CGI;                                            #        Reads GET/POSTs. #
use Digest::MD5;                                    #      For unique hashes. #
use Getopt::Long;                                   #     Command line flags. #
use File::Basename;                                 #   Determines filenames. #
use HTTP::Date;                                     #   GMT Time Conversions. #
use HTTP::Daemon;                                   #       Webserver daemon. #
use IO::Select;                                     #        OOP of select(). #
use IO::Socket;                                     #     Port listening fun. #
use LWP;                                            #          Why, it's LWP! #
use LWP::Simple;                                    #         Simply amazing! #
use LWP::UserAgent;                                 #    User-rific! (pffff). #
use LWP::Protocol::ftp;                             #   Explicit for compile. #
use LWP::Protocol::http;                            #   Explicit for compile. #
use URI::ftp;                                       #   Explicit for compile. #
use URI::http;                                      #   Explicit for compile. #
                                                    #                         #
# modules that have OS specific XS code.            #                         #
use Compress::Zlib;                                 #  Compression routines.  #
use XML::Parser;                                    #      Super XML Parser.  #
# use Mac::InternetConfig;                          # for macintosh compile.  #
# use Win32::API;                                   #   for windows compile.  #
# use Win32::GUI;                                   #   for windows compile.  #
# use Win32::TieRegistry;                           #   for windows compile.  #
                                                    #                         #
# start amphetadesk.                                #                         #
use AmphetaDesk;                                    #   Burnt toast. Indeed.  #
init( "1.0" );                                      #  Location and version.  #
                                                    #                         #
#####################################################                         #
#   end of the wrapper script. main program starts in ~/lib/AmphetaDesk.pm    #
###############################################################################


 # Dedicated to all the companies who wait until a large user base becomes
 #   dependant on their freeware, then shafting said happy campers with
 #     mandatory payment for continued usage. I spit on your grave.


