Showing posts with label perl. Show all posts
Showing posts with label perl. Show all posts

Wednesday, January 19, 2011

Postfix Log Entry Summarizer

Everyday I manage a Postfix mail server that handles emails from 20 mailing-lists. On days like this when there lot of email traffic, I keep an eye on the activity using pflogsumm perl script.

pflogsumm -e --problems_first -d today /var/log/maillog | pager

pflogsumm.pl is designed to provide an overview of postfix activity, with just enough detail to give the administrator a "heads up" for potential trouble spots.
http://jimsun.linxnet.com/postfix_contrib.html

Wednesday, December 17, 2008

X11::GUITest Build Errors

X11::GUITest and X11::GUITest::record CPAN modules help you control X11 applications using perl programming language and do some rather simple automation tasks.

But building these modules can be a pain, if don't know about the right dependencies like libxt-dev and libxtst-dev .

 # Build Fails  
cp GUITest.pm blib/lib/X11/GUITest.pm /usr/bin/perl /usr/share/perl5/ExtUtils/xsubpp  -typemap /usr/share/perl/5.8/ExtUtils/typemap -typemap typemap  GUITest.xs > GUITest.xsc && mv GUITest.xsc GUITest.c cc -c  -I/usr/X11R6/include -I/usr/X/include -Wall -O2   -DVERSION=\"0.21\" -DXS_VERSION=\"0.21\" -fPIC "-I/usr/lib/perl/5.8/CORE"  -DNDEBUG -DX11_GUITEST_ALT_L_FALLBACK_META_L GUITest.c GUITest.xs:41:27: error: X11/Intrinsic.h: No such file or directory GUITest.xs:42:28: error: X11/StringDefs.h: No such file or directory make: *** [GUITest.o] Error 1 
root@arky-laptop:~/.cpan/build/X11-GUITest-0.21-4tUEBB# less README  root@arky-laptop:~/.cpan/build/X11-GUITest-0.21-4tUEBB# make cc -c  -I/usr/X11R6/include -I/usr/X/include -Wall -O2   -DVERSION=\"0.21\" -DXS_VERSION=\"0.21\" -fPIC "-I/usr/lib/perl/5.8/CORE"  -DNDEBUG -DX11_GUITEST_ALT_L_FALLBACK_META_L GUITest.c GUITest.xs:41:27: error: X11/Intrinsic.h: No such file or directory GUITest.xs:42:28: error: X11/StringDefs.h: No such file or directory
 make: *** [GUITest.o] Error 1  

# found libxt-dev provides the needed header files  
/usr/include/X11/Intrinsic.h    libxt-dev /usr/include/X11/StringDefs.h    libxt-dev 
 
# install the libxt-dev  
$ sudo apt-get install libxt-dev 
[sudo] password for arky:  
Reading package lists... Done 
Building dependency tree        
Reading state information... 
Done 
The following NEW packages will be installed:   libxt-dev 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 
Need to get 482kB of archives. After this operation, 1319kB of additional disk space will be used. 
Get:1 http://in.archive.ubuntu.com hardy/main libxt-dev 1:1.0.5-3 [482kB] Fetched 482kB in 44s(10.9kB/s)                                                 
Selecting previously deselected package libxt-dev. (Reading database ... 145581 files and directories currently installed.) Unpacking libxt-dev (from .../libxt-dev_1%3a1.0.5-3_i386.deb) ... Setting up libxt-dev (1:1.0.5-3) ...   

## Second built error  

LD_RUN_PATH="/usr/lib" cc  -shared -L/usr/local/lib GUITest.o  -o blib/arch/auto/X11/GUITest/GUITest.so  \     -lXtst -lXext -lX11   \     /usr/bin/ld: cannot find -lXtst collect2: ld returned 1 exit status  # the shared object is provided by libxtst-dev  /usr/lib/libXtst.so    libxtst-dev  


# Install the libxtst-dev  
$ sudo apt-get install libxtst-dev 
Reading package lists... Done 
Building dependency tree        
Reading state information... Done 
The following extra packages will be installed:   x11proto-record-dev The following NEW packages will be installed:   libxtst-dev x11proto-record-dev 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. 
Need to get 20.8kB of archives. After this operation, 156kB of additional disk space will be used. 
Do you want to continue [Y/n]? y 
Get:1 http://in.archive.ubuntu.com hardy/main x11proto-record-dev 1.13.2-4ubuntu1 [6022B] 
Get:2 http://in.archive.ubuntu.com hardy/main libxtst-dev 2:1.0.3-1 [14.8kB]    Fetched 20.8kB in 21s (964B/s)                                                  
Selecting previously deselected package x11proto-record-dev. (Reading database ... 145890 files and directories currently installed.) 
Unpacking x11proto-record-dev (from .../x11proto-record-dev_1.13.2-4ubuntu1_all.deb) ... 
Selecting previously deselected package libxtst-dev. 
Unpacking libxtst-dev (from .../libxtst-dev_2%3a1.0.3-1_i386.deb) ... 
Setting up x11proto-record-dev (1.13.2-4ubuntu1) ... 
Setting up libxtst-dev (2:1.0.3-1) ...

Thursday, October 30, 2008

Free Software User Group, Bangalore Wiki Relaunched

Free Software User Group, Bangalore now has a brand new site. It is built using Media wiki , which powers the Wikipedia project. The logo designed by Hiran Venugopalan is beautiful, its type and composition is just perfect. Kudos to Anivar and all the those who contributed towards this long pending task.

The old website was developed using oddmuse. It was generously hosted by deeproot for years, we had to turn off the wiki editing after I couldn't keep up with spam busting tasks anymore. Vikram has been bugging me for years to port it a better platform, it never really materialized until the task was taken up with gusto in the last gnu(s) grazing.

Thursday, January 31, 2008

How to Block Ads With Adzap

Cameron Simpson’s Adzap (http://adzapper.sourceforge.net) is a Perl program written to match and replaces those annoying web ads.It uses the redirector option of Squid proxy-caching server (http://www.squid-cache.org), a fast and efficient caching server.

How does Adzap work?

Squid proxy server is designed to cache web content as clients requests,it checks for presence of local copy of request, if found servers it directly.This not only saves bandwidth usage but accelerates web speed.

Squid redirects requested URL to adzapper program which tries to identify ads,unrequested pop-up widows and other unsolicited content using regular expressions.

Most of content such as graphics,flash animations,client-side scripts and executables are matched and quietly replaced.Adzap returns sanitized request back to squid which servers it.This increases the surfing speeds considerably even if you are on boardband connection.

Most commercial web advertisers track user preferences and surfing habits.Adzap protects your privacy by efficiently blocking such ads from loading.

How do you install Adzap?

You can download the latest version of Adzap from http://adzapper.sourceforge.net .

Uncompress the the Adzap files to your /usr/local/ directory.If you use any other directory,please do change the commands in this article.

tar zxvf adzap-20030726.tar.gz -C /usr/local/

Change your directory to /usr/local/adzap.All the adzap programs are found under the scripts directory.

bq. cd /usr/local/adzap/

Edit the scripts/wrapzap file and set the zapper to squid_redirect.You can customize the Adzap to suit your needs in this file.

zapper=/usr/local/adzap/scripts/squid_redirect

Configure the squid to use Adzap as its redirector program.The squid configuration file in most *nix’s is /etc/squid/squid.conf.Set the redirect_program option as mentioned.

redirect_program /usr/local/adzap/scripts/wrapzap

Restart the squid server.

/etc/init.d/squid restart

Check the /var/log/squid/cache.log for any errors.Start your favorite browser and point it towards your squid server and enjoy ad free surfing.

First Published long time ago on the web.

Popular Posts