Indefero

Indefero Git Source Tree


Root/INSTALL.mdtext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
# Quick installation instruction
 
The installation of InDefero is composed of 2 parts, first the
installation of the [Pluf framework](http://www.pluf.org) and second,
the installation of InDefero by itself.
 
## PHP modules for indefero
 
Indefero need the GD module for PHP. It's named "php5-gd" in debian.
 
    $ apt-get install php5-gd
 
## Recommended Layout of the Files
 
If your server document root is in `/var/www` a good thing is to keep
the number of files under the `/var/www` folder to its minimum. So,
you should create a `/home/www` folder in which we are going to
install all but the files which need to be available under the
document root.
 
    /home/www/pluf/src/
    /home/www/pluf/src/Pluf.php
    /home/www/pluf/src/migrate.php
    /home/www/indefero/src
    /home/www/indefero/www
    /home/www/indefero/www/index.php
    /home/www/indefero/www/media
 
The you need to link the `media` and `index.php` files into your
docroot.
 
    $ cd /var/www
    $ ln -s /home/www/indefero/www/index.php
    $ ln -s /home/www/indefero/www/media
 
## Installation of Pluf
 
* Checkout the trunk of [Pluf](http://www.pluf.org).
* Install the `Mail` and `Mail_mime` classes from [PEAR](http://pear.php.net). You must use the `--alldeps` flag when installing these modules.
 
**Pear install/upgrade:**
 
    $ sudo pear upgrade-all
    $ sudo pear install --alldeps Mail
    $ sudo pear install --alldeps Mail_mime
    $ sudo pear install --alldeps Console_Getopt
 
If you already have some of the PEAR packages installed with your
distribution, the `Mail` package is often not up-to-date,
 
The Pluf installation folder is the folder containing the file `Pluf.php`.
 
## Installation of InDefero
 
The installation is composed of the following steps:
 
* Get the InDefero archive.
* Configure it correctly.
* Installation the database with the `migrate.php` script.
* Bootstrap the application with a `bootstrap.php` script.
 
Here is the step-by-step installation procedure:
 
* Extract the InDefero archive somewhere.
* The InDefero installation folder is the folder containing this file INSTALL.mdtext.
* Make a copy of `src/IDF/conf/idf.php-dist` as `src/IDF/conf/idf.php`.
* Update the idf.php file to match your system.
* Make a copy of `src/IDF/conf/path.php-dist` as `src/IDF/conf/path.php`.
* Update the path.php file to match your installation paths. It should work out of the box if you followed the recommended file layout.
* Open a terminal/shell and go into the `src` folder in the InDefero installation folder.
 
**Command:**
 
    $ cd /home/www/indefero/src
 
* Run `php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -i -d -u` to test the installation of the tables.
* Run `php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -i -d` to really install the tables.
* More details about the migration is available in the [migration documentation](http://pluf.org/doc/migrations.html) of the Pluf framework.
* Create a bootstrap file to create the admin user for example `www/bootstrap.php`. Do not forget to update the second line with your path to Pluf.
 
**Bootstrap script:**
 
    <?php
    require '/home/www/indefero/src/IDF/conf/path.php';
    require 'Pluf.php';
    Pluf::start('/home/www/indefero/src/IDF/conf/idf.php');
    Pluf_Dispatcher::loadControllers(Pluf::f('idf_views'));
     
    $user = new Pluf_User();
    $user->first_name = 'John';
    $user->last_name = 'Doe'; // Required!
    $user->login = 'doe'; // must be lowercase!
    $user->email = 'doe@example.com';
    $user->password = 'yourpassword'; // the password is salted/hashed
                                      // in the database, so do not worry :)
    $user->administrator = true;
    $user->active = true;
    $user->create();
    print "Bootstrap ok\n";
    ?>
 
* Run `php www/bootstrap.php`.
* Remove the `www/bootstrap.php` file.
* Open the `www/index.php` file and ensure that the path to Pluf and
  Indefero are correctly set for your configuration.
* Now you can login with this user into the interface.
* Click on the Forge Management link on top and create your first project.
 
## Upgrade InDefero
 
To upgrade:
 
* Make a backup of your data, including the database.
* Extract the new archive on top of the current one.
* Update your version of Pluf.
* Check that the path in the `index.php` are still good.
* Remove all the `*.phps` files in your temp folder.
* Upgrade the database with the upgrade commands:
 
**Upgrade commands:**
 
    $ cd /home/www/indefero/src
    $ php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -d -u
    $ php /home/www/pluf/src/migrate.php --conf=IDF/conf/idf.php -a -d
 
 
## Repository Synchronization
 
The documentation is available in the `doc` folder.
 
* Subversion: `doc/syncsvn.mdtext`.
* Mercurial: `doc/syncmercurial.mdtext`.
* Git: `doc/syncgit.mdtext`.
* Monotone: `doc/syncmonotone.mdtext`
 
## For the Apache Webserver Users
 
If you are using [Apache](http://httpd.apache.org/) for your webserver
and want to have nice URLs like `http://yourdomain.com/p/yourproject/`
the following `.htaccess` file to be put in the same folder of the
`www/index.php` file.
 
    Options +FollowSymLinks
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*) /index.php/$1
 
`Options +FollowSymLinks` is only needed if you are using symlinks.
 
## For the Gentoo users
 
If you get the error:
 
    T_CHARACTER Use of undefined constant T_CHARACTER - assumed 'T_CHARACTER'"
 
you need to compile PHP with the "tokenizer" flag.
 
## For People with open_basedir restriction error
 
If you get an error like:
 
    file_get_contents(): open_basedir restriction in effect.
    File(/etc/mime.types) is not within the
    allowed path(s): (/srv/http/:/home/:/tmp/:/usr/share/pear/)
 
Just copy the file `/etc/mime.types` into the folder `/home` and put
this in your configuration file:
 
    $cfg['idf_mimetypes_db'] = '/home/mime.types';
 
## FreeBSD Installation
 
You need to install `/usr/ports/lang/php5-extensions` which contains
the Standard PHP Library (SPL).
 
## Using a SMTP server with authentication
 
If your SMTP server requires authentication, for example,
*smtp.gmail.com*, you can use the following email configuration:
 
    $cfg['send_emails'] = true;
    $cfg['mail_backend'] = 'smtp';
    $cfg['mail_auth'] = true;
    $cfg['mail_host'] = 'ssl://smtp.gmail.com';
    $cfg['mail_port'] = 465;
    $cfg['mail_username'] = 'YOURGMAILADDRESS';
    $cfg['mail_password'] = 'YOURPASSWORD';
 
Check with your provider to get the right settings.
 
## Git Daemon on Ubuntu Karmic
 
If you have problems getting it to run, you can follow this procedure
proposed by Mathias in ticket 369.
 
1. Install git-daemon-run in addition to git-core
2. Edit /etc/sv/git-daemon/run to look as follows:
 
    #!/bin/sh
    exec 2>&1
    echo 'git-daemon starting.'
    exec chpst -ugit:git \
      /usr/lib/git-core/git-daemon \
      --reuseaddr \
      --syslog \
      --verbose \
      --base-path=/home/git/repositories \
      /home/git/repositories
 
3. Restart git-daemon-run
 
    sv restart git-daemon
 
## If Subversion is not working
 
If you access a Subversion server with a self-signed certificate, you
may have problems as your certificate is not trusted, check the
[procedure provided here][svnfix] to solve the problem.
 
 
## If the registration links are not working
 
If You have standard instalaction of PHP ie in Debian, php.ini sets
mbstring.func_overload to value "2" for overloading str*
functions. You need to prevent the overload as it does not make sense
anyway (magic in the background is bad!).
See the [corresponding ticket][reglink].
 

Archive Download this file

Page rendered in 0.11710s using 11 queries.