wok annotate postgresql/receipt @ rev 24395

created recipe for py3k-distutils-extra
author Hans-G?nter Theisgen
date Tue Feb 08 10:23:22 2022 +0100 (2022-02-08)
parents 970c5ec9a60a
children 2f230197370e
rev   line source
pascal@1149 1 # SliTaz package receipt.
pascal@1149 2
pascal@1149 3 PACKAGE="postgresql"
pascal@14029 4 VERSION="9.2.3"
pascal@1506 5 CATEGORY="misc"
pascal@1149 6 SHORT_DESC="SQL database system."
pascal@1149 7 MAINTAINER="pascal.bellard@slitaz.org"
pascal@15375 8 LICENSE="BSD"
pascal@1149 9 TARBALL="$PACKAGE-$VERSION.tar.bz2"
pascal@20669 10 WEB_SITE="https://www.postgresql.org/"
slaxemulator@11412 11 WGET_URL="ftp://ftp.postgresql.org/pub/source/v$VERSION/$TARBALL"
pascal@2347 12 CONFIG_FILES="/var/lib/pgsql/*.conf"
pascal@2347 13 DATABASE_FILES="/var/lib/pgsql"
pascal@1149 14
pascal@13320 15 DEPENDS="postgresql-client slitaz-base-files"
pascal@13320 16 BUILD_DEPENDS="zlib-dev readline-dev ncurses-dev bison flex perl libxslt \
pascal@13320 17 python-dev"
pascal@13320 18
pascal@1149 19 # Rules to configure and make the package.
pascal@1149 20 compile_rules()
pascal@1149 21 {
pascal@1149 22 [ -d ../postgrpsql-$VERSION ] && cp -a ../postgrpsql-$VERSION/* .
slaxemulator@9700 23 cp $stuff/*.files-list .
pascal@1149 24 ./configure --prefix=/usr --infodir=/usr/share/info \
pascal@1149 25 --sysconfdir=/etc --includedir=/usr/include/postgresql --with-gnu-ld \
pascal@1149 26 --with-includes=/usr/include/readline --enable-integer-datetimes \
pascal@13320 27 --with-perl --with-python \
pascal@1149 28 --enable-thread-safety --with-system-tzdata=/usr/share/zoneinfo \
slaxemulator@6570 29 --libdir=/usr/lib/postgresql --mandir=/usr/share/man \
slaxemulator@6570 30 $CONFIGURE_ARGS &&
pascal@19891 31 make world &&
slaxemulator@11412 32 make DESTDIR=$DESTDIR install
slaxemulator@11412 33 make -C doc/src/sgml DESTDIR=$DESTDIR install-html
pascal@1149 34 }
pascal@1149 35
pascal@1149 36 # Rules to gen a SliTaz package suitable for Tazpkg.
pascal@1149 37 genpkg_rules()
pascal@1149 38 {
pascal@1149 39 mkdir -p $fs/usr/share $fs/usr/lib $fs/var/lib/pgsql \
pascal@1967 40 $fs/var/log/postgresql $fs/etc/pgsql.d
pascal@13320 41 cp -a $install/usr/bin $fs/usr
pascal@13320 42 cp -a $install/usr/lib/postgresql $fs/usr/lib
pascal@1149 43 rm -f $fs/usr/lib/postgresql/*a
pascal@13320 44 cp -a $install/usr/share/postgresql $fs/usr/share
slaxemulator@9701 45 cp -a $stuff/etc $fs
pascal@1149 46 ln -s /var/lib/pgsql/postgresql.conf $fs/etc
pascal@1149 47 chmod 700 $fs/var/lib/pgsql
slaxemulator@9701 48 cat $stuff/*.files-list | while read file; do
pascal@1149 49 [ -f $fs$file ] && rm -f $fs$file
pascal@1149 50 done
slaxemulator@8646 51
pascal@1149 52 }
pascal@1149 53
pascal@1149 54 # Pre and post install commands for Tazpkg.
pascal@1149 55 post_install()
pascal@1149 56 {
pascal@1149 57 # adduser postgres if needed
pascal@18730 58 if ! grep -q postgres: "$1/etc/passwd"; then
pascal@20319 59 echo
pascal@1149 60 echo -n "Adding user postgres..."
pascal@18730 61 chroot "$1/" adduser postgres -D -H -u 88 -h /var/lib/pgsql
pascal@18730 62 #[ -d "$1/var/lib/pgsql" ] && rm -f "$1/var/lib/pgsql"/.* "$1/var/lib/pgsql"/*
pascal@1149 63 status
pascal@1149 64 fi
pascal@1149 65 # addgroup postgres if needed
pascal@18730 66 if ! grep -q postgres: "$1/etc/group"; then
pascal@20319 67 echo
pascal@1149 68 echo -n "Adding group postgres..."
pascal@18730 69 chroot "$1/" sh -c 'addgroup -g 88 postgres'
pascal@1149 70 status
pascal@1149 71 fi
pascal@18730 72 [ ! -d "$1/var/lib/pgsql" ] && mkdir -p "$1/var/lib/pgsql"
pascal@18730 73 chroot "$1/" chown -R postgres.postgres /var/lib/pgsql /var/log/postgresql
pascal@1149 74 cat <<EOF
pascal@1149 75 ----
pascal@1152 76 postgres has superuser access.
pascal@1152 77 Configure /var/lib/pgsql/*.conf files.
pascal@1149 78 To start $PACKAGE server you can run :
pascal@1149 79
pascal@1149 80 /etc/init.d/$PACKAGE start
pascal@1149 81
pascal@1149 82 Or add $PACKAGE to RUN_DAEMONS in /etc/rcS.conf
pascal@1149 83 ----
pascal@1149 84 EOF
pascal@1149 85 }
pascal@1149 86
pascal@1149 87 post_remove()
pascal@1149 88 {
slaxemulator@8646 89 # when both user and group have the same id# and name
slaxemulator@8646 90 # both group and user will get removed with either delusr/delgroup
pascal@18730 91 chroot "$1/" deluser postgres
pascal@1149 92 }