wok annotate glpi/receipt @ rev 8353

up: glpi (0.78.2) + improve install
author Eric Joseph-Alexandre <erjo@slitaz.org>
date Thu Feb 03 17:09:38 2011 +0100 (2011-02-03)
parents c43ee66023b0
children 9dde2e58512f
rev   line source
erjo@2714 1 # SliTaz package receipt.
erjo@2714 2
erjo@2714 3 PACKAGE="glpi"
erjo@8353 4 VERSION="0.78.2"
erjo@2714 5 CATEGORY="network"
erjo@2714 6 SHORT_DESC="IT and Asset Management."
erjo@2714 7 MAINTAINER="erjo@slitaz.org"
erjo@8353 8 DEPENDS="mysql apache php-apache php-ldap php-imap php-mysql pam logrotate"
erjo@2714 9 TARBALL="$PACKAGE-$VERSION.tar.gz"
erjo@2714 10 WEB_SITE="http://glpi-project.org/"
erjo@8353 11 WGET_URL="https://forge.indepnet.net/attachments/download/772/$TARBALL"
erjo@8353 12 CONFIG_FILES="/etc/glpi/config_db.php /etc/glpi/config_db_slave.php"
erjo@2714 13
erjo@2714 14 # Rules to gen a SliTaz package suitable for Tazpkg.
erjo@2714 15 genpkg_rules()
erjo@2714 16 {
erjo@2714 17 test -d $PACKAGE && mv $PACKAGE $PACKAGE-$VERSION
erjo@2714 18
erjo@2714 19 _pkg=$src
erjo@2714 20
erjo@2714 21 mkdir -p $fs/usr/share/$PACKAGE \
erjo@2714 22 $fs/etc/$PACKAGE \
erjo@8353 23 $fs/var/log/$PACKAGE \
erjo@2714 24 $fs/var/lib/$PACKAGE
erjo@2714 25
erjo@2714 26 cp -a $_pkg/* $fs/usr/share/$PACKAGE
erjo@2714 27 [ -d $fs/usr/share/$PACKAGE/files ] && mv $fs/usr/share/$PACKAGE/files $fs/var/lib/$PACKAGE
erjo@8353 28 #[ -d $fs/usr/share/$PACKAGE/config ] && mv $fs/usr/share/$PACKAGE/config $fs/etc/$PACKAGE
erjo@2714 29
erjo@8353 30 # Copy config db as temporary file.
erjo@8353 31 cp stuff/config_db.php $fs/etc/glpi/
erjo@8353 32 cp -a stuff/logrotate.d $fs/etc
erjo@8353 33
erjo@2714 34 cd $fs/usr/share/glpi
erjo@8353 35 [ -f config/config_db.php ] && rm -f config/config_db.php
erjo@8353 36 [ -f config/config_db_slave.php ] && rm -f config/config_db_slave.php
erjo@8353 37 ln -s /etc/glpi/config_db.php config/
erjo@8353 38 [ -f $fs/etc/glpi/config_db_slave.php ] && ln -s /etc/glpi/config_db_slave.php config/
erjo@8353 39 ln -s /var/lib/glpi/files
erjo@2714 40 cd -
erjo@8353 41 chown -R www.www $fs/var/lib/$PACKAGE/files $fs/etc/$PACKAGE/*
erjo@8353 42
erjo@8353 43 # Create the magic file config_path.php
erjo@8353 44 cat <<EOF> $fs/usr/share/glpi/config/config_path.php
erjo@8353 45 <?php
erjo@8353 46 // for packaging defaults
erjo@8353 47
erjo@8353 48 define("GLPI_CONFIG_DIR", "/etc/glpi");
erjo@8353 49
erjo@8353 50 define("GLPI_DOC_DIR", "/var/lib/glpi/files");
erjo@8353 51 define("GLPI_DUMP_DIR", "/var/lib/glpi/files/_dumps");
erjo@8353 52 define("GLPI_CACHE_DIR", "/var/lib/glpi/files/_cache/");
erjo@8353 53 define("GLPI_CRON_DIR", "/var/lib/glpi/files/_cron");
erjo@8353 54 define("GLPI_SESSION_DIR", "/var/lib/glpi/files/_sessions");
erjo@8353 55 define("GLPI_PLUGIN_DOC_DIR", "/var/lib/glpi/files/_plugins");
erjo@8353 56 define("GLPI_LOCK_DIR", "/var/lib/glpi/files/_lock/");
erjo@8353 57
erjo@8353 58 define("GLPI_LOG_DIR", "/var/log/glpi");
erjo@8353 59 ?>
erjo@8353 60
erjo@8353 61 EOF
pascal@2715 62 }
pascal@2715 63
pascal@2715 64 post_install()
pascal@2715 65 {
erjo@2714 66 # Configure apache server
erjo@2714 67 if [ -f $1/etc/apache/httpd.conf ]; then
erjo@2714 68 if [ ! -f $1/etc/apache/conf.d/glpi ]; then
erjo@2714 69 cat > $1/etc/apache/conf.d/glpi <<EOT
erjo@2714 70 <IfModule mod_alias.c>
erjo@2714 71 Alias /glpi /usr/share/glpi/
erjo@2714 72 </IfModule>
erjo@2714 73 <Directory "/usr/share/glpi">
erjo@2714 74 Options Indexes FollowSymLinks
erjo@8353 75
erjo@8353 76 php_value memory_limit 64M
erjo@8353 77
erjo@2714 78 AllowOverride None
erjo@2714 79 Order deny,allow
erjo@2714 80 Allow from all
erjo@2714 81 </Directory>
erjo@2714 82
erjo@8353 83 <Directory /usr/share/glpi/config>
erjo@8353 84 Order Allow,Deny
erjo@8353 85 Deny from all
erjo@8353 86 </Directory>
erjo@8353 87
erjo@8353 88 <Directory /usr/share/glpi/locales>
erjo@8353 89 Order Allow,Deny
erjo@8353 90 Deny from all
erjo@8353 91 </Directory>
erjo@8353 92
erjo@8353 93 <Directory /usr/share/glpi/install/mysql>
erjo@8353 94 Order Allow,Deny
erjo@8353 95 Deny from all
erjo@8353 96 </Directory>
erjo@8353 97
erjo@8353 98 <Directory /usr/share/glpi/scripts>
erjo@8353 99 Order Allow,Deny
erjo@8353 100 Deny from all
erjo@8353 101 </Directory>
erjo@8353 102
erjo@8353 103
erjo@2714 104 EOT
erjo@2714 105 if [ -z "$1" ]; then
erjo@2714 106 # Start Web server.
erjo@2714 107 test -f /var/run/apache/httpd.pid && \
erjo@2714 108 ( kill -0 $(cat /var/run/apache/httpd.pid) && /etc/init.d/apache restart )
erjo@2714 109 fi
erjo@2714 110 fi
erjo@2714 111 fi
erjo@2714 112
erjo@2714 113 # Configure every thing for glpi.
erjo@2714 114 if [ -z $1 ]; then
erjo@2714 115 if ( ! mysqladmin -s ping > /dev/null ); then
erjo@2714 116 echo "Starting MySQL server"
erjo@2714 117 ( /etc/init.d/mysql start ; status ) || exit
erjo@2714 118 sleep 4 #let the mysql daemon start
erjo@2714 119 fi
erjo@3672 120 if ( ! mysql -u root -Be 'show databases' | grep -q glpi ); then
erjo@2714 121 echo -n "Create Glpi database"
erjo@2714 122 mysql -Be "create database glpi" ; status
erjo@2714 123 # We suppose that glpi user does not exist.
erjo@2714 124 # It may be false.
erjo@2714 125 echo -n "Create user glpi with password glpi"
erjo@2714 126 mysql -Be "grant all privileges on glpi.* to 'glpi'@'localhost'
erjo@2714 127 identified by 'glpi'" ; status
erjo@2714 128 # At last create the database for glpi.
erjo@2714 129 echo -n "Create glpi database schema."
erjo@4439 130 mysql -u glpi -pglpi -D glpi < /usr/share/glpi/install/mysql/glpi-${VERSION}-empty.sql ; status
erjo@2714 131
erjo@2714 132 fi
erjo@2714 133
erjo@2714 134 fi
erjo@2714 135 }
erjo@2714 136
erjo@2714 137 post_remove()
erjo@2714 138 {
erjo@2714 139 echo -n "Would you like to remove data and database files.(y/n) "
erjo@2714 140 read answer
erjo@2714 141
erjo@2714 142 case $answer in
erjo@2714 143 y|Y)
erjo@2714 144 echo -n "Removing data directories..."
erjo@2714 145 rm -rf /var/lib/glpi ; status
erjo@3672 146 if ( mysql -u root -Be 'show databases' | grep -q glpi ); then
erjo@2714 147 echo -n "Deleting Glpi database"
erjo@2714 148 mysql -Be "drop database glpi" ; status
erjo@2714 149 # We suppose that glpi user does not exist.
erjo@2714 150 # It may be false.
erjo@2714 151 echo -n "Delete user glpi"
erjo@3672 152 mysql -Be "delete from mysql.db where user='glpi'" ; status
erjo@2714 153 fi
erjo@2714 154 unset $answer
erjo@2714 155 ;;
erjo@2714 156 *)
erjo@2714 157 ;;
erjo@2714 158 esac
erjo@2714 159
erjo@2714 160 }
erjo@2714 161