wok annotate postgresql/receipt @ rev 25857

Fix reset menu.xml symlink when upgrade slitaz-configs
author Stanislas Leduc <shann@slitaz.org>
date Thu Aug 07 17:10:52 2025 +0000 (2 weeks ago)
parents df63c4ce07f8
children
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/"
pascal@25442 11 WGET_URL="https://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@24459 19 # What is the latest version available today?
pascal@24459 20 current_version()
pascal@24459 21 {
pascal@25604 22 wget -O - https://www.postgresql.org/community/ 2>/dev/null | \
pascal@25604 23 sed '/released/!d;s|.*sql-||;s|-rel.*||;s|-||g;q'
pascal@24459 24 }
pascal@24459 25
pascal@1149 26 # Rules to configure and make the package.
pascal@1149 27 compile_rules()
pascal@1149 28 {
pascal@1149 29 [ -d ../postgrpsql-$VERSION ] && cp -a ../postgrpsql-$VERSION/* .
slaxemulator@9700 30 cp $stuff/*.files-list .
pascal@1149 31 ./configure --prefix=/usr --infodir=/usr/share/info \
pascal@1149 32 --sysconfdir=/etc --includedir=/usr/include/postgresql --with-gnu-ld \
pascal@1149 33 --with-includes=/usr/include/readline --enable-integer-datetimes \
pascal@13320 34 --with-perl --with-python \
pascal@1149 35 --enable-thread-safety --with-system-tzdata=/usr/share/zoneinfo \
slaxemulator@6570 36 --libdir=/usr/lib/postgresql --mandir=/usr/share/man \
slaxemulator@6570 37 $CONFIGURE_ARGS &&
pascal@19891 38 make world &&
slaxemulator@11412 39 make DESTDIR=$DESTDIR install
slaxemulator@11412 40 make -C doc/src/sgml DESTDIR=$DESTDIR install-html
pascal@1149 41 }
pascal@1149 42
pascal@1149 43 # Rules to gen a SliTaz package suitable for Tazpkg.
pascal@1149 44 genpkg_rules()
pascal@1149 45 {
pascal@1149 46 mkdir -p $fs/usr/share $fs/usr/lib $fs/var/lib/pgsql \
pascal@1967 47 $fs/var/log/postgresql $fs/etc/pgsql.d
pascal@13320 48 cp -a $install/usr/bin $fs/usr
pascal@13320 49 cp -a $install/usr/lib/postgresql $fs/usr/lib
pascal@1149 50 rm -f $fs/usr/lib/postgresql/*a
pascal@13320 51 cp -a $install/usr/share/postgresql $fs/usr/share
slaxemulator@9701 52 cp -a $stuff/etc $fs
pascal@1149 53 ln -s /var/lib/pgsql/postgresql.conf $fs/etc
pascal@1149 54 chmod 700 $fs/var/lib/pgsql
slaxemulator@9701 55 cat $stuff/*.files-list | while read file; do
pascal@1149 56 [ -f $fs$file ] && rm -f $fs$file
pascal@1149 57 done
slaxemulator@8646 58
pascal@1149 59 }
pascal@1149 60
pascal@1149 61 # Pre and post install commands for Tazpkg.
pascal@1149 62 post_install()
pascal@1149 63 {
pascal@1149 64 # adduser postgres if needed
pascal@18730 65 if ! grep -q postgres: "$1/etc/passwd"; then
pascal@20319 66 echo
pascal@1149 67 echo -n "Adding user postgres..."
pascal@18730 68 chroot "$1/" adduser postgres -D -H -u 88 -h /var/lib/pgsql
pascal@18730 69 #[ -d "$1/var/lib/pgsql" ] && rm -f "$1/var/lib/pgsql"/.* "$1/var/lib/pgsql"/*
pascal@1149 70 status
pascal@1149 71 fi
pascal@1149 72 # addgroup postgres if needed
pascal@18730 73 if ! grep -q postgres: "$1/etc/group"; then
pascal@20319 74 echo
pascal@1149 75 echo -n "Adding group postgres..."
pascal@18730 76 chroot "$1/" sh -c 'addgroup -g 88 postgres'
pascal@1149 77 status
pascal@1149 78 fi
pascal@18730 79 [ ! -d "$1/var/lib/pgsql" ] && mkdir -p "$1/var/lib/pgsql"
pascal@18730 80 chroot "$1/" chown -R postgres.postgres /var/lib/pgsql /var/log/postgresql
pascal@1149 81 cat <<EOF
pascal@1149 82 ----
pascal@1152 83 postgres has superuser access.
pascal@1152 84 Configure /var/lib/pgsql/*.conf files.
pascal@1149 85 To start $PACKAGE server you can run :
pascal@1149 86
pascal@1149 87 /etc/init.d/$PACKAGE start
pascal@1149 88
pascal@1149 89 Or add $PACKAGE to RUN_DAEMONS in /etc/rcS.conf
pascal@1149 90 ----
pascal@1149 91 EOF
pascal@1149 92 }
pascal@1149 93
pascal@1149 94 post_remove()
pascal@1149 95 {
slaxemulator@8646 96 # when both user and group have the same id# and name
slaxemulator@8646 97 # both group and user will get removed with either delusr/delgroup
pascal@18730 98 chroot "$1/" deluser postgres
pascal@1149 99 }