Gentoo Archives: gentoo-dev

From: Max Kalika <max@g.o>
To: stuart@g.o, Troy Dack <tad@g.o>, gentoo-dev@g.o
Subject: Re: [gentoo-dev] [GLEP] Web Application Installation
Date: Sun, 03 Aug 2003 02:26:29
Message-Id: 2147483647.1059852387@[192.168.26.4]
In Reply to: Re: [gentoo-dev] Re: [gentoo-core] [GLEP] Web Application Installation by Stuart Herbert
1 Quoting Stuart Herbert <stuart@g.o>:
2
3 > First off - thank you Troy for getting this moving. Nice one ;-)
4
5 +1 :-)
6
7 > I think this should just be /usr/share/webapps/<application>/
8 >
9 > Sorry, but I very strongly disagree. Not every web application needs all
10 > its files to be accessible via a web browser.
11
12 Granted, but this means more changing in the core or config files of the
13 particular application.
14
15 > /usr/share/webapps/htdocs/ for files that should be accessible via a web
16 > browser. This leaves room for any other files (PHP scripts are the one
17 > that comes to mind for me) to go into other sub-directories if required.
18 >
19 > (Confession: I do have a personal interest. I write web apps
20 > professionally, and none of them have the PHP files available for
21 > serving out via the web browser.)
22
23 Same here.
24
25 > I'd prefer /etc/webapps/<application>/, again for future flexibility
26 > where a web application has more than one configuration file. I don't
27 > mind frigging apps to look in more than one place for a config file. I
28 > do mind patching apps to use just the one file.
29
30 You want to mix the apache config block with other configuration files that
31 come with the application? Seems messy to me. Especially if we're going
32 to be supporting multiple webservers (creating server-specific config
33 files). Perhaps another directory where you can separate the
34 application-specific config files from server-specific ones. Ideas?
35
36 > The less we have to patch an app, the less work we're going to make for
37 > ourselves - especially on the support side.
38
39 Yes! Which is why a patch is probably not always appropriate -- sed is
40 more resilient to pieces of configuration moving around upstream.
41
42 > If Robin doesn't beat me to it, I'll write a script that we can add to
43 > Portage to standardise getting this information.
44
45 What did you have in mind to achieve this?
46
47 > W.r.t. PHP detection, we have two other problems:
48 >
49 > a) Depending on virtual/php is useless, because it doesn't guarantee that
50 > mod_php is installed (could be that PHP/CLI is installed) - unless you've
51 > already fixed this Robin? Anyway, it doesn't tell you what version of
52 > PHP is installed - and some apps need specific versions of PHP (yes,
53
54 I'll leave this to you all as you seem to have hashed this out already
55 between you.
56
57 > What shape are other languages in for their dependencies? Not every
58 > webapp is going to be written in PHP ...
59
60 Many apps are CGIs. Others can of course be mod_perl, mod_python, java,
61 you name it. I see no problems using the eclass with these because it was
62 written with flexibility in mind. Like I've said in the past. My initial
63 idea for this was to fix nut and apcuspd to cleanly install their CGI
64 components.
65
66 > Well, write access to directories under htdocs at any rate. TikiWiki -
67 > which we're looking to use for a Gentoo website - has this annoying
68 > feature.
69
70 What bothers me though, is that having any directory under /usr writeable
71 is really bad form (I made a policy at work for all servers -- configure a
72 system where /usr can be mounted read-only). If at all possible, I'd like
73 to have these directories created under something like /var/lib/ and
74 symlinked back to where the app needs to write. If not symlinked then an
75 Apache alias (or whatever is equivalent to other servers).
76
77 > You use sed, I'd apply patches, and I'm sure there's other ways too that
78 > people would like to use. So long as they get the right result, I don't
79 > think we need to standardise on the approach.
80
81 See above. But I agree, we _can't_ standardize on the approach simply
82 because it depends on what needs to be done. I imagine that there will be
83 some apps where we would just have complete config files living in
84 ${FILESDIR} that get installed over the ones that come with the package.
85 Having said that, I say we _should_ standardize on installation of packages
86 from the same family (i.e. Horde).
87
88 >> Standardization should always be applauded. :-)
89 >
90 > Urgh ;-) If everything in life was standardised, we'd be running RedHat,
91 > not busy upsetting the apple-cart with this upstart project ;-)
92
93 Having run redhat for the past 4 years, I can safely say that that pile of
94 stuff strewn loosely together with twine and masking tape into a
95 nightmarish packaging system is far from standardized.
96
97 > First off, where are webapp ebuilds going to live in Portage? I'd like
98 > to see a set of 'web-???' categories myself, so that web apps are
99 > clearly visible and easy to find. I don't think they should disappear
100 > under 'net-www' or into various 'app-???' directories.
101
102 Forgot to bring this up. Can't agree more. Web-* makes sense to me.
103 There's a slew of things that can go into web-mail and web-net just to
104 start.
105
106 > Secondly, are we going to establish a webapps herd to look after the
107 > packages that will be added? If so, feel free to add me to the list of
108 > maintainers. If not, then what solution do you suggest?
109
110 A herd makes sense. I'll leave this to the higher-ups thought. :-)
111
112 > I think the ebuilds for web apps should be ENTIRELY webserver neutral.
113 > This is why I've done nothing with Max's eclass myself. There should be
114 > userland tools for creating an instance of an app under Apache or
115 > whatever. Yes, I know that most people will run Apache, and not care
116 > about this, but Gentoo's supposed to be about configurability. We have
117 > a chance to get some solid foundations in - I say let's get digging.
118
119 As I've said before many times, I'd like to see the eclass grow into
120 something that can be used with all the webservers we have in portage. I
121 don't know if userland tools can be flexible enough to create config blocks
122 for all the apps that we're going to have. An ebuild knows enough of the
123 application to pass the necessary information to the eclass to create
124 whatever config is needed. At the same time, we have to be careful to not
125 balloon this into something unmaintainable. Which is why it may be best to
126 start this as apache-only (as it is the more popular of the webservers).
127 Get everything converted over and working and only then add support for
128 others.
129
130 --mk
131
132 --
133 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] [GLEP] Web Application Installation Stuart Herbert <stuart@g.o>