From Fedora Project Wiki


Features/WebserverDependency

Summary

Provide a way how to install and use webserver related packages (for example phpMyAdmin or Mailman) with any webserver in Fedora.

Owner

  • Email: jkaluza@redhat.com

Current status

  • Targeted release: [[Releases/<number> | Fedora <number> ]]
  • Last updated: (DATE)
  • Percentage of completion: 0%


Detailed Description

Currently, packages like phpMyAdmin or Mailman requires httpd installed. This is wrong, because they can work properly even with Lighttpd or nginx. Following list contains the reasons why the particular package needs httpd and how to fix it:

Package includes files owned by apache user/group

This is needed when files have to be readable by webserver and therefore they have to have proper owner or group. Each webserver in Fedora has its own user/group under which it's running. This should be changed and one group shared by all servers should be introduced.

Maintainer then must use shared group instead of "apache" group.

Package includes httpd configuration files

To move web server related configuration into new subpackage, new packaging layout should be introduced (mailman is used as an example):

  • mailman-core - Contains all mailman files except web server related configurations. This subpackage must not require any web server.
  • mailman-httpd (mailman-xxx) - Contains web server related configuration files and must require particular web server.
  • mailman - To keep the backward compatibility, main package must require -core and -httpd subpackages.

Maintainer does not have to create config files (and subpackages) for all webservers, but it must be possible to install -core subpackage without any dependency on particular web server, so the administrator can configure the web server himself.

Package requires web server specific modules

If the package requires web server specific modules like mod_wsgi or mod_php, then those dependencies must be moved into web server specific subpackage like described above.

Package "Requires: php"

"php" as dependency is not needed, because of TODO (waiting for rcollect clarification).

Benefit to Fedora

  • Ability to install various web applications without pulling httpd as a dependency if it's not needed.
  • Unification of web application packaging.

Scope

  1. Discuss this feature with web servers maintainers in Fedora and get consensus on shared group name, add this group to Fedora and use it in web servers.
  2. Change configuration of lighttpd and nginx to be able to load config files from particular directory.
  3. Fix affected packages as described in Details.

Affected packages

List of affected packages in rawhide in October 2012.

  • JSCookMenu
  • MochiKit
  • RackTables
  • ReviewBoard
  • WebCalendar
  • aeolus-conductor
  • apcupsd
  • askbot
  • bcfg2
  • beacon
  • bodhi
  • bugzilla
  • cacti
  • cgit
  • checkdns
  • ckeditor
  • cobbler
  • collectd
  • cvsweb
  • darkserver
  • dojo
  • dokuwiki
  • dspam
  • eclipse-phpeclipse
  • editarea
  • eucalyptus
  • freeipa
  • gallery2
  • gallery3
  • glpi
  • gnome-user-share
  • gridsite
  • ipcalculator
  • ipplan
  • koji
  • limph
  • mailgraph
  • mailman
  • man2html
  • mediawiki
  • mediawiki119
  • mimetex
  • mojomojo
  • moksha
  • nagios
  • netdisco
  • nocpulse-common
  • openlayers
  • ovirt-engine
  • pen
  • perl-HTML-Mason
  • php-laconica
  • php-voms-admin
  • phpMyAdmin
  • phpPgAdmin
  • phpesp
  • phpldapadmin
  • phplogcon
  • phpwapmail
  • postgresql-pgpoolAdmin
  • poweradmin
  • pwauth
  • python-django-dajax
  • queuegraph
  • roundcubemail
  • sahana
  • ser
  • smokeping
  • spacewalk-backend
  • squirrelmail
  • sticky-notes
  • sysusage
  • unicornscan
  • viewmtn
  • w3c-markup-validator
  • webacula
  • webalizer
  • websvn
  • wordpress
  • yawn
  • yourls
  • zarafa
  • zikula
  • zoneminder

How To Test

User Experience

Dependencies

Contingency Plan

Documentation

Release Notes

Comments and Discussion