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!
# # # 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 .htpasswd
sudo
or equivalent. To add users the command
is:htpasswd .htpasswd newuser
passwd
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> |