wok annotate postfix/receipt @ rev 2369
fix chroot in post_install
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Fri Mar 06 10:53:07 2009 +0000 (2009-03-06) |
parents | 2b197a75fa24 |
children | 30a2f8a2ce99 |
rev | line source |
---|---|
pascal@1159 | 1 # SliTaz package receipt. |
pascal@1159 | 2 |
pascal@1159 | 3 PACKAGE="postfix" |
pascal@1159 | 4 VERSION="2.5.2" |
pascal@1159 | 5 CATEGORY="network" |
pascal@1159 | 6 SHORT_DESC="fast, easy to administer, and secure mailer." |
pascal@1159 | 7 MAINTAINER="pascal.bellard@slitaz.org" |
pascal@1159 | 8 TARBALL="$PACKAGE-$VERSION.tar.gz" |
pascal@1159 | 9 WEB_SITE="http://www.postfix.org/" |
pascal@1159 | 10 WGET_URL="ftp://mir1.ovh.net/ftp.postfix.org/postfix-release/official/$TARBALL" |
pascal@1166 | 11 BUILD_DEPENDS="db-dev openldap-dev pcre-dev openssl-dev" |
paul@2120 | 12 DEPENDS="libdb libldap pcre openssl slitaz-base-files cyrus-sasl" |
pascal@1195 | 13 CONFIG_FILES="/etc/postfix" |
pascal@1159 | 14 |
pascal@1159 | 15 # Rules to configure and make the package. |
pascal@1159 | 16 compile_rules() |
pascal@1159 | 17 { |
pascal@1159 | 18 |
pascal@1159 | 19 cd $src |
pascal@1159 | 20 make makefiles CCARGS="-DHAS_DB -DHAS_LDAP" AUXLIBS="-ldb -lldap -llber" |
pascal@1159 | 21 make |
pascal@1159 | 22 install_root=/home/slitaz/wok/postfix/postfix-2.5.2/_pkg \ |
pascal@1159 | 23 sh postfix-install -non-interactive |
pascal@1159 | 24 } |
pascal@1159 | 25 |
pascal@1159 | 26 # Rules to gen a SliTaz package suitable for Tazpkg. |
pascal@1159 | 27 genpkg_rules() |
pascal@1159 | 28 { |
pascal@1159 | 29 mkdir -p $fs/usr/share/licenses/ |
pascal@1159 | 30 cp -a $_pkg/usr/libexec $fs/usr |
pascal@1159 | 31 cp -a $_pkg/usr/bin $fs/usr |
pascal@1159 | 32 cp -a $_pkg/usr/sbin $fs/usr |
pascal@1159 | 33 cp -a $_pkg/etc $fs |
pascal@1195 | 34 awk 'BEGIN {n=0} /MUST/ {n++} /ALIASES/ {n++} { if (n==1) print }' \ |
pascal@1195 | 35 < $_pkg/etc/postfix/aliases > $fs/etc/postfix/aliases |
pascal@1203 | 36 while read keyword data; do |
pascal@1203 | 37 grep -q ^$keyword $fs/etc/postfix/main.cf && continue |
pascal@1203 | 38 mv $fs/etc/postfix/main.cf $fs/etc/postfix/main.cf.$$ |
pascal@1203 | 39 awk "BEGIN { scan=1 } /^#$keyword / { if (scan) { print \"$keyword $data\" ; scan=0 } } { print }" \ |
pascal@1203 | 40 < $fs/etc/postfix/main.cf.$$ > $fs/etc/postfix/main.cf |
pascal@1203 | 41 rm -f $fs/etc/postfix/main.cf.$$ |
pascal@1203 | 42 done << EOF |
pascal@1203 | 43 mydomain = localdomain |
pascal@1203 | 44 myorigin = localhost |
pascal@1203 | 45 mydestination = localhost, localhost.\$mydomain |
pascal@1203 | 46 mynetworks = 127.0.0.0/8 |
pascal@1203 | 47 alias_maps = hash:/etc/postfix/aliases |
pascal@1203 | 48 EOF |
pascal@1195 | 49 cp -a stuff/etc $fs |
pascal@1159 | 50 cp -a $_pkg/var $fs |
pascal@1159 | 51 mv $fs/etc/postfix/TLS_LICENSE $fs/usr/share/licenses/POSTFIX_TLS_LICENSE |
pascal@1159 | 52 mv $fs/etc/postfix/LICENSE $fs/usr/share/licenses/POSTFIX_LICENSE |
pascal@1159 | 53 cp -a stuff/etc/init.d $fs/etc |
pascal@1206 | 54 rm -f $fs/etc/postfix/post* |
pascal@1159 | 55 } |
pascal@1159 | 56 |
pascal@1159 | 57 # Pre and post install commands for Tazpkg. |
pascal@1159 | 58 post_install() |
pascal@1159 | 59 { |
pascal@1159 | 60 # adduser postfix if needed |
pascal@1159 | 61 if ! grep -q postfix $1/etc/passwd; then |
pascal@1159 | 62 echo -n "Adding user postfix..." |
pascal@1195 | 63 chroot $1/ adduser postfix -D -H -S -h /dev/null |
pascal@1159 | 64 status |
pascal@1159 | 65 fi |
pascal@1159 | 66 # addgroup postfix if needed |
pascal@1159 | 67 if ! grep -q postfix $1/etc/group; then |
pascal@1159 | 68 echo -n "Adding group postfix..." |
pascal@2369 | 69 chroot $1/ sh -c 'addgroup postfix && addgroup postfix postfix' |
pascal@1159 | 70 status |
pascal@1159 | 71 fi |
pascal@1159 | 72 # addgroup postdrop if needed |
pascal@1159 | 73 if ! grep -q postdrop $1/etc/group; then |
pascal@1159 | 74 echo -n "Adding group postdrop..." |
pascal@1159 | 75 chroot $1/ addgroup postdrop |
pascal@1159 | 76 status |
pascal@1159 | 77 fi |
pascal@1206 | 78 chown postfix $1/var/spool/postfix/* $1/var/lib/postfix |
pascal@1206 | 79 chgrp postdrop $1/var/spool/postfix/maildrop $1/var/spool/postfix/public \ |
pascal@1206 | 80 $1/usr/sbin/postdrop $1/usr/sbin/postqueue |
pascal@1206 | 81 chmod 2755 $1/usr/sbin/postdrop $1/usr/sbin/postqueue |
pascal@1206 | 82 chmod 2710 $1/var/spool/postfix/public |
pascal@1206 | 83 chmod 1730 $1/var/spool/postfix/maildrop |
pascal@1206 | 84 postalias $1/etc/postfix/aliases |
pascal@1159 | 85 cat <<EOF |
pascal@1159 | 86 ---- |
pascal@1159 | 87 Warning: you still need to edit myorigin/mydestination/mynetworks |
pascal@1159 | 88 parameter settings in /etc/postfix/main.cf. |
pascal@1159 | 89 See also http://www.postfix.org/STANDARD_CONFIGURATION_README.html |
pascal@1159 | 90 |
pascal@1159 | 91 To start $PACKAGE server you can run : |
pascal@1159 | 92 |
pascal@1159 | 93 /etc/init.d/$PACKAGE start |
pascal@1159 | 94 |
pascal@1159 | 95 Or add $PACKAGE to RUN_DAEMONS in /etc/rcS.conf |
pascal@1159 | 96 ---- |
pascal@1159 | 97 EOF |
pascal@1159 | 98 } |
pascal@1159 | 99 |
pascal@1159 | 100 post_remove() |
pascal@1159 | 101 { |
pascal@1159 | 102 deluser postfix |
pascal@1159 | 103 delgroup postfix |
pascal@1159 | 104 delgroup postdrop |
pascal@1159 | 105 } |