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