wok annotate nconf/receipt @ rev 25794
created recipe for exo-lang
author | Hans-G?nter Theisgen |
---|---|
date | Wed Oct 23 16:19:52 2024 +0100 (6 weeks ago) |
parents | 73f36875e5a7 |
children |
rev | line source |
---|---|
erjo@8702 | 1 # SliTaz package receipt. |
erjo@8702 | 2 |
erjo@8702 | 3 PACKAGE="nconf" |
erjo@14454 | 4 VERSION="1.3.0-0" |
erjo@8702 | 5 CATEGORY="system-tools" |
erjo@8702 | 6 SHORT_DESC="Enterprise Nagios configurator" |
erjo@8702 | 7 MAINTAINER="erjo@slitaz.org" |
pascal@15584 | 8 LICENSE="GPL2" |
erjo@8702 | 9 TARBALL="$PACKAGE-$VERSION.tgz" |
pascal@25540 | 10 WEB_SITE="https://www.nconf.org/dokuwiki/doku.php" |
erjo@8702 | 11 WGET_URL="$SF_MIRROR/$PACKAGE/$TARBALL" |
erjo@8702 | 12 |
pascal@15584 | 13 DEPENDS="mysql php-apache nagios perl perl-dbi perl-dbd-mysql" |
pascal@15584 | 14 |
pascal@24402 | 15 # What is the latest version available today? |
pascal@24402 | 16 current_version() |
pascal@24402 | 17 { |
pascal@24402 | 18 wget -O - https://sourceforge.net/projects/nconf/files/nconf/ 2>/dev/null | \ |
pascal@25606 | 19 sed '/scope="row/!d;s|.*a href="|"https://sourceforge.net|;s| .*||;q' | xargs wget -O - 2>/dev/null | \ |
pascal@24402 | 20 sed '/scope="row/!d;s|.*/nconf/||;s|/.*||;q' |
pascal@24402 | 21 } |
pascal@24402 | 22 |
erjo@8702 | 23 # Rules to gen a SliTaz package suitable for Tazpkg. |
erjo@8702 | 24 genpkg_rules() |
erjo@8702 | 25 { |
erjo@8702 | 26 mkdir -p $fs/usr/share/nconf \ |
erjo@8702 | 27 $fs/var/lib/nconf \ |
erjo@8702 | 28 $fs/etc/nconf \ |
erjo@8702 | 29 $fs/etc/apache/conf.d \ |
erjo@8702 | 30 $fs/etc/nagios/import |
erjo@8702 | 31 |
pascal@14465 | 32 cp $stuff/apache2-nconf.conf $fs/etc/apache/conf.d |
erjo@8702 | 33 |
erjo@8702 | 34 # Copy files |
erjo@8702 | 35 cp -a $src/* $fs/usr/share/nconf |
erjo@8702 | 36 |
erjo@8702 | 37 # Move config, output, static_cfg, temp tor $fs/var/lib/nconf (FHS) |
erjo@8702 | 38 # and link them to $fs/usr/sahre/nconf |
erjo@8702 | 39 cp -a $fs/usr/share/nconf/config.orig/* $fs/etc/nconf |
erjo@8702 | 40 mv $fs/usr/share/nconf/output $fs/var/lib/nconf |
erjo@8702 | 41 mv $fs/usr/share/nconf/static_cfg $fs/var/lib/nconf |
erjo@8702 | 42 mv $fs/usr/share/nconf/temp $fs/var/lib/nconf |
erjo@8702 | 43 |
erjo@8702 | 44 chown -R www.www $fs/usr/share/nconf \ |
erjo@8702 | 45 $fs/var/lib/nconf |
erjo@8702 | 46 |
erjo@8702 | 47 ln -s /etc/nconf/authentication.php $fs/usr/share/nconf/config |
erjo@8702 | 48 ln -s /etc/nconf/main.php $fs/usr/share/nconf/config |
erjo@8702 | 49 ln -s /etc/nconf/mysql.php $fs/usr/share/nconf/config |
erjo@8702 | 50 ln -s /etc/nconf/nconf.php $fs/usr/share/nconf/config |
erjo@8702 | 51 ln -s /var/lib/nconf/output $fs/usr/share/nconf/ |
erjo@8702 | 52 ln -s /var/lib/nconf/static_cfg $fs/usr/share/nconf/ |
erjo@8702 | 53 ln -s /var/lib/nconf/temp $fs/usr/share/nconf/ |
erjo@8702 | 54 |
erjo@8702 | 55 mv $fs/usr/share/nconf/INSTALL $fs/var/lib/nconf |
erjo@8702 | 56 # Cleanup |
erjo@8702 | 57 rm -rf $fs/usr/share/nconf/UPDATE* |
erjo@8702 | 58 rm -f $fs/usr/share/nconf/INSTALL.php |
erjo@8702 | 59 |
erjo@8702 | 60 # Set default settings |
erjo@8702 | 61 sed -i -e 's/Nconf/nconf/' -e 's/link2db/nconf/' $fs/etc/nconf/mysql.php |
erjo@8702 | 62 sed -i -e '/NCONFDIR/ s|/var/www|/usr/share|' \ |
erjo@8702 | 63 -e '/NAGIOS_BIN/ s|/var/www/nconf/bin|/usr/bin|' $fs/etc/nconf/mysql.php |
erjo@8702 | 64 |
erjo@8702 | 65 # Fix add-ons scripts |
erjo@8702 | 66 sed -i -e 's|bash|sh|' -e '/OUTPUT_DIR/ s|/var/www/html|/usr/share|' \ |
erjo@8702 | 67 -e '/NAGIOS_DIR/ s|NAGIOS_DIR=.*|NAGIOS_DIR=\"/etc/nagios\"|' $fs/usr/share/nconf/ADD-ONS/deploy_local.sh |
erjo@8702 | 68 sed -i -e 's|bash|sh|' -e '/DBNAME/ s|NConf|nconf|' $fs/usr/share/nconf/ADD-ONS/history_cleanup.sh |
erjo@8702 | 69 } |
erjo@8702 | 70 |
erjo@8702 | 71 post_install() |
erjo@8702 | 72 { |
erjo@8702 | 73 local db=nconf |
erjo@8702 | 74 local db_user=nconf |
erjo@8702 | 75 local db_password=nconf |
erjo@8702 | 76 local sql_script='/var/lib/nconf/INSTALL/create_database.sql' |
erjo@8702 | 77 |
erjo@8702 | 78 # Minimal config for NConf. |
pascal@18730 | 79 if [ -z "$1" ]; then |
erjo@8702 | 80 if ( ! mysqladmin -s ping > /dev/null ); then |
pascal@20319 | 81 echo |
erjo@8702 | 82 echo "Starting MySQL server" |
erjo@8702 | 83 ( /etc/init.d/mysql start ; status ) || exit |
erjo@8702 | 84 sleep 4 #let the mysql daemon start |
erjo@8702 | 85 fi |
erjo@8702 | 86 if ( ! mysql -u root -Be 'show databases' | grep -q $db ); then |
pascal@20319 | 87 echo |
erjo@8702 | 88 echo -n "Create $db database" |
erjo@8702 | 89 mysql -Be "create database $db" ; status |
erjo@8702 | 90 # We suppose that $DB_USER user does not exist. |
erjo@8702 | 91 # It may be false. |
erjo@8702 | 92 echo -n "Create user $db_user with password $db_password" |
erjo@8702 | 93 mysql -Be "grant all privileges on $db.* to '"$db_user"'@'localhost' |
erjo@8702 | 94 identified by '"$db_password"'" ; status |
erjo@8702 | 95 # At last create the database for $PACKAGE. |
erjo@8702 | 96 echo -n "Create $db database schema." |
erjo@8702 | 97 mysql -u $db_user -p${db_password} -D $db < $sql_script ; status |
erjo@8702 | 98 fi |
erjo@8702 | 99 fi |
pascal@18707 | 100 true |
erjo@8702 | 101 } |
erjo@8702 | 102 |
erjo@8702 | 103 post_remove() |
erjo@8702 | 104 { |
pascal@18730 | 105 if [ -z "$1" ]; then |
erjo@8702 | 106 local db=nconf |
erjo@8702 | 107 local db_user=nconf |
erjo@8702 | 108 local db_password=nconf |
erjo@8702 | 109 |
erjo@8702 | 110 echo -n "Would you like to remove data and database files.(y/n) " |
erjo@8702 | 111 read answer |
erjo@8702 | 112 |
erjo@8702 | 113 case $answer in |
erjo@8702 | 114 y|Y) |
erjo@8702 | 115 echo -n "Removing data directories..." |
erjo@8702 | 116 rm -rf /var/lib/nconf ; status |
erjo@8702 | 117 if ( mysql -u root -Be 'show databases' | grep -q $db ); then |
erjo@8702 | 118 echo -n "Deleting $db database" |
erjo@8702 | 119 mysql -Be "drop database $db" ; status |
erjo@8702 | 120 # We suppose that $db_user user does not exist. |
erjo@8702 | 121 # It may be false. |
erjo@8702 | 122 echo -n "Delete user $db_user" |
erjo@8702 | 123 mysql -Be "delete from mysql.db where user='"$db_user"'" ; status |
erjo@8702 | 124 fi |
pascal@14465 | 125 unset answer |
erjo@8702 | 126 ;; |
erjo@8702 | 127 *) |
erjo@8702 | 128 ;; |
erjo@8702 | 129 esac |
pascal@14465 | 130 fi |
erjo@8702 | 131 } |