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"
|
erjo@8702
|
10 WEB_SITE="http://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
|
erjo@8702
|
15 # Rules to gen a SliTaz package suitable for Tazpkg.
|
erjo@8702
|
16 genpkg_rules()
|
erjo@8702
|
17 {
|
erjo@8702
|
18 mkdir -p $fs/usr/share/nconf \
|
erjo@8702
|
19 $fs/var/lib/nconf \
|
erjo@8702
|
20 $fs/etc/nconf \
|
erjo@8702
|
21 $fs/etc/apache/conf.d \
|
erjo@8702
|
22 $fs/etc/nagios/import
|
erjo@8702
|
23
|
pascal@14465
|
24 cp $stuff/apache2-nconf.conf $fs/etc/apache/conf.d
|
erjo@8702
|
25
|
erjo@8702
|
26 # Copy files
|
erjo@8702
|
27 cp -a $src/* $fs/usr/share/nconf
|
erjo@8702
|
28
|
erjo@8702
|
29 # Move config, output, static_cfg, temp tor $fs/var/lib/nconf (FHS)
|
erjo@8702
|
30 # and link them to $fs/usr/sahre/nconf
|
erjo@8702
|
31 cp -a $fs/usr/share/nconf/config.orig/* $fs/etc/nconf
|
erjo@8702
|
32 mv $fs/usr/share/nconf/output $fs/var/lib/nconf
|
erjo@8702
|
33 mv $fs/usr/share/nconf/static_cfg $fs/var/lib/nconf
|
erjo@8702
|
34 mv $fs/usr/share/nconf/temp $fs/var/lib/nconf
|
erjo@8702
|
35
|
erjo@8702
|
36 chown -R www.www $fs/usr/share/nconf \
|
erjo@8702
|
37 $fs/var/lib/nconf
|
erjo@8702
|
38
|
erjo@8702
|
39 ln -s /etc/nconf/authentication.php $fs/usr/share/nconf/config
|
erjo@8702
|
40 ln -s /etc/nconf/main.php $fs/usr/share/nconf/config
|
erjo@8702
|
41 ln -s /etc/nconf/mysql.php $fs/usr/share/nconf/config
|
erjo@8702
|
42 ln -s /etc/nconf/nconf.php $fs/usr/share/nconf/config
|
erjo@8702
|
43 ln -s /var/lib/nconf/output $fs/usr/share/nconf/
|
erjo@8702
|
44 ln -s /var/lib/nconf/static_cfg $fs/usr/share/nconf/
|
erjo@8702
|
45 ln -s /var/lib/nconf/temp $fs/usr/share/nconf/
|
erjo@8702
|
46
|
erjo@8702
|
47 mv $fs/usr/share/nconf/INSTALL $fs/var/lib/nconf
|
erjo@8702
|
48 # Cleanup
|
erjo@8702
|
49 rm -rf $fs/usr/share/nconf/UPDATE*
|
erjo@8702
|
50 rm -f $fs/usr/share/nconf/INSTALL.php
|
erjo@8702
|
51
|
erjo@8702
|
52 # Set default settings
|
erjo@8702
|
53 sed -i -e 's/Nconf/nconf/' -e 's/link2db/nconf/' $fs/etc/nconf/mysql.php
|
erjo@8702
|
54 sed -i -e '/NCONFDIR/ s|/var/www|/usr/share|' \
|
erjo@8702
|
55 -e '/NAGIOS_BIN/ s|/var/www/nconf/bin|/usr/bin|' $fs/etc/nconf/mysql.php
|
erjo@8702
|
56
|
erjo@8702
|
57 # Fix add-ons scripts
|
erjo@8702
|
58 sed -i -e 's|bash|sh|' -e '/OUTPUT_DIR/ s|/var/www/html|/usr/share|' \
|
erjo@8702
|
59 -e '/NAGIOS_DIR/ s|NAGIOS_DIR=.*|NAGIOS_DIR=\"/etc/nagios\"|' $fs/usr/share/nconf/ADD-ONS/deploy_local.sh
|
erjo@8702
|
60 sed -i -e 's|bash|sh|' -e '/DBNAME/ s|NConf|nconf|' $fs/usr/share/nconf/ADD-ONS/history_cleanup.sh
|
erjo@8702
|
61 }
|
erjo@8702
|
62
|
erjo@8702
|
63 post_install()
|
erjo@8702
|
64 {
|
erjo@8702
|
65 local db=nconf
|
erjo@8702
|
66 local db_user=nconf
|
erjo@8702
|
67 local db_password=nconf
|
erjo@8702
|
68 local sql_script='/var/lib/nconf/INSTALL/create_database.sql'
|
erjo@8702
|
69
|
erjo@8702
|
70 # Minimal config for NConf.
|
erjo@8702
|
71 if [ -z $1 ]; then
|
erjo@8702
|
72 if ( ! mysqladmin -s ping > /dev/null ); then
|
erjo@8702
|
73 echo "Starting MySQL server"
|
erjo@8702
|
74 ( /etc/init.d/mysql start ; status ) || exit
|
erjo@8702
|
75 sleep 4 #let the mysql daemon start
|
erjo@8702
|
76 fi
|
erjo@8702
|
77 if ( ! mysql -u root -Be 'show databases' | grep -q $db ); then
|
erjo@8702
|
78 echo -n "Create $db database"
|
erjo@8702
|
79 mysql -Be "create database $db" ; status
|
erjo@8702
|
80 # We suppose that $DB_USER user does not exist.
|
erjo@8702
|
81 # It may be false.
|
erjo@8702
|
82 echo -n "Create user $db_user with password $db_password"
|
erjo@8702
|
83 mysql -Be "grant all privileges on $db.* to '"$db_user"'@'localhost'
|
erjo@8702
|
84 identified by '"$db_password"'" ; status
|
erjo@8702
|
85 # At last create the database for $PACKAGE.
|
erjo@8702
|
86 echo -n "Create $db database schema."
|
erjo@8702
|
87 mysql -u $db_user -p${db_password} -D $db < $sql_script ; status
|
erjo@8702
|
88 fi
|
erjo@8702
|
89 fi
|
erjo@8702
|
90 }
|
erjo@8702
|
91
|
erjo@8702
|
92 post_remove()
|
erjo@8702
|
93 {
|
pascal@14465
|
94 if [ -z $1 ]; then
|
erjo@8702
|
95 local db=nconf
|
erjo@8702
|
96 local db_user=nconf
|
erjo@8702
|
97 local db_password=nconf
|
erjo@8702
|
98
|
erjo@8702
|
99 echo -n "Would you like to remove data and database files.(y/n) "
|
erjo@8702
|
100 read answer
|
erjo@8702
|
101
|
erjo@8702
|
102 case $answer in
|
erjo@8702
|
103 y|Y)
|
erjo@8702
|
104 echo -n "Removing data directories..."
|
erjo@8702
|
105 rm -rf /var/lib/nconf ; status
|
erjo@8702
|
106 if ( mysql -u root -Be 'show databases' | grep -q $db ); then
|
erjo@8702
|
107 echo -n "Deleting $db database"
|
erjo@8702
|
108 mysql -Be "drop database $db" ; status
|
erjo@8702
|
109 # We suppose that $db_user user does not exist.
|
erjo@8702
|
110 # It may be false.
|
erjo@8702
|
111 echo -n "Delete user $db_user"
|
erjo@8702
|
112 mysql -Be "delete from mysql.db where user='"$db_user"'" ; status
|
erjo@8702
|
113 fi
|
pascal@14465
|
114 unset answer
|
erjo@8702
|
115 ;;
|
erjo@8702
|
116 *)
|
erjo@8702
|
117 ;;
|
erjo@8702
|
118 esac
|
pascal@14465
|
119 fi
|
erjo@8702
|
120 }
|