diff options
-rw-r--r-- | NEWS | 4 | ||||
-rw-r--r-- | contrib/README.redhat_fhs.patch | 305 | ||||
-rw-r--r-- | contrib/redhat_fhs.patch | 251 |
3 files changed, 560 insertions, 0 deletions
@@ -90,6 +90,8 @@ Here is a history of user visible changes to Mailman. - Worked around a potential problem in HyperArch.py with unicode character set arguments. Bug #328353. + - Recognize a couple more bounces. + i18n - Updated Dutch, Catalan and Polish translations. @@ -98,6 +100,8 @@ Here is a history of user visible changes to Mailman. - Added Lindsay Haisley's courier_to_mailman.py to the contrib directory. + - Added John Dennis' (RedHat) FHS patch to the contrib directory. + 2.1.11 (30-Jun-2008) New Features diff --git a/contrib/README.redhat_fhs.patch b/contrib/README.redhat_fhs.patch new file mode 100644 index 00000000..a36d33ef --- /dev/null +++ b/contrib/README.redhat_fhs.patch @@ -0,0 +1,305 @@ +The following is the contents of the post at +<http://mail.python.org/pipermail/mailman-developers/2004-October/017343.html>. + +The actual patch is at redhat_fhs.patch in this (contrib/) directory. + +Note that this patch only patches configure.in, so if you apply this patch, +you need to then run GNU autoconf to build the patched ./configure. + + +[Mailman-Developers] FHS installation changes +John Dennis jdennis at redhat.com +Mon Oct 18 22:26:21 CEST 2004 + +Overview: +--------- + +Earlier I wrote about our (Red Hat's) desire to make mailman be FHS +compliant, in part to allow mailman to fall under the protection of +SELinux security policy which is file and directory based and as a +consequence much easier to author when packages install into canonical +locations (e.g. FHS). + +Previously we had installed all of mailman under /var/mailman +(prefix=var_prefix=/var/mailman) and I had proposed a much simpler +change of just setting prefix=/usr/lib/mailman. This took care of the +majority of SELinux issues and limited the scope of changes. There was +a concern that sites and administrators who were familiar either with +our RPM, the upstream package, or were working with an existing +installation would run afoul of the location changes and keeping them +to absolute minimum was advantageous. However a few folks in private +email pointed out that if changes were going to occur its best to do +it all at once and not piecemeal, in other words endure the pain once. + +Thus I embarked on an exercise to make everything FHS compliant. There +are two reasons I'm addressing the developer community here: + +1) I want to apprise you of the exact changes, their rational, provide + a patch against 2.1.5 and solicit review. + +2) Test the results. + +Description: +------------ + +Currently the configuration allows for partitioning the mailman +installation between two installation roots, prefix for non-modifiable +files and var_prefix for variable data. This is a great start and +covers 90% of the installation, but there remains a small set of items +which even in this scheme are not FHS compliant, in summary: + +1) config files located under /etc + +2) pid file located under /var/run + +3) queue files located under /var/spool + +4) lock files located /var/lock + +5) log files located under /var/log + +I think one could characterize the competing installation philosophies +as follows: + +Mailman not knowing what type of system its going to be installed on +elects to group all of its files together (makes perfect sense). FHS +on the other hand says most packages share common traits and we group +by functional component thus spreading out package installations +across a diverse set of directories. + +Implementation: +--------------- + +I discovered I had to add some new directories to configure and alter +some of the *_DIR variables in Defaults.py.in so they pick up their +values from configure. My strategy was to allow configure when run +without providing any other parameters to produce the exact same set +of installation defaults as previously existed so unless you specify a +different installation mapping a user won't see any change. + +Configure added: + +--with_lock_dir +--with_log_dir +--with_config_dir +--with_data_dir +--with_pid_dir +--with_queue_dir + +I also modified bin/check_perms so it was aware of the new directory +specifications. The patch also made a few non FHS fixes to the install +target of the Makefiles, some generic issues were discovered when +testing check_perms. Those changes included: setting SETGID on the root +prefix and var_prefix directories, check_perms demands all +directories, including the roots are SETGID. The messages Makefile was +creating a two level directory hierarchy but only setting SETGID on +the child. Some of the "make install" logic seemed to depend on the +property that new child directories created under a parent that was +SETGID inherits the SETGID property. To the best of my understanding +this is true only on Linux and Solaris and not generally portable. I +replaced the use of the local mkinstalldirs (and subsequent chmod g+s) +with what I believe is much more standard "install -d" and with the +SETGID as part of the mode. All directories are created this way, +nothing depends on inheritance. I also removed some ancient Makefile +cruft that is no longer in use, variables no longer initialized by +configure, etc. (just confusing, accidents waiting to happen if +someone thought it was valid). + +Issues: +------- + +Most of the changes were isolated to whole directories and were well +defined. Only the contents of DATA_DIR required splitting its contents +across more than one directory. DATA_DIR contained both pickle files +created during processing and what would be characterized as +configuration files (e.g. password files, MTA alias +files. sitelist.cfg). A new directory CONFIG_DIR was created (in FHS +its /etc/mailman) to hold what has traditionally been in /etc +(e.g. configuration, passwords, aliases, etc). The other things that +were in DATA_DIR was left there. + +The mailman configuration file presented the biggest challenge and the +one exception to FHS. The culprit is mm_cfg.py. This is really +mailman's configuration file and it should be located in CONFIG_DIR +(/etc/mailman). But there were several major problems with moving that +file there. + +1) It's executable python code, not a text file containing + configuration parameters. Executable code should be in a "lib" or + "bin" location. Why is this an issue? Because SELinux pays very + close attention to who can execute and with precise control over a + host of run time operations, its often based on directory + location. But most importantly config files have to be editable, + security properties transit when modified and new files pick up + security properties of the directory that contains the file. We do + not want any file created (or modified) in a configuration + directory to pick up security permissions granting execution + rights or for that matter any other run time security permissions. + +2) The import of mm_cfg and its directory (Mailman) is all through the + code, it would be very invasive to change. If mm_cfg continues to be + executable python code as opposed to a text file then paths.py + would have to be altered to prepend /etc/mailman to the import + path, another significant security violation. + +3) Any experienced mailman admin will know that mm_cfg.py is located + with the rest of the mailman executable code under $prefix/Mailman + and will expect to find this critical file there. + +I concluded for the above reasons that mm_cfg.py in the 2.1.x +time frame was best handled as an FHS exception. Our rpm does however +create a symbolic link from /etc/mailman/mm_cfg.py to +$prefix/Mailman/mm_cfg.py so that it "appears" in configuration +directory. This will prepare admins to start looking for mm_cfg along +with the other configuration files. Note that security policies do not +transit across links therefore there are no security policy issues +with the sym link in /etc/mailman. Hopefully in MM 3.0 the +configuration file will be textural which will eliminate the security +policy issue. Also note that sitelist.cfg was completely moved to +/etc/mailman as that is not executed, but rather "evaluated" (I think +evaluation in /etc is fine, but I'm not 100% positive :-). + +Request for testing: +-------------------- + +I have created RPM's with the changes outlined above and documented +below, you may obtain them here: + +ftp://people.redhat.com/jdennis/mailman-2.1.5-26.i386.rpm +ftp://people.redhat.com/jdennis/mailman-2.1.5-26.src.rpm + +I have tested the new rpm and have not found any problems. The +modified check_perms does not report any problems. But I'm well aware +my testing is limited and my comprehension of mailman is limited, it +is inevitable something has been missed that only wider testing will +reveal and I would appreciate that testing by experts. These changes +are slated to appear in our Fedora Core 3 release which is closing in +a couple of days in preparation for release. Testing prior to that +close would be appreciated. Note that with Fedora Core 3 SELinux will +be enabled by default in "targeted mode". This means that SELinux +policy will be applied to key system services only, mail and hence +mailman is one of those key system services. Ideally any testing +should be done from "rawhide" with the 2.1.5-26 version of mailman and +the new matching SELinux security policy, but I would be perfectly +happy for any testing of the basic rpm even if its not running under +targeted security policy. + +Patch File: +----------- + +Attached is the patch made against a virgin 2.1.5 tarball with the +changes outlined above. + + +User / Admin Documentation: +--------------------------- + +The following is what I prepared for our installation documentation +which can be found in /usr/share/doc/mailman-* + + + +IMPORTANT NOTE FOR USERS UPGRADING FROM A PREVIOUS RED HAT MAILMAN +INSTALLATION OR THOSE FAMILIAR WITH "STANDARD MAILMAN INSTALLATIONS" + + Earlier Red Hat mailman rpms installed all of the mailman files under + /var/mailman. This did not conform to the Filesystem Hierarchy + Standard (FHS) and created security violations when SELinux is + enabled. As of mailman-2.1.5-21 the following directory and file + changes occurred: + + variable data (e.g. lists) is in /var/lib/mailman, library code, + executables, and scripts are located in /usr/lib/mailman, lock files are in + /var/lock/mailman, the pid file is in /var/run/mailman, qfiles are in /var/spool/mailman, + and configuration files have been moved to the new /etc/mailman + + If you previously had mailman installed and have edited files in + /var/mailman (e.g. configuration) you will need to move those changes + to their new locations. + + The mapping of old locations to new locations is as follows: + + Directory Mapping: + /var/mailman --> /var/lib/mailman + /var/mailman/Mailman --> /usr/lib/mailman/Mailman + /var/mailman/archives --> /var/lib/mailman/archives + /var/mailman/bin --> /usr/lib/mailman/bin + /var/mailman/cgi-bin --> /usr/lib/mailman/cgi-bin + /var/mailman/cron --> /usr/lib/mailman/cron + /var/mailman/data --> /var/lib/mailman/data + /var/mailman/lists --> /var/lib/mailman/lists + /var/mailman/locks --> /var/lock/mailman + /var/mailman/logs --> /var/log/mailman + /var/mailman/mail --> /usr/lib/mailman/mail + /var/mailman/messages --> /usr/lib/mailman/messages + /var/mailman/pythonlib --> /usr/lib/mailman/pythonlib + /var/mailman/qfiles --> /var/spool/mailman + /var/spool/mailman/qfiles --> /var/spool/mailman + /var/mailman/scripts --> /usr/lib/mailman/scripts + /var/mailman/spam --> /var/lib/mailman/spam + /var/mailman/templates --> /usr/lib/mailman/templates + /var/mailman/tests --> /usr/lib/mailman/tests + + File Mapping: + /var/mailman/data/adm.pw --> /etc/mailman/adm.pw + /var/mailman/data/creator.pw --> /etc/mailman/creator.pw + /var/mailman/data/aliases --> /etc/mailman/aliases + /var/mailman/data/virtual-mailman --> /etc/mailman/virtual-mailman + /var/mailman/data/sitelist.cfg --> /etc/mailman/sitelist.cfg + /var/mailman/data/master-qrunner.pid --> /var/run/mailman/master-qrunner.pid + + Discussion of directory and file relocation: + + Two new directories were created and three existing directories which + were hardcoded are now configurable. + + PID_DIR is used to hold the process id and is new because FHS wants + pid files to be located in /var/run. The FHS says when there is only a + single pid file it should be located in /var/run/<name>.pid, and when + there are multiple pid's files they should be located together in a + subdirectory, /var/run/<name>/. Currently mailman only has a single + pid file, but it does have multiple processes (qrunners). Also SELinux + security policy is easier to write if processes are segregated into + individual subdirectories. Therefore we elected to place the mailman + pid file in its own subdirectory, there is some debate if this is 100% + FHS compliant because there is only currently a single pid file, but + this gives us greater future flexibility and is in the spirit of FHS. + + CONFIG_DIR is used to hold the site configuration files. FHS wants + configuration files stored in /etc/mailman. Previously configuration + files were mixed in with data files in DATA_DIR and with the run-time + code (e.g. Mailman/mm_cfg.py). CONFIG_DIR continues to exist but is + now restricted to data files (e.g. python pickle files). The password + files, alias files, and .cfg (e.g. sitelist.cfg) files have been moved + to CONFIG_DIR. mm_cfg.py which is the primary mailman configuration + file was presented a bit of a dilemma. In theory it should be located + in /etc/mailman, however it is executable code which argues it should + be located with the other executable files, it has traditionally lived + in $PREFIX/Mailman and experienced mailman admins will expect to find + it there. Modifying all the mm_cfg import statements and paths.py was + believed to be too invasive a change, and technically its part of the + "Mailman" package and moving it would take it out of the package + (although currently I don't think that presents any known + issues). Instead a compromise approach was adopted, mm_cfg.py is + symbolically linked into the /etc/mailman directory pointing to + $PREFIX/Mailman/mm_cfg.py. Thus mm_cfg.py "appears" in the + configuration directory but retains its traditional location, this was + deemed a reasonable compromise for the mailman 2.1.x timeframe. + + sitelist.cfg has a symbolic link in its old location in the DATA_DIR + pointing to its new location in the CONFIG_DIR. + + New Directories (can be specified as parameter to configure): + + CONFIG_DIR: default=$VAR_PREFIX/data FHS=/etc/mailman + PID_DIR default=$VAR_PREFIX/data FHS=/var/run/mailman + + Existing directories that can now be specified as parameter to configure: + + LOCK_DIR: default=$VAR_PREFIX/locks FHS=/var/lock/mailman + LOG_DIR: default=$VAR_PREFIX/logs FHS=/var/log/mailman + QUEUE_DIR default=$VAR_PREFIX/qfiles FHS=/var/spool/mailman + + +-- +John Dennis <jdennis at redhat.com> diff --git a/contrib/redhat_fhs.patch b/contrib/redhat_fhs.patch new file mode 100644 index 00000000..e05347f6 --- /dev/null +++ b/contrib/redhat_fhs.patch @@ -0,0 +1,251 @@ +Only in mailman-2.1.5.FHS: autom4te.cache +diff -r -u mailman-2.1.5.orig/bin/check_perms mailman-2.1.5.FHS/bin/check_perms +--- mailman-2.1.5.orig/bin/check_perms 2003-03-31 15:07:55.000000000 -0500 ++++ mailman-2.1.5.FHS/bin/check_perms 2004-10-08 16:05:09.000000000 -0400 +@@ -164,7 +164,8 @@ + print _('checking mode for %(prefix)s') + dirs = {} + for d in (mm_cfg.PREFIX, mm_cfg.EXEC_PREFIX, mm_cfg.VAR_PREFIX, +- mm_cfg.LOG_DIR): ++ mm_cfg.CONFIG_DIR, mm_cfg.DATA_DIR, mm_cfg.LOCK_DIR, ++ mm_cfg.LOG_DIR, mm_cfg.QUEUE_DIR, mm_cfg.PID_DIR): + dirs[d] = True + for d in dirs.keys(): + try: +Only in mailman-2.1.5.FHS/bin: check_perms~ +Only in mailman-2.1.5.FHS: config.log +Only in mailman-2.1.5.FHS: configure +diff -r -u mailman-2.1.5.orig/configure.in mailman-2.1.5.FHS/configure.in +--- mailman-2.1.5.orig/configure.in 2003-12-24 12:11:48.000000000 -0500 ++++ mailman-2.1.5.FHS/configure.in 2004-09-30 16:13:56.000000000 -0400 +@@ -180,7 +180,7 @@ + AC_SUBST(VAR_PREFIX) + AC_MSG_CHECKING(for --with-var-prefix) + AC_ARG_WITH(var-prefix, dnl +-[ --with-var-prefix directory for mutable data [/var/mailman]]) ++[ --with-var-prefix directory for mutable data [/var/mailman]]) + case "$with_var_prefix" in + yes) VAR_PREFIX="$default_var_prefix"; ans=$VAR_PREFIX;; + ""|no) VAR_PREFIX="$prefix"; ans="no";; +@@ -207,6 +207,61 @@ + prefixcheck=$VAR_PREFIX + fi + ++# Get the configuration file directory ++AC_SUBST(CONFIG_DIR) ++AC_MSG_CHECKING(for --with-config-dir) ++AC_ARG_WITH(config-dir, dnl ++[ --with-config-dir specify directory for configuration data other than [VAR_]PREFIX/data]) ++case "$with_config_dir" in ++ yes|no|"") CONFIG_DIR="$VAR_PREFIX/data";; ++ *) CONFIG_DIR=$with_config_dir;; ++esac ++AC_MSG_RESULT($CONFIG_DIR) ++ ++# Get the lock directory ++AC_SUBST(LOCK_DIR) ++AC_MSG_CHECKING(for --with-lock-dir) ++AC_ARG_WITH(lock-dir, dnl ++[ --with-lock-dir specify directory for lock files other than [VAR_]PREFIX/locks]) ++case "$with_lock_dir" in ++ yes|no|"") LOCK_DIR="$VAR_PREFIX/locks";; ++ *) LOCK_DIR=$with_lock_dir;; ++esac ++AC_MSG_RESULT($LOCK_DIR) ++ ++# Get the log directory ++AC_SUBST(LOG_DIR) ++AC_MSG_CHECKING(for --with-log-dir) ++AC_ARG_WITH(log-dir, dnl ++[ --with-log-dir specify directory for log files other than [VAR_]PREFIX/logs]) ++case "$with_log_dir" in ++ yes|no|"") LOG_DIR="$VAR_PREFIX/logs";; ++ *) LOG_DIR=$with_log_dir;; ++esac ++AC_MSG_RESULT($LOG_DIR) ++ ++# Get the pid directory ++AC_SUBST(PID_DIR) ++AC_MSG_CHECKING(for --with-pid-dir) ++AC_ARG_WITH(pid-dir, dnl ++[ --with-pid-dir specify directory for the pid file other than [VAR_]PREFIX/data]) ++case "$with_pid_dir" in ++ yes|no|"") PID_DIR="$VAR_PREFIX/data";; ++ *) PID_DIR=$with_pid_dir;; ++esac ++AC_MSG_RESULT($PID_DIR) ++ ++# Get the queue directory ++AC_SUBST(QUEUE_DIR) ++AC_MSG_CHECKING(for --with-queue-dir) ++AC_ARG_WITH(queue-dir, dnl ++[ --with-queue-dir specify directory for queue files other than [VAR_]PREFIX/qfiles]) ++case "$with_queue_dir" in ++ yes|no|"") QUEUE_DIR="$VAR_PREFIX/qfiles";; ++ *) QUEUE_DIR=$with_queue_dir;; ++esac ++AC_MSG_RESULT($QUEUE_DIR) ++ + # new macro for finding group names + AC_DEFUN(MM_FIND_GROUP_NAME, [ + # $1 == variable name +@@ -619,7 +674,7 @@ + templates/Makefile cron/Makefile scripts/Makefile messages/Makefile + cron/crontab.in misc/mailman Makefile + tests/Makefile tests/bounces/Makefile tests/msgs/Makefile +- $SCRIPTS], ++ $SCRIPTS ], + echo "configuration completed at" `date`) + + # Make sure all the build scripts are executable. +Only in mailman-2.1.5.FHS: configure.in~ +diff -r -u mailman-2.1.5.orig/Mailman/Defaults.py.in mailman-2.1.5.FHS/Mailman/Defaults.py.in +--- mailman-2.1.5.orig/Mailman/Defaults.py.in 2004-04-24 22:30:03.000000000 -0400 ++++ mailman-2.1.5.FHS/Mailman/Defaults.py.in 2004-10-08 14:38:57.000000000 -0400 +@@ -1198,9 +1198,11 @@ + + # Useful directories + LIST_DATA_DIR = os.path.join(VAR_PREFIX, 'lists') +-LOG_DIR = os.path.join(VAR_PREFIX, 'logs') +-LOCK_DIR = os.path.join(VAR_PREFIX, 'locks') ++LOG_DIR = '@LOG_DIR@' ++LOCK_DIR = '@LOCK_DIR@' ++CONFIG_DIR = '@CONFIG_DIR@' + DATA_DIR = os.path.join(VAR_PREFIX, 'data') ++PID_DIR = '@PID_DIR@' + SPAM_DIR = os.path.join(VAR_PREFIX, 'spam') + WRAPPER_DIR = os.path.join(EXEC_PREFIX, 'mail') + BIN_DIR = os.path.join(PREFIX, 'bin') +@@ -1211,7 +1213,7 @@ + PRIVATE_ARCHIVE_FILE_DIR = os.path.join(VAR_PREFIX, 'archives', 'private') + + # Directories used by the qrunner subsystem +-QUEUE_DIR = os.path.join(VAR_PREFIX, 'qfiles') ++QUEUE_DIR = '@QUEUE_DIR@' + INQUEUE_DIR = os.path.join(QUEUE_DIR, 'in') + OUTQUEUE_DIR = os.path.join(QUEUE_DIR, 'out') + CMDQUEUE_DIR = os.path.join(QUEUE_DIR, 'commands') +@@ -1225,9 +1227,9 @@ + MAILDIR_DIR = os.path.join(QUEUE_DIR, 'maildir') + + # Other useful files +-PIDFILE = os.path.join(DATA_DIR, 'master-qrunner.pid') +-SITE_PW_FILE = os.path.join(DATA_DIR, 'adm.pw') +-LISTCREATOR_PW_FILE = os.path.join(DATA_DIR, 'creator.pw') ++PIDFILE = os.path.join(PID_DIR, 'master-qrunner.pid') ++SITE_PW_FILE = os.path.join(CONFIG_DIR, 'adm.pw') ++LISTCREATOR_PW_FILE = os.path.join(CONFIG_DIR, 'creator.pw') + + # Import a bunch of version numbers + from Version import * +Only in mailman-2.1.5.FHS/Mailman: Defaults.py.in~ +diff -r -u mailman-2.1.5.orig/Mailman/MTA/Postfix.py mailman-2.1.5.FHS/Mailman/MTA/Postfix.py +--- mailman-2.1.5.orig/Mailman/MTA/Postfix.py 2003-03-31 16:49:43.000000000 -0500 ++++ mailman-2.1.5.FHS/Mailman/MTA/Postfix.py 2004-10-08 16:02:20.000000000 -0400 +@@ -32,8 +32,8 @@ + from Mailman.Logging.Syslog import syslog + + LOCKFILE = os.path.join(mm_cfg.LOCK_DIR, 'creator') +-ALIASFILE = os.path.join(mm_cfg.DATA_DIR, 'aliases') +-VIRTFILE = os.path.join(mm_cfg.DATA_DIR, 'virtual-mailman') ++ALIASFILE = os.path.join(mm_cfg.CONFIG_DIR, 'aliases') ++VIRTFILE = os.path.join(mm_cfg.CONFIG_DIR, 'virtual-mailman') + + try: + True, False +Only in mailman-2.1.5.FHS/Mailman/MTA: Postfix.py~ +Only in mailman-2.1.5.orig: mailman-FHS.patch +diff -r -u mailman-2.1.5.orig/Makefile.in mailman-2.1.5.FHS/Makefile.in +--- mailman-2.1.5.orig/Makefile.in 2003-03-31 14:26:57.000000000 -0500 ++++ mailman-2.1.5.FHS/Makefile.in 2004-10-15 16:48:17.000000000 -0400 +@@ -28,6 +28,11 @@ + prefix= @prefix@ + exec_prefix= @exec_prefix@ + var_prefix= @VAR_PREFIX@ ++configdir= @CONFIG_DIR@ ++lockdir= @LOCK_DIR@ ++logdir= @LOG_DIR@ ++piddir= @PID_DIR@ ++queuedir= @QUEUE_DIR@ + DESTDIR= + + CC= @CC@ +@@ -41,8 +46,12 @@ + OPT= @OPT@ + CFLAGS= @CFLAGS@ $(OPT) $(DEFS) + ++FHS_DIRS= \ ++ ${configdir} ${lockdir} ${logdir} ${piddir} ${queuedir} ++ ++ + VAR_DIRS= \ +- logs archives lists locks data spam qfiles \ ++ archives lists data spam \ + archives/private archives/public + + ARCH_INDEP_DIRS= \ +@@ -96,6 +105,15 @@ + else true; \ + fi; \ + done ++ @for d in $(FHS_DIRS); \ ++ do \ ++ dir=$(DESTDIR)/$$d; \ ++ if test ! -d $$dir; then \ ++ echo "Creating directory $$dir"; \ ++ $(INSTALL) -d -m $(DIRMODE) $$dir; \ ++ else true; \ ++ fi; \ ++ done + chmod o-r $(DESTDIR)$(var_prefix)/archives/private + @for d in $(ARCH_INDEP_DIRS); \ + do \ +Only in mailman-2.1.5.FHS: Makefile.in~ +Only in mailman-2.1.5.FHS/messages: Makefile.in~ +diff -r -u mailman-2.1.5.orig/misc/mailman.in mailman-2.1.5.FHS/misc/mailman.in +--- mailman-2.1.5.orig/misc/mailman.in 2003-09-25 18:13:26.000000000 -0400 ++++ mailman-2.1.5.FHS/misc/mailman.in 2004-10-06 16:15:28.000000000 -0400 +@@ -24,13 +24,13 @@ + # On Debian, type "update-rc.d mailman defaults" + # On RedHat, and derivatives, install with "chkconfig --add mailman" + # +-# chkconfig: 2345 98 12 ++# chkconfig: - 98 12 + # description: Mailman is the GNU Mailing List Manager, a program that \ + # manages electronic mail discussion groups. For more \ + # on GNU Mailman see http://www.list.org + # processname: mailmanctl + # config: @prefix@/Mailman/mm_cfg.py +-# pidfile: @prefix@/data/master-qrunner.pid ++# pidfile: @PID_DIR@/master-qrunner.pid + + PYTHON=@PYTHON@ + MAILMANHOME=@prefix@ +Only in mailman-2.1.5.FHS/misc: mailman.in~ +diff -r -u mailman-2.1.5.orig/misc/Makefile.in mailman-2.1.5.FHS/misc/Makefile.in +--- mailman-2.1.5.orig/misc/Makefile.in 2004-05-13 23:34:34.000000000 -0400 ++++ mailman-2.1.5.FHS/misc/Makefile.in 2004-10-13 14:00:19.000000000 -0400 +@@ -26,6 +26,12 @@ + prefix= @prefix@ + exec_prefix= @exec_prefix@ + var_prefix= @VAR_PREFIX@ ++configdir= @CONFIG_DIR@ ++lockdir= @LOCK_DIR@ ++logdir= @LOG_DIR@ ++piddir= @PID_DIR@ ++queuedir= @QUEUE_DIR@ ++MAILMAN_GROUP= @MAILMAN_GROUP@ + DESTDIR= + + CC= @CC@ +@@ -84,7 +90,7 @@ + $(INSTALL) -m $(FILEMODE) paths.py $$dir; \ + done + $(INSTALL) -m $(EXEMODE) mailman $(DESTDIR)$(SCRIPTSDIR) +- $(INSTALL) -m $(FILEMODE) sitelist.cfg $(DESTDIR)$(DATADIR) ++ $(INSTALL) -m $(FILEMODE) sitelist.cfg $(DESTDIR)$(configdir) + + install-packages: + for p in $(PACKAGES); \ +Only in mailman-2.1.5.FHS/misc: Makefile.in~ +Only in mailman-2.1.5.FHS/templates: Makefile.in~ |