Installation. List Wrangler - Mailing List Manager for GTK+ Part I. 1 Requirements. By Frank Cox. September 3,

Similar documents
Open Source Used In TSP

Preface. Audience. Cisco IOS Software Documentation. Organization

HALCoGen TMS570LS31x Help: example_sci_uart_9600.c

Ecma International Policy on Submission, Inclusion and Licensing of Software

ColdFusion Builder 3.2 Third Party Software Notices and/or Additional Terms and Conditions

iwrite technical manual iwrite authors and contributors Revision: 0.00 (Draft/WIP)

Ecma International Policy on Submission, Inclusion and Licensing of Software

IETF TRUST. Legal Provisions Relating to IETF Documents. Approved November 6, Effective Date: November 10, 2008

User Manual. Date Aug 30, Enertrax DAS Download Client

IETF TRUST. Legal Provisions Relating to IETF Documents. February 12, Effective Date: February 15, 2009

Intel Stress Bitstreams and Encoder (Intel SBE) 2017 AVS2 Release Notes (Version 2.3)

MUMPS IO Documentation

Copyright PFU LIMITED 2016

JPdfBookmarks Manual. by Flaviano Petrocchi

Definiens. Image Miner bit and 64-bit Editions. Release Notes

Migration Tool. Migration Tool (Beta) Technical Note

GoldSim License Portal A User s Guide for Managing Your GoldSim Licenses

About This Guide. and with the Cisco Nexus 1010 Virtual Services Appliance: N1K-C1010

SkyPilot OS Installation: Fedora Core 5

AccuTerm 7 Internet Edition Connection Designer Help. Copyright Schellenbach & Assoc., Inc.

US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

Enterprise Payment Solutions. Scanner Installation April EPS Scanner Installation: Quick Start for Remote Deposit Complete TM

System Log NextAge Consulting Pete Halsted

MagicInfo Express Content Creator

ANZ TRANSACTIVE MOBILE for ipad

Copyright PFU LIMITED

HYDROOBJECTS VERSION 1.1

Static analysis for quality mobile applications

Trimble. ecognition. Release Notes

Table of Contents Overview...2 Selecting Post-Processing: ColorMap...3 Overview of Options Copyright, license, warranty/disclaimer...

Open Source and Standards: A Proposal for Collaboration

Programming Style & Firmware Standards

openresty / array-var-nginx-module

Definiens. Image Miner bit and 64-bit Edition. Release Notes

Introduction. The Win32 OpenSSL Installation Group hopes that you enjoy this software and get many years of use out of it!

Package fst. December 18, 2017

NTLM NTLM. Feature Description

Open Source Used In Cisco Configuration Professional for Catalyst 1.0

HYDRODESKTOP VERSION 1.1 BETA QUICK START GUIDE

PageScope Box Operator Ver. 3.2 User s Guide

Denkh XML Reporter. Web Based Report Generation Software. Written By Scott Auge Amduus Information Works, Inc.

Packet Trace Guide. Packet Trace Guide. Technical Note

ProgressBar Abstract

HIS document 2 Loading Observations Data with the ODDataLoader (version 1.0)

Fujitsu ScandAll PRO V2.1.5 README

Use in High-Safety Applications

pyserial-asyncio Documentation

TWAIN driver User s Guide

Definiens. Tissue Studio Release Notes

Moodle. Moodle. Deployment Guide

Documentation Roadmap for Cisco Prime LAN Management Solution 4.2

Distinction Import Module User Guide. DISTINCTION.CO.UK

LoadMaster VMware Horizon (with View) 6. Deployment Guide

Open Source Used In c1101 and c1109 Cisco IOS XE Fuji

HYDRODESKTOP VERSION 1.4 QUICK START GUIDE

Flask-Sitemap Documentation

DAP Controller FCO

RSA Two Factor Authentication

Adobe Connect. Adobe Connect. Deployment Guide

File Servant User Manual

FLAME BOSS 200V2 & 300 MANUAL. Version 2.6 Download latest at FlameBoss.com/manuals

Conettix Universal Dual Path Communicator B465

SW MAPS TEMPLATE BUILDER. User s Manual

User Guide. Calibrated Software, Inc.

SORRENTO MANUAL. by Aziz Gulbeden

PTZ Control Center Operations Manual

TheGreenBow VPN Client ios User Guide

PyWin32ctypes Documentation

Grouper UI csrf xsrf prevention

Data Deduplication Metadata Extension

NEC Display Solutions MultiProfiler for Linux x64 Versions Installation Guide

Package fst. June 7, 2018

Explaining & Accessing the SPDX License List

The Cron service allows you to register STAF commands that will be executed at a specified time interval(s).

VMware vcenter Log Insight Manager. Deployment Guide

Installing AudioLinux (Alternative way with GUI)

Splunk. Splunk. Deployment Guide

KEMP Driver for Red Hat OpenStack. KEMP LBaaS Red Hat OpenStack Driver. Installation Guide

This file includes important notes on this product and also the additional information not included in the manuals.

Configuring Real Servers for DSR

NemHandel Referenceklient 2.3.1

DAP Controller FCO

Installing MyDNS And The MyDNSConfig Control Panel On Fedora 8

NemHandel Referenceklient 2.3.0

Bar Code Discovery. Administrator's Guide

Epic. Epic Systems. Deployment Guide

FLAMEBOSS 300 MANUAL

Watch 4 Size v1.0 User Guide By LeeLu Soft 2013

User Manual for Video Codec

RPly Documentation. Release Alex Gaynor

Hyper-V - Windows 2012 and 8. Virtual LoadMaster for Microsoft Hyper-V on Windows Server 2012, 2012 R2 and Windows 8. Installation Guide

This file includes important notes on this product and also the additional information not included in the manuals.

D3.5 Mockups of the CROWD4ROADS mobile app

notify2 Documentation

Trimble. ecognition. Release Notes

calio / form-input-nginx-module

iphone/ipad Connection Manual

Scott Auge

T-Invoicer User Guide

Internet Connection Guide

Transcription:

List Wrangler - Email Mailing List Manager for GTK+ By Frank Cox September 3, 2012 theatre@melvilletheatre.com Abstract Do you have a mailing list of people that you send periodic emails to? If so, List Wrangler is the program that you need to manage your mailing list and send out the emails. I maintain an email mailing list of people who want to be notiied when a new movie is booked at my movie theatre. I wrote List Wrangler for the purpose of managing that mailing list, and also as a way to learn GTK+ programming. This is my rst graphical program. Though I have been writing programs for several decades on a lot of dierent computers, everything I've written prior to this point has been text mode (ncurses and the like) or utility programs that don't have any user interface at all. Part I Installation 1 Requirements List Wrangler is a self-contained program that consists entirely of one single binary le. However, there are a few other things that must also be installed on your computer before it will actually work as intended. Since this is a GTK+ program, you must, of course, have GTK+ installed on your computer. I created this program using GTK2-2.18.9 on a Centos 6 computer. I have no idea how well it will work (if at all) on a computer that uses GTK+ version 3 since I don't currently have one of those. The program uses the SQLite database engine to handle the record-keeping functions so you will also need to have SQLite installed on your computer. 1

Most Linux computers will already meet the above two requirements, since GTK+ is the toolkit behind the Gnome desktop environment, and a great many programs use SQLite to store their data, including the Firefox web browser. Email is sent using the Cleancode Email program, which can be found here: http://www.cleancode.org/projects/email I also have a rpm version of Cleancode Email available for download from my website here: http://www.melvilletheatre.com/articles/el6 The database portion of List Wrangler will actually work if you don't have the email program installed, but it won't send out any email so it wouldn't be very useful. Read the documentation for the email program and get it set up to work with your mailserver rst. It is very likely that the only prerequisite program that you don't already have installed on your computer will be Cleancode Email. 2 Compile and Install List Wrangler is very easy to compile and install. Just un-tar the distribution archive (listwrangler-1.0.tar.bz2), cd into the listwrangler-1.0 subdirectory and type make. ˆ tar xvjf listwrangler-1.0.tar.bz2 ˆ cd listwrangler-1.0 ˆ make That's it. List Wrangler is a self-contained program and after compiling it you will nd one single binary le named listwrangler. That's the whole program. You can install it anywhere on your computer that you like. You can optionally type ˆ make install and the program will be installed in /usr/local/bin, and a copy of this documentation will be installed in /usr/share/doc. I also provide a rpm distribution le for List Wrangler. If you have a rpm-based system like Centos, Red Hat or Fedora, you can download and install the rpm if you wish, instead of using the tar.bz2 le. After downloading listwrangler-1.0-1.src.rpm, just type this command to compile it and create a binary rpm for installation on your system: ˆ rpmbuild rebuild listwrangler-1.0-1.src.rpm After compiling the src.rpm le you should have a binary i386.rpm or x86_64.rpm le (depending on your computer's architecture) which you can install as follows: ˆ rpm -i listwrangler-1.0-1.i386.rpm 2

or ˆ rpm -i listwrangler-1.0-1.x86_64.rpm Note that if you're using Centos 6 (RHEL 6, Scientic Linux 6, etc.) you can just download and install the pre-compiled binary listwrangler rpms from my website without having to worry about compiling them for your system. Part II Conguration After installation, and assuming that you installed listwrangler somewhere on your path like /usr/bin, /usr/local/bin or ~/bin (don't worry typing make install or installing the rpms will do this for you automatically), just type listwrangler at the command prompt to run the program. Or you can set up a launcher on your desktop panel, or whatever you like. The rst time you run the program it will create a subdirectory in your home directory named.listwrangler. So if your home directory is /home/username, then you will have a new subdirectory named /home/username/.listwrangler. The entire program conguration, database and activity log le are stored in /home/username/.listwrangler. Temporary les that are created during the actual email run (sending to the mailing list) are also stored in the same directory, but they should be automatically deleted immediately after they have been used. The program doesn't store any les anywhere else. List Wrangler automatically creates and saves a default conguration that I will guarantee is not the one that you actually want to use. So the rst thing that you will want to do is click on the File - Conguration menu to set up the program to meet your needs. 1. Your Email Address - the program requires your email address so it can send you the test emails, as well as include you in the subscriber's mail run if you select that option. 2. Email Premble - The inital text of the subscribers' email, which should probably state a reason why you are sending the email. 3. Final Body Line - The last line after the main email body (which is created with the Edit Email button, described later in this document). I use it to say Program subject to change without notice. 4. Email Postscript - The nal text in the subscribers' email. I use it to provide a description of how a subscriber can remove his name from my email mailing list if he decides that he doesn't want to receive any more notications. 5. 80-column wordwrap for email - This setting determines whether the emails that are sent by this program are word-wrapped at 80 characters, 3

or if they are sent as a single line per paragraph. Some email clients seem to have trouble word-wrapping long lines, and when you send a non-wordwrapped email the person trying to read it ends up with a very long single line and has to scroll back and forth to read the text. This is obviously very inconvenient. Having said that, I have made this an optional setting since a lot of people read their email on mobile devices these days and I'm not sure if word-wrapped email looks better or worse on small screens like someone's phone. To date, I personally leave the word-wrap turned on when sending emails. 6. Include yourself in mail run - Do you want to be emailed a copy of each message that you send to the subscribers? If so, activate this setting. This simply includes your email address (set in step 1 above) in the mailing list when you send an email to all subscribers. 7. Welcome Email Subject Line - When you add a new subscriber to the database, you can optionally send him an email welcoming him to the mailing list. This is where you set the subject line of that email. 8. Welcome Email Text - When you add a new subscriber to the database, you can optionally send him an email welcoming him to the mailing list. This is the body of that email. 9. Verication Email Subject Line - When you receive a request for a new subscription (through a form on your webpage or a paper form someone lled out or however you wish to do this) you can send a Verication Request by email to that person before actually adding him to the database. This serves two purposes: It veries that the person really does want to be on your mailing list, and it provides a method to verify that the email address you received is correct and that you can in fact send email to that person. This is where you set the subject line of that email. 10. Verication Email Text - When you receive a request for a new subscription (through a form on your webpage or a paper form someone lled out or however you wish to do this) you can send a Verication Request by email to that person before actually adding him to the database. This serves two purposes: It veries that the person really does want to be on your mailing list, and it provides a method to verify that the email address you received is correct and that you can in fact send email to that person. This is the body of that email. 11. Email Signature Line - This is the nal line of all emails that the program sends out. 12. Outbound Email Delay (seconds) - My mailserver is small and sending it several hundred emails all within the space of a few seconds would overload it. Therefore, I need to pace the emails as they are sent out. This is where you can set the number of seconds that the program waits before sending each email. The minimum delay is 1 second, so if you have 100 4

13. Save - If you don't save your new conguration, nothing changes. After saving, your conguration is stored in the /home/username/.listwrangler subdirectory as described at the start of this section. Part III Usage 3 Edit Email This is where you go to create the subjectline and body of the email that you want to send to all of your subscribers. The View Email button will create a dummy email using your data and show it to you in a window on your screen. The Test Email button will actually email the message to you. Once again, don't forget to save your data. The email the program actually sends out is based on the data that is currently saved in the database, not on what you see on your screen. If you don't save your data, then nothing has changed. 4 Send Email After editing your email as described in the previous section, this is where you go to actually send it to all of the subscribers and, optionally, to yourself, depending on your conguration setting described in the Conguration Section. After starting your mail run, there is nothing further to do until it's over. A log of all emails that have been sent is stored as a text le in your database and conguration directory /home/username/.listwrangler. Note that this text le will continue to grow over the course of time as you use the program so you may wish to delete or truncate it occasionally. 5 Verify When you receive a request for a new subscription (through a form on your webpage or a paper form someone lled out or however you wish to do this) you can send a Verication Request by email to that person before actually adding him to the database. This serves two purposes: It veries that the person really does want to be on your mailing list, and it provides a method to verify that the email address you received is correct and that you can in fact send email to that person. Enter the name and email address of your prospective new subscriber and hit the OK button. 5

6 New Subscriber This is where you go to add a new subscriber to the database. After entering their email address and hitting OK, you will be asked if you want to send the new subscriber the Welcome message using the subject line and body that you dened in the Conguration section. You can also send the new subscriber the last email that was sent to all of your subscribers, and can change the subject line of that email if you wish. NOTE: Changing the subject line of the last email message here will automatically save it. 7 Delete Subscriber On the (hopefully rare) occasions that someone decides that he doesn't want to be on your mailing list any more, this is where you go to remove him. Just enter the email address of the subscriber to be deleted. 8 List Subscribers This will open a new window holding a list of all of the subscribers that are currently in your database. Part IV License List Wrangler is FREE SOFTWARE. Copyright 2012 Frank Cox Redistribution and use in source and binary forms, with or without modication, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of the Melville Theatre nor the names of its contributors may be used to endorse or promote products derived from this software without specic prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WAR- RANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WAR- RANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 6

INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTI- TUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THE- ORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 7