diff options
author | Eugene Wissner <belka@caraus.de> | 2022-07-30 01:57:07 +0100 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2022-07-30 11:26:23 +0700 |
commit | 97b886208c4c814c3e17ff031a91cb9118ed9de9 (patch) | |
tree | 90129a329aafc6050ce6abc38576532881f59722 /network | |
parent | 6a607f7c7e403061218b03d7783a14073d2e75b0 (diff) |
network/postfix-pgsql: Added (postfix with support for PostgreSQL)
Signed-off-by: Dave Woodfall <dave@slackbuilds.org>
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'network')
-rw-r--r-- | network/postfix-pgsql/README | 7 | ||||
-rw-r--r-- | network/postfix-pgsql/doinst.sh | 14 | ||||
-rw-r--r-- | network/postfix-pgsql/postfix-pgsql.SlackBuild | 118 | ||||
-rw-r--r-- | network/postfix-pgsql/postfix-pgsql.info | 10 | ||||
-rw-r--r-- | network/postfix-pgsql/slack-desc | 19 |
5 files changed, 168 insertions, 0 deletions
diff --git a/network/postfix-pgsql/README b/network/postfix-pgsql/README new file mode 100644 index 000000000000..59211a1702fc --- /dev/null +++ b/network/postfix-pgsql/README @@ -0,0 +1,7 @@ +Postfix is Wietse Venema's mailer that started life as an alternative to +the widely-used Sendmail program. It attempts to be fast, easy to +administer, and secure, while at the same time, being sendmail +compatible enough to not upset existing users. Thus, the outside has a +sendmail-ish flavor, but the inside is completely different. + +This script adds PostgreSQL support to postfix. diff --git a/network/postfix-pgsql/doinst.sh b/network/postfix-pgsql/doinst.sh new file mode 100644 index 000000000000..91aaad7e226e --- /dev/null +++ b/network/postfix-pgsql/doinst.sh @@ -0,0 +1,14 @@ +config() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then + # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +config etc/postfix/dynamicmaps.cf.d/pgsql.cf.new diff --git a/network/postfix-pgsql/postfix-pgsql.SlackBuild b/network/postfix-pgsql/postfix-pgsql.SlackBuild new file mode 100644 index 000000000000..862b6dc4d61a --- /dev/null +++ b/network/postfix-pgsql/postfix-pgsql.SlackBuild @@ -0,0 +1,118 @@ +#!/bin/bash +# +# Copyright 2006, 2011 Alan Hicks, Lizella, GA +# Copyright 2010, 2011, 2013, 2014, 2015, 2016, 2017 Mario Preksavec, Zagreb, Croatia +# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN USA +# Copyright 2020, 2021, 2022 Eugen Wissner, Dachau, Germany +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 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. + +cd $(dirname $0) ; CWD=$(pwd) + +PRGNAM=postfix-pgsql +VERSION=${VERSION:-3.6.4} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +PKGTYPE=${PKGTYPE:-tgz} +SRCNAM=postfix + +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i586 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +# If the variable PRINT_PACKAGE_NAME is set, then this script will report what +# the name of the created package would be, and then exit. This information +# could be useful to other scripts. +if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then + echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" + exit 0 +fi + +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e # Exit on most errors + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $SRCNAM-$VERSION +tar xvf $CWD/$SRCNAM-$VERSION.tar.gz +cd $SRCNAM-$VERSION +chown -R root:root . +find -L . \ + \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ + -o -perm 511 \) -exec chmod 755 {} \+ -o \ + \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ + -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ + +PGSQLARGS="-I/usr/include/postgresql -DHAS_PGSQL" + +### CHANGING BUILT-IN DOCUMENTATION PATH SETTINGS +# +# If we try to use postfix-$VERSION in any of these paths, we'll get a compile +# failure: "error: too many decimal points in number" +# So we're pretty much forced to leave things as postfix expects them. +PATHARGS="'-DDEF_HTML_DIR=\"/usr/doc/postfix/html\"' \ + '-DDEF_MANPAGE_DIR=\"/usr/man\"' \ + '-DDEF_README_DIR=\"/usr/doc/postfix/readme\"'" + +make makefiles dynamicmaps=yes pie=yes shared=yes \ + shlib_directory=/usr/lib${LIBDIRSUFFIX}/postfix/MAIL_VERSION \ + CCARGS="$PGSQLARGS $PATHARGS" \ + AUXLIBS_PGSQL="-lpq -lz -lm" \ + OPT="$SLKCFLAGS" DEBUG="" +make + +mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/postfix/$VERSION +cp -a lib/postfix-pgsql.so $PKG/usr/lib${LIBDIRSUFFIX}/postfix/$VERSION/ + +strip --strip-unneeded $PKG/usr/lib${LIBDIRSUFFIX}/postfix/$VERSION/postfix-pgsql.so + +mkdir -p $PKG/etc/postfix/dynamicmaps.cf.d +echo "pgsql postfix-pgsql.so dict_pgsql_open" > $PKG/etc/postfix/dynamicmaps.cf.d/pgsql.cf.new + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE diff --git a/network/postfix-pgsql/postfix-pgsql.info b/network/postfix-pgsql/postfix-pgsql.info new file mode 100644 index 000000000000..f961be8e249b --- /dev/null +++ b/network/postfix-pgsql/postfix-pgsql.info @@ -0,0 +1,10 @@ +PRGNAM="postfix-pgsql" +VERSION="3.6.4" +HOMEPAGE="https://www.postfix.org/" +DOWNLOAD="http://cdn.postfix.johnriley.me/mirrors/postfix-release/official/postfix-3.6.4.tar.gz" +MD5SUM="fcc071c864d3b152a14b30b399ffda7f" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="postgresql" +MAINTAINER="Eugene Wissner" +EMAIL="belka@caraus.de" diff --git a/network/postfix-pgsql/slack-desc b/network/postfix-pgsql/slack-desc new file mode 100644 index 000000000000..47ad32def038 --- /dev/null +++ b/network/postfix-pgsql/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +postfix-pgsql: postfix-pgsql (postfix with support for PostgreSQL) +postfix-pgsql: +postfix-pgsql: Postfix attempts to be fast, easy to administer, and secure, while at +postfix-pgsql: the same time being sendmail compatible enough to not upset existing +postfix-pgsql: users. Thus, the outside has a sendmail-ish flavor, but the inside is +postfix-pgsql: completely different. +postfix-pgsql: +postfix-pgsql: This script adds PostgreSQL support to postfix. +postfix-pgsql: +postfix-pgsql: Homepage: http://www.postfix.org +postfix-pgsql: |