
Penguin Greetings is copyright © Edouard Lagache, 2003-2005. Penguin Greetings is released under the GNU General Public License, Version 2. For more information, see the COPYING file included with this software or visit: http://www.gnu.org/copyleft/gpl.html
The artistic content included with this software is also
      copyright © Edouard Lagache, 2003-2005. It is released
      under the Design Science License. For more information, see
      the DSL.txt file included with the software or visit: http://www.dsl.org/copyleft/.
      
Powered by Penguin Greetings web
      badge
      
If you use Penguin
      Greetings in your own web cards application. 
      Please give credit were credit is due by displaying the
      following web badge or something equivalent on your web
      site:
      
There are now quite a few different badges included in
      Penguin Greetings with the various secondary ecard sites, so
      take a look if you want something different.  Better
      still, if you make a nicer web badge, please share it with me
      so that I can spread the wealth! 
 ) the application will start without
    further intervention.  However, Penguin Greetings is a complex
    program with many options that can be configured. 
    Fortunately, the configuration file is in a relatively standard
    format (similar to the Apache web server) and has extensive
    comments.  A copy of it is included below for
    reference.
) the application will start without
    further intervention.  However, Penguin Greetings is a complex
    program with many options that can be configured. 
    Fortunately, the configuration file is in a relatively standard
    format (similar to the Apache web server) and has extensive
    comments.  A copy of it is included below for
    reference.  | # # # File: pgreet.conf ###################################################################### # Main configuration file for # # ** PENGUIN GREETINGS (pgreet) ** # # A Perl CGI-based web card application for LINUX and probably any # other UNIX system supporting standard Perl extensions. # # Edouard Lagache, elagache@canebas.org, April 2005 # For Penguin Greetings 0.9.9 release # # # The pgreet system uses the Perl Config::General module for # reading in configuration file information. The file format # is the same as for the Apache web server. The general # configuration module contains information for both the # CGI script and the system daemon. These are kept in # separate categories for simplicity of management. # ###################################################################### # $Id: pgreet.conf,v 1.31 2004/04/10 20:29:32 elagache Exp $ ### Directory and URL defaults # Server hostname (for virtual servers and whatnot) hostname = "www.your-host-name.net" # Path to server's cgi-bin directory cgidir = "/home/httpd/cgi-bin" # URL to server's cgi-bin directory cgiurl = "http://www.your-host-name.net/cgi-bin" # Path to image files. imagedir = "/home/httpd/htdocs/pgreet/images" # URL to images on server imageurl = "http://www.your-host-name.net/pgreet/images" # Path to directory where dbm databases are stored datadir = "/home/agent-workspace/pgreet/data" # Path to configuration files confdir = "/home/agent-workspace/pgreet/conf" # Path to HTML templates templatedir = "/home/httpd/htdocs/pgreet/templates" # Path to temporary files (usually: /tmp directory) tmpdir = "/tmp" # Directory to cards waiting to be sent at a later date scheduled_mail_queue = "/home/agent-workspace/pgreet/card_queue" ### Filenames # name of file containing htpasswd styled passwords (if needed) htpasswd_file = ".htpasswd" # Name of dbm file with used login names for looking up cards. card_name_db = "NameList.db" # Name of dbm file with login/password hashes. name_passwd_db = "NamePass.db" # Name of dbm file with actual card data. card_data_db = "CardData.db" # Prefix for files containing CGI state. state_file_prefix = "pgreet-state" # Prefix for swap files for database data. data_file_prefix = "pgreet-data" # User email access file (be careful with this file!) user_access = "user_access.txt" # Pgreetd log filename pgreet_log_file = "/var/log/pgreet.log" # HTML template suffix template_suffix = "tpl.html" # Default template for servers without login restrictions default_template = "default" # Default template for servers with login restrictions default_login = "default_login" # Template to be used to report miscellaneous errors default_error = "general_error" # Configuration file with card information cards_conf = "cards.conf" # Path to standby mode flag filename standby_mode = "/home/agent-workspace/pgreet/pgreet_on_standby" # Template to display in case Penguin Greetings is in standby mode standby_template = "pgreet_standby" # Default site parameters for Object-Oriented version of Embperl <Embperl_Object> object_addpath = "/home/httpd/htdocs/pgreet" object_base = "pgreet_template.epl" appname = "PgDefault" bypass_object = "Text_email.tpl.html" </Embperl_Object> ### Misc CGI script settings. # Is Penguin Greetings available only to login/password users? # login_only = 1 # Allow encoding of card number and password in URL. # (turn off - if you want users to come to your central page) allow_quick_views = 1 ### User and group to be used to send email (IMPORTANT!) # User ID for user to send email if not overridden. pgreet_uid = PgreetUID # Group ID for files to be sent later for email. pgreet_gid = PgreetGID # Prevent users from inserting any HTML tags in their messages no_html_tags = 1 ### SpeedyCGI Parameters # Script Timeout Timeout = 604800 # Max Runs - number of times script can be used before reloading. MaxRuns = 10000 ### SMTP server parameters <SMTP_server> # SMTP Server Host = "localhost" # SMTP identification string Hello = "" # SMTP LocalAddr and LocalPort LocalAddr = "" LocalPort = "" # SMTP Timeout SMTP_Timeout = 120 </SMTP_Server> ### Days ecards are kept on server. cards_remain = "forever" ### Additional user ecard websites # <User_Pgreets> # Edouard Lagache's personal card sites # elagache = ~/.pgreet/conf/pgreet.conf # The Penguin Greeting - Camel Collection secondary site # PgCamel = /home/agent-workspace/PgCamel/conf/PgCamel.conf # The Penguin Greeting - Holy Card secondary site (en-us) # PgSaint!en-us = /home/agent-workspace/PgSaint/en-us/conf/PgSaint.conf # The Penguin Greeting - Holy Card secondary site (fr-fr) # PgSaint!fr-fr = /home/agent-workspace/PgSaint/fr-fr/conf/PgSaint.conf # The Penguin Greetings - Christmas secondary ecard site (en-us) # PgXmas!en-us = /home/agent-workspace/PgXmas/en-us/conf/PgXmas.conf # The Penguin Greetings - Christmas secondary ecard site (fr-fr) # PgXmas!fr-fr = /home/agent-workspace/PgXmas/fr-fr/conf/PgXmas.conf # The Penguin Greetings - CA Poppy secondary ecard site (en-us) # PgPoppy!en-us = /home/agent-workspace/PgPoppy/en-us/conf/PgPoppy.conf # The Penguin Greetings - CA Poppy secondary ecard site (fr-fr) # PgPoppy!fr-fr = /home/agent-workspace/PgPoppy/fr-fr/conf/PgPoppy.conf # The Penguin Greetings - 4 seasons secondary ecard site (en-us) # Pg4Seasons!en-us = /home/agent-workspace/Pg4Seasons/en-us/conf/Pg4Seasons.conf # The Penguin Greetings - 4 seasons secondary ecard site (fr-fr) # Pg4Seasons!fr-fr = /home/agent-workspace/Pg4Seasons/fr-fr/conf/Pg4Seasons.conf # The Penguin Greetings - Sights of Seattle ecard site (en-us) # PgSeattle!en-us = /home/agent-workspace/PgSeattle/en-us/conf/PgSeattle.conf # The Penguin Greetings - Sights of Seattle ecard site (fr-fr) # PgSeattle!fr-fr = /home/agent-workspace/PgSeattle/fr-fr/conf/PgSeattle.conf # </User_Pgreets> ### Localization for websites <Localize PgXmas> default = PgXmas!en-us en-us = PgXmas!en-us fr-fr = PgXmas!fr-fr </Localize> <Localize PgSaint> default = PgSaint!en-us en-us = PgSaint!en-us fr-fr = PgSaint!fr-fr </Localize> <Localize PgPoppy> default = PgPoppy!en-us en-us = PgPoppy!en-us fr-fr = PgPoppy!fr-fr </Localize> <Localize Pg4Seasons> default = Pg4Seasons!en-us en-us = Pg4Seasons!en-us fr-fr = Pg4Seasons!fr-fr </Localize> <Localize PgSeattle> default = PgSeattle!en-us en-us = PgSeattle!en-us # fr-fr = PgSeattle!fr-fr </Localize> ########### Parameters below here unlikely to need changing. ############ ### Daemon performance tuning parameters. # Period to pause between sending cards created today (in seconds) today_pause = 5 # Period to pause between sending earlier scheduled cards (in seconds) batch_pause = 30 # Hour during the day to send queued cards (24 hour format.) batch_send_hour = 2 # Number of minutes to wait before deleting a CGI state file. delete_state = 60 # Number of seconds between deleting old state files # 600 seconds = 10 minutes. flush_pause = 600 # Hour during the day to purge old cards from databases purge_db_hour = 4 # Period to pause between purging old cards in databases (in seconds) purge_pause = 120 # Period in minutes between reloading configuration files # 360 minutes = 6 hours. reload_config = 360 ### Misc daemon parameters # Path and format of PID file for Initialization of Daemon PID_path = "/var/run" PID_file = "pgreetd.pid" | 
login_only forces
    Penguin Greetings
    to only allow users in the file htpasswd_file to
    connect to this server and only if they supply the correct
    login and password. user_access is a file
    containing names of email users on this server who have
    permission to send out ecards under their own email address
    instead of the pgreet user name. This poses additional security
    risks so do not enable this feature unless your server is well
    secured by other means.  See the section below on access control for more information on
    setting up htpasswd file and user_access.  New to version
    0.8.8 is direct access to the SMTP server of your choice see
    the section below for SMTP configuration
    options.  The option allow_quick_views
    changes the way URLs are encoded on the emails sent to
    recipients. This encodes the login and password of the card in
    the URL so that double-clicking on the card immediately brings
    up the card. This is more pleasant for the recipient by
    reducing one step for her/him. However, this reduces the
    screens that the recipient visits and in turn reduces the
    amount of potential advertising that the recipient sees. This
    option makes the most sense for personal sites or private ISPs
    running Penguin
    Greetings.  The system daemon: pgreetd also has some special
    options.  For example, pgreetd has extensive logging
    facilities. The command line option
    pgreet_log_file sets the location of the log
    file.  pgreetd is set up for operation on
    LINUX systems. It may be necessary to adjust the location of
    PID files and related parameters on other UNIX systems.
    pgreetd also has a number of parameters to adjust
    when files are processed. These can be adjusted to reduce the
    wait before cards are processed.  For more information on
    the SpeedyCGI configuration parameters, see the section below
    on running Penguin Greetings as a SpeedyCGI server.
| canebas.org [94]%
          PgreetConfTest utils/test_pgreet.conf Penguin Greeting conf file testing tool version: 0.9.1 Error in configuration file - details below - SMTP_Timeout Numerical value is less than allowed for this parameter - pgreet_gid Numerical value is less than allowed for this parameter - cgidir Directory does not exist on this system - pgreet_uid Numerical value is less than allowed for this parameter | 
| Parameter | Description | 
| Host | Hostname of the server
          to use.  Penguin Greetings ships with this set to
          localhost,
          although the installer will prompt you for an
          alternative. | 
| Hello | SMTP requires that you identify yourself. This option specifies a string to pass as your mail domain. If not given a guess will be taken. | 
| LocalAddr | The local address to use
          to connect to server (optional) | 
| LocalPort | The local port to use
          (default is 25) | 
| SMTP_Timeout | The period to wait
          before assuming a timeout (default 120 seconds) | 
.htpasswd.  You can create this file with the
    htpasswd
    utility that comes with the Apache web server.  You can
    get documentation on htpasswd using the man page that comes
    with the installation or you can look at the documentation online.pgreet user
    agent conf directory, you can create the a new
    .htpasswd file with the following command:htpasswd -c .htpasswdsudo or equivalent.  To add users the command
    is:htpasswd .htpasswd newuserpasswd command.  Repeat
    this procedure for all the users you wish to give access to
    Penguin Greetings on your machine.user_access can be set to point to a simple
    plain-text file of login names on your server which are allowed
    to send penguin greetings under their own email address (login)
    names instead of the generic pgreet agent email.  
    Penguin Greetings is shipped expecting to find the file
    user_access.txt in your conf
    directory as well.  The file format is simply a list of
    login names one name per line.  Warning, this is a
    dangerous option - Use at your own risk!| #### SpeedyCGI Configuration
          #### LoadModule speedycgi_module modules/mod_speedycgi.so # Limit backends to 10 SpeedyMaxBackends 10 # Use the scgi suffix for Speedy CGI AddHandler speedycgi-script .scgi | 
| Variable | Description | 
| Timeout | Number of seconds to
              allow script to remain idle before shutting it
              down. | 
| MaxRuns | Number of requests
              to allow before restarting script.  This is
              intended to prevent Perl memory leaks from eventually
              consuming sizable system resources. | 
| Penguin Greetings (version: 0.9.9-dev) has
              served 1679 cards on <www.canebas.org> as of
              Sat May 7 13:23:41 2005 Running in the following server environment: Embperl/2.0rc3 Apache/2.0.53 (Unix) mod_perl/1.999.21 Perl/v5.8.6 Also running as a SpeedyCGI interpreter. This process (PID: 15880) has processed 409 requests since Wed Apr 27 09:46:38 2005 | 
| Variable | Description | 
| SpeedyCGI | Boolean that if true
              indicates that pgreet.pl.scgi is
              indeed running as a SpeedyCGI persistent
              server.  The two variables below are only
              defined this this variable is set to true. | 
| StartTime | The UNIX time at
              which the persistent process started.  This can
              be converted using the Perl localtime function
              or what-not. | 
| Invocations | The number of CGI
              requests processed by this particular process. | 
| ### Additional user ecard
          websites <User_Pgreets> # Edouard Lagache's personal card sites elagache = "~/.pgreet/conf/pgreet.conf # The Penguin Greeting - Camel Collection secondary site PgCamel = "/home/agent-workspace/PgCamel/conf/PgCamel.conf" # The Penguin Greeting - Holy Card secondary site PgSaint = "/home/agent-workspace/PgSaint/conf/PgSaint.conf" </User_Pgreets> | 
| # # File: PgCamel.conf ###################################################################### # Main configuration file for # # ** PENGUIN GREETINGS (pgreet) Camel Collection** # # This is a sample configuration file for a secondary pgreet ecard # web site to be used with Penguin Greetings. Penguin Greeting is # a Perl CGI-based web card application for LINUX and probably any # other UNIX system supporting standard Perl extensions. # # Edouard Lagache, elagache@canebas.org, June 2003 # For Penguin Greetings 0.8.8 release # # # The pgreet system uses the Perl Config::General module for # reading in configuration file information. The file format # is the same as for the Apache web server. The general # configuration module contains information for both the # CGI script and the system daemon. These are kept in # separate categories for simplicity of management. # ###################################################################### # $Id: pgreet_install_guide.html,v 1.19 2003/07/17 21:25:33 elagache Exp $ ### Directory and URL defaults # Path to image files. imagedir = "/home/httpd/htdocs/pgreet/PgCamel/images" # URL to images on server imageurl = "http://www.canebas.org/pgreet/PgCamel/images" # Path to directory where dbm databases are stored datadir = "/home/agent-workspace/PgCamel/data" # Path to configuration files confdir = "/home/agent-workspace/PgCamel/conf" # Path to HTML templates templatedir = "/home/httpd/htdocs/pgreet/PgCamel/templates" ### Misc CGI script settings. # Is Penguin Greetings available only to login/password users? login_only = 0 # Allow encoding of card number and password in URL. # (turn off - if you want users to come to your central page) allow_quick_views = 1 # Prevent users from inserting any HTML tags in their messages no_html_tags = 1 | 
| ### Additional user ecard
          websites <User_Pgreets> # Edouard Lagache's personal card sites # elagache = ~/.pgreet/conf/pgreet.conf # The Penguin Greeting - Camel Collection secondary site PgCamel = /home/agent-workspace/PgCamel/conf/PgCamel.conf # The Penguin Greeting - Holy Card secondary site (en-us) PgSaint!en-us = /home/agent-workspace/PgSaint/en-us/conf/PgSaint.conf # The Penguin Greeting - Holy Card secondary site (fr-fr) PgSaint!fr-fr = /home/agent-workspace/PgSaint/fr-fr/conf/PgSaint.conf # The Penguin Greetings - Christmas secondary ecard site (en-us) PgXmas!en-us = /home/agent-workspace/PgXmas/en-us/conf/PgXmas.conf # The Penguin Greetings - Christmas secondary ecard site (fr-fr) PgXmas!fr-fr = /home/agent-workspace/PgXmas/fr-fr/conf/PgXmas.conf </User_Pgreets> | 
| ### Localization for
          websites <Localize PgXmas> default = PgXmas!en-us en-us = PgXmas!en-us fr-fr = PgXmas!fr-fr </Localize> <Localize PgSaint> default = PgSaint!en-us en-us = PgSaint!en-us fr-fr = PgSaint!fr-fr </Localize> | 
 )
)| # Provide dates when
              categories should be displayed in a given
              year <categories_schedule> New_Year = "12/26/2005-01/02/2006" St_Patrick = "03/05/2006-03/19/2006" Easter = "04/01/2006-04/18/2006" Mothers_day = "04/13/2005-05/10/2005" Fathers_day = "06/05/2005-06/21/2005" Halloween = "10/16/2005-11/03/2005" Thanksgiving = "11/06/2005-11/28/2005" Christmas = "11/19/2005-12/27/2005" </categories_schedule> |