# SliTaz package receipt.

PACKAGE="dovecot"
VERSION="2.1.1"
CATEGORY="network"
SHORT_DESC="Dovecot IMAP and POP3 Server."
MAINTAINER="l.lemarinel@gmail.com"
TARBALL="$PACKAGE-$VERSION.tar.gz"
WEB_SITE="www.dovecot.org"
WGET_URL="http://www.dovecot.org/releases/${VERSION%.*}/$TARBALL"
BUILD_DEPENDS="openssl-dev libcap-dev openldap-dev \
 libmysqlclient mysql-dev sqlite-dev pam-dev postgresql-dev"
DEPENDS="libssl libcap libmysqlclient libpostgresqlclient pam"


# Rules to configure and make the package.
compile_rules()
{
	cd $src
	./configure  --prefix=/usr \
		--sysconfdir=/etc \
		--localstatedir=/var \
		--libexecdir=/usr/lib/$PACKAGE \
		--with-ssl=openssl \
		--with-ldap=plugin \
		--with-sql=plugin \
		--with-mysql \
		--with-pgsql \
		--with-sqlite \
		$CONFIGURE_ARGS &&
	make && make install
#	make DESTDIR=$DESTDIR install
	
}

# Rules to gen a SliTaz package suitable for Tazpkg.
genpkg_rules()
{
	mkdir -p $fs/usr/lib \
		$fs/var/log/dovecot \
		$fs/var/run/dovecot \
		$fs/etc/ssl/misc
		
	
	cp -a $install/usr/sbin $fs/usr
	cp -a $install/usr/bin $fs/usr
	cp -a $install/usr/lib $fs/usr
	cp -a $install/etc $fs/
	
	cp -pa $stuff/init.d $fs/etc

	#cp -pa $fs/etc/dovecot/dovecot-example.conf $fs/etc/dovecot/dovecot.conf
	cp -pa $install/usr/share/doc/dovecot/example-config/* $fs/etc/dovecot/
	#cp -pa $src/doc/example-config/conf.d/*.conf $fs/etc/dovecot/conf.d
	#cp -pa $src/doc/example-config/conf.d/*.ext $fs/etc/dovecot/conf.d
	cp -pa $src/doc/*.cnf $fs/etc/ssl
	cp -pa $src/doc/mkcert.sh $fs/etc/ssl/misc/dovmkcert.sh
	
	# Remove archive file *.*a
	find $fs -name "*.*a" -exec rm -f {} \;
	
	# Fix perms
	chmod 755 $fs/etc/ssl/misc/*
	
	# Customising config.
	sed -i -e "s/^#default_vsz_limit.*/default_vsz_limit = 50M"/ \
		$fs/etc/dovecot/conf.d/10-master.conf

	sed -i -e "s!^#log_path =.*!log_path = /var/log/dovecot/dovecot.log"! \
		$fs/etc/dovecot/conf.d/10-logging.conf
	
	sed -i -e "s/^#listen.*/listen = *"/ \
		$fs/etc/dovecot/dovecot.conf
}

#nd post install commands for Tazpkg.
post_install()
{
	local user
	local group
	
	user=dovecot
	group=dovecot
	
	if ! grep -q $user $1/etc/passwd; then
		echo -n "Adding user/group $user..."
		chroot $1/ addgroup -S $group
		chroot $1/ adduser -S -D -H -G $group $user
		chroot $1/ adduser -S -D -H -G nogroup dovenull 
		status
	fi
	

	# Set perms for files and directories
	chroot $1/ chown -R ${user}.${group} /var/log/${user} \
		/var/run/${user} 

	cat <<EOF
----
To start $PACKAGE server you can run :

    /etc/init.d/$PACKAGE start

Or add $PACKAGE to RUN_DAEMONS in /etc/rcS.conf
----
EOF
}


post_remove()
{
	echo "Removing stalled files..."
	test -d /var/log/dovecot && rm -rf /var/log/dovecot
	test -d /var/run/dovecot && rm -rf /var/run/dovecot
	
	echo "Removing user/group daemon"
	deluser dovecot 
	deluser dovenull
}