1 |
On Wed, Jul 23, 2003 at 04:17:40PM +1000, Andrew Cowie wrote: |
2 |
> On Wed, 2003-07-23 at 15:17, Max Kalika wrote: |
3 |
> > I've ported over most of the Horde apps to use this eclass in my |
4 |
> > local tree as an exercise and let me tell you, installing (and |
5 |
> > upgrading) Horde is actually pleasant now. |
6 |
> Oh, yeah, I can see that. The app I have in mind is dotProject (also a |
7 |
> PHP web app) |
8 |
> |
9 |
> Web Application installations ARE a bit more complex than just `make |
10 |
> install` the program: |
11 |
> |
12 |
> a) installing PHP app (ok, this is relatively straight forward - you |
13 |
> just unpack tarball somewhere and ta-da, but one *does* need to know |
14 |
> where to put it) |
15 |
> "Where to put it" does have slightly broader implications. Under the |
16 |
> machine's default DocumentRoot seems a good idea, but there are many |
17 |
> instances where one wants to make a separate virtual host for the |
18 |
> installation, or, or.... |
19 |
> Certainly as a first approximation, "sub directory of machine default |
20 |
> DocRoot" seems a not bad place to start, but I'm curious what others |
21 |
> think we should practice as I can think of numerous objections to this. |
22 |
After the 1.4 release (maybe before, depending on how busy I am with |
23 |
work), there will be a migration of all web applications to install |
24 |
somewhere like /usr/share/webapp/${P} (maybe ${PF}) |
25 |
|
26 |
You will then be able to create instances of the package by having that |
27 |
/usr/share/webapp/${P} in PHP's include path, and all you do is have the |
28 |
configuration files in your instance directory, enabling you to have as |
29 |
many instances as you want, securely, with only one set of main files, |
30 |
even accross virtual hosts. |
31 |
|
32 |
Config files probably be in /etc/webapp/${P} which will be symlinked to |
33 |
from wherever you have the instance. This is to protect them, but I am |
34 |
not 100% if this will be needed with the instances. |
35 |
|
36 |
> b) ensure you've got all the dependencies. (Yuk). |
37 |
Easy with Gentoo. RDEPEND=... for most webapps. |
38 |
|
39 |
> c) configure application [not so optional, but in Gentoo you are |
40 |
> expected to do this on your own; also applies to:] |
41 |
see what the phpMyAdmin ebuild does for making this REALLY good. |
42 |
|
43 |
> d) install DB tables [optional, depends on which DB you're running, etc, |
44 |
> etc... could guess from USE flags, but who wants an app just madly |
45 |
> crashing around creating tables, especially when config may not be in |
46 |
> place and when, if an upgrade, tables all ready exist] |
47 |
Again, see the phpMyAdmin ebuild. |
48 |
|
49 |
> Is there a way that that can be automated too? I suspect not, without |
50 |
> going to something like linux-control-center or debconf or some similar |
51 |
> craziness] |
52 |
I don't know if you have played with zope-config, but expect something |
53 |
like that for the web application setup. |
54 |
|
55 |
-- |
56 |
Robin Hugh Johnson |
57 |
E-Mail : robbat2@××××××××××××××.net |
58 |
Home Page : http://www.orbis-terrarum.net/?l=people.robbat2 |
59 |
ICQ# : 30269588 or 41961639 |
60 |
GnuPG FP : 11AC BA4F 4778 E3F6 E4ED F38E B27B 944E 3488 4E85 |