Postfix (with MySQL support)

August 9th, 2006

After being unable to locate a Postfix RPM for Fedora Core 5 which had MySQL support compiled in, I ended up making one.

You can download it here: postfix-2.2.8-1.2.i386.rpm

It will require:

  • ldap-devel
  • mysql
  • mysql-devel
  • cyrus-sasl-devel
  • cyrus-sasl-libs
  • openssl-devel

And possibly others.

stopmotion 0.5.0

April 18th, 2006

I was compiling stopmotion 0.5.0 on my Fedora Core 5 machine and ran into a make problem:

src/technical/util.cpp: In static member function 'static const char* Util::checkCommand(const char*)':
src/technical/util.cpp:32: error: 'assert' was not declared in this scope
make: *** [util.o] Error 1

This problem was easily solved with this patch:

--- src/technical/util.cpp	2006-04-18 14:16:14.000000000 -0400
+++ ../util.cpp	2006-04-18 23:21:26.000000000 -0400
@@ -23,6 +23,7 @@
 #include <istream>
 #include <stdio.h>
 #include <stdlib.h>
+#include <cassert>

 using namespace std;

pam_mysql 0.7RC1

April 12th, 2006

I needed the latest version of pam_mysql for a project I’m working on, and ended up making a couple of RPMs that don’t appear to exist elsewhere.

Fedora Core 5

The CentOS 4 version has MD5 disabled… there is a problem with cyrus-sasl-devel package which provides the md5 headers.

CentOS 4

Sample configuration:

/etc/pam.d/system-auth

auth        sufficient    pam_mysql.so config_file=/etc/pam_mysql.conf

/etc/pam_mysql.conf

users.host=localhost;
users.database=mydb;
users.db_user=localhost;
users.db_passwd=localhost;
users.table=usertable;
users.user_column=username;
users.password_column=password;
users.password_crypt=plain;
users.disconnect_every_operation=true;
verbose=0;
log.enabled=1;
log.table=logins;
log.message_column=message;
log.pid_column=pid;
log.user_column=username;
log.host_column=machineip;
log.time_column=logintime;

aterr 0.9.2

March 16th, 2006

I recently started playing with aterr, which is a really cool, but lightweight, forum system. I found a couple of bugs, but I’m happy to report the developer jumped right on them and released a new version.

Here is the official description of aterr:

aterr is a threaded forum system, allowing registered visitors to express their opinions, discuss topics, and debate with other visitors. A threaded forum system differs from regular, flat forum systems in that once posted, a thread can fork, allowing visitors to reply directly to other posts. aterr also provides a customisable permissions system, the ability to nest forums, and moderation tools.

URL: http://chimaera.starglade.org/aterr/

Brief Tutoral on Installing thttpd 2.25b

March 25th, 2005

To install thttpd:

wget http://www.acme.com/software/thttpd/thttpd-2.25b.tar.gz
groupadd www
tar -zxf thttpd-2.25b.tar.gz
cd thttpd-2.25b
./configure --prefix=/usr/local/thttpd --mandir=/usr/local/man
make
make install

Then you can start it with:

/usr/local/thttpd/sbin/thttpd -p 80 -d /usr/local/thttpd/www

The -p option is the port you want the server to run on, and the -d option is for the root directory you want it to serve pages from.

Edit /usr/local/thttpd/www/index.html and insert the following:

<html>
	<head>
		<title>Welcome to thttpd 2.25b</title>
	</head>
	<body>
		<h1>Welcome to thttpd 2.25b</h1>
	</body>
</html>

WARNING!

If you do not specify the directory with -d, thttpd will default to the directory you ran the command from! This is a major security issue.

Building GD

December 29th, 2004

In attempting to compile gd-2.0.33 on one of my servers, I ran into a make problem. I ran configure just fine with the following options:

./configure –prefix=/usr/local/gd –enable-shared –with-x –with-png=/usr/local/libpng –with-jpeg=/usr/local/libjpeg –with-freetype=/usr/local/freetype

However, when I ran make I got this error:

gd_png.c:15:67: png.h: No such file

This means that even though configure reported finding libpng, make wasn’t linking to it. The solution was simple.

After running configure, edit line 231 of the generated Makefile, which should look like this:

CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/libjpeg/include

You simply need to append it with the location of libpng’s include directory:

CPPFLAGS = -I/usr/local/freetype/include/freetype2 -I/usr/local/freetype/include -I/usr/local/freetype/include -I/usr/local/libjpeg/include -I/usr/local/libpng/include

Then run make and make install and you should be set.