ezmlm-web packaging:

* move debian files to a separate directory
This commit is contained in:
lars 2008-10-15 22:31:23 +00:00
parent 3c3fad072f
commit 370976abad
14 changed files with 6 additions and 317 deletions

View File

@ -33,7 +33,12 @@ OVERVIEW:
1b) debian package
This is the (by far) most convenient way to install ezmlm-web.
Read debian/README.Debian for details.
Add the following line to your /etc/apt/sources.list file:
deb http://systemausfall.org/toolforge/debian/ testing main contrib
Now you can install it:
aptitude update
aptitude install ezmlm-web
(debian users may stop reading here)

69
debian/README.Debian vendored
View File

@ -1,69 +0,0 @@
How to use ezmlm-web with debian
$Id$
Table of content
1 - install the package
2 - create user-sprecific suid binaries
3 - create a user-specific configuration
4 - enable stylesheet
5 - access control
6 - testing
#################################################################
1) install the package
The debian packages for ezmlm-web are not part of the main
debian distribution. Instead you have to use the debian repository
at systemausfall.org. Just add the following line to your
/etc/apt/sources.list:
deb http://systemausfall.org/toolforge/debian testing main contrib non-free
Now you may simply execute the following commands:
apt-get update
apt-get install ezmlm-web
2) create user-specific suid binaries
As perl-suid is considered deprecated, you have to compile a C-wrapper
for every user of your debian system, who wants to manage his mailing
lists with ezmlm-we.
Usually you do this only for your virtual mailing list user.
to create a wrapper, type the following:
ezmlm-web-make-suid USERNAME DESTINATION_FILE
e.g: ezmlm-web-make-suid john ~john/public_html/cgi-bin/ezmlm-web
3) create a user-specific configuration file (optional)
Copy /usr/share/doc/ezmlm-web/examples/ezmlmwebrc.dist to ~john/.ezmlmwebrc
and change its content according to your setup.
4) web server configuration
Adapt /usr/share/doc/ezmlm-web/examples/apache.conf.dist to your needs
and copy it to /etc/apache2/conf.d/ezmlm-web.
(for other web servers: use a similar setup)
5) access control (optional)
Configure access control for the fresh cgi binary. Maybe you can
use the htaccess.sample file in /usr/share/doc/ezmlm-web/examples as
a template.
Now you should create a webusers file to define the permissions of all
possible web users. An example webusers file can be found at
/usr/share/doc/ezmlm-web/examples/webusers.sample.
See /usr/share/doc/ezmlm-web/README for details about access control.
6) testing
Now you can access the ezmlm-web interface by using your web browser.
e.g. point it to http://localhost/~john/cgi-bin/ezmlm-web
If the web interface does not look like you would expect it, then you
may have to revise your stylesheet settings (HTML_CSS_COMMON and
HTML_CSS_COLOR in ezmlmwebrc).

11
debian/changelog vendored
View File

@ -1,11 +0,0 @@
ezmlm-web (3.3-1) unstable; urgency=low
* upstream update
-- Lars Kruse <devel@sumpfralle.de> Sun, 12 Oct 2008 01:51:05 +0200
ezmlm-web (3.2-1) unstable; urgency=low
* upstream update
-- Lars Kruse <devel@sumpfralle.de> Wed, 15 Aug 2007 19:30:19 +0200

1
debian/compat vendored
View File

@ -1 +0,0 @@
5

24
debian/control vendored
View File

@ -1,24 +0,0 @@
Source: ezmlm-web
Section: admin
Priority: extra
Maintainer: Lars Kruse <devel@sumpfralle.de>
Build-Depends: debhelper (>>3.0.0), gcc (>= 2.95), dpatch
Standards-Version: 3.8.0
Homepage: https://systemausfall.org/toolforge/ezmlm-web
Package: ezmlm-web
Architecture: any
Depends: httpd-cgi, libemail-address-perl, libemail-ezmlm-perl (>= 0.07), libclearsilver-perl, ${perl:Depends}
Suggests: qmail-src, bash (>=2.0), gcc
Description: Web interface for ezmlm-idx mailing list administration
This web interface allows you to configure every part of an ezmlm-idx
mailing list.
Access control makes it possible, to share the administrative work in a
controlled way.
This package depends on the following programs, that are not part of the main
debian distribution:
* qmail - http://cr.yp.to/qmail.html
* ezmlm-idx - http://ezmlm.org/
* Mail::Ezmlm perl module via cpan or as a debian package from
https://systemausfall.org/toolforge/debian

35
debian/copyright vendored
View File

@ -1,35 +0,0 @@
This package was debianized by Lars Kruse <devel@sumpfralle.de> on
Sa Apr 29 10:43:16 CEST 2006
It was downloaded from https://systemausfall.org/toolforge/ezmlm-web/download
Upstream Author: Lars Kruse <devel@sumpfralle.de>
Copyright:
Copyright (c) The Regents of the University of California.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.

1
debian/dirs vendored
View File

@ -1 +0,0 @@
etc/ezmlm-web

4
debian/docs vendored
View File

@ -1,4 +0,0 @@
changelog
README
UPGRADING
TODO

View File

@ -1 +0,0 @@
examples/*

View File

@ -1,5 +0,0 @@
man/ezmlm-web-make-suid.1
man/ezmlm-web.wrapper.1
blib/man1/ezmlm-web.cgi.1p
man/ezmlmwebrc.5
man/webusers.5

View File

@ -1 +0,0 @@
# no patches required

86
debian/rules vendored
View File

@ -1,86 +0,0 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# necessary for dpatch
.NOTPARALLEL:
configure: configure-stamp
configure-stamp: patch
dh_testdir
perl Makefile.PL INSTALLDIRS=vendor DESTDIR="$(CURDIR)/debian/ezmlm-web"
touch configure-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
$(MAKE)
# fix 'usr/local/' paths in various files
sed -i 's#usr/local/#usr/#g' examples/* suid-wrapper/* man/*
touch build-stamp
clean: clean-patched unpatch
clean-patched:
dh_testdir
dh_testroot
-$(MAKE) clean
rm -f build-stamp configure-stamp Makefile.old
dh_clean
patch: patch-stamp
patch-stamp:
dpatch apply-all
touch patch-stamp
unpatch:
dpatch deapply-all
rm -rf patch-stamp debian/patched
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
$(MAKE) install
install -c -m 644 examples/ezmlmwebrc.dist "$(CURDIR)/debian/ezmlm-web/etc/ezmlm-web/ezmlmwebrc"
# Build architecture-independent files here.
binary-indep: build install
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_installchangelogs
dh_installdocs
dh_installexamples
dh_install
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_perl
dh_installdeb
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure

View File

@ -1,5 +1,3 @@
debian
intl
spec
package.exclude
README.crypto

View File

@ -1,76 +0,0 @@
#!/bin/sh
#
# Copyright (c) 02005 Lars Kruse <devel@sumpfralle.de>
#
# License: This script is distributed under the terms of
# the BSD license
#
# build a debian package
#
set -ue
######### some settings ###########
ROOT_DIR=$(dirname "$0")/..
ROOT_DIR=$(cd "$ROOT_DIR"; pwd)
BUILD_DIR=/tmp/ezmlm-web-build-$$
PACKAGE_DIR=$ROOT_DIR/../tags/packages
[ ! -e "$PACKAGE_DIR" ] && PACKAGE_DIR=$ROOT_DIR/../packages
[ ! -e "$PACKAGE_DIR" ] && echo "package dir not found" >&2 && exit 1
############# do it ###############
[ -e "$BUILD_DIR" ] && rm -rf "$BUILD_DIR"
ACTION=build
[ $# -gt 0 ] && ACTION=$1 && shift
case "$ACTION" in
build )
mkdir -p "$BUILD_DIR/usr/share/ezmlm-web"
mkdir -p "$BUILD_DIR/usr/lib/ezmlm-web"
mkdir -p "$BUILD_DIR/usr/bin"
mkdir -p "$BUILD_DIR/usr/share/man/man1"
mkdir -p "$BUILD_DIR/usr/share/doc/ezmlm-web/examples"
mkdir -p "$BUILD_DIR/etc/ezmlm-web"
mkdir -p "$BUILD_DIR/var/www"
svn export "$ROOT_DIR/template" "$BUILD_DIR/usr/share/ezmlm-web/template" >/dev/null
svn export "$ROOT_DIR/css" "$BUILD_DIR/usr/share/ezmlm-web/css" >/dev/null
ln -s /usr/share/ezmlm-web/css/default.css "$BUILD_DIR/var/www/ezmlm-web.css"
svn export "$ROOT_DIR/lang" "$BUILD_DIR/usr/share/ezmlm-web/lang" >/dev/null
cp "$ROOT_DIR/ezmlm-web.cgi" "$BUILD_DIR/usr/lib/ezmlm-web/ezmlm-web.pl"
cp "$ROOT_DIR/debian-related/index.c" "$BUILD_DIR/usr/share/ezmlm-web"
cp "$ROOT_DIR/htaccess.sample" "$BUILD_DIR/usr/share/doc/ezmlm-web/examples"
cp "$ROOT_DIR/webusers.sample" "$BUILD_DIR/usr/share/doc/ezmlm-web/examples"
sed 's#/usr/local/#/usr/#g' "$ROOT_DIR/ezmlmwebrc" | tee "$BUILD_DIR/usr/share/doc/ezmlm-web/examples/ezmlmwebrc" >"$BUILD_DIR/etc/ezmlm-web/ezmlmwebrc"
cp "$ROOT_DIR/README" "$BUILD_DIR/usr/share/doc/ezmlm-web"
cp "$ROOT_DIR/TODO" "$BUILD_DIR/usr/share/doc/ezmlm-web"
cp "$ROOT_DIR/UPGRADING" "$BUILD_DIR/usr/share/doc/ezmlm-web"
cp "$ROOT_DIR/copyright" "$BUILD_DIR/usr/share/doc/ezmlm-web"
cp "$ROOT_DIR/debian-related/README.Debian" "$BUILD_DIR/usr/share/doc/ezmlm-web"
cp "$ROOT_DIR/debian-related/ezmlm-web-make-suid" "$BUILD_DIR/usr/bin"
gzip --best -c "$ROOT_DIR/changelog" \
>"$BUILD_DIR/usr/share/doc/ezmlm-web/changelog.gz"
gzip --best -c "$ROOT_DIR/debian-related/changelog.Debian" \
>"$BUILD_DIR/usr/share/doc/ezmlm-web/changelog.Debian.gz"
gzip --best -c "$ROOT_DIR/debian-related/man/ezmlm-web-make-suid.1" \
>"$BUILD_DIR/usr/share/man/man1/ezmlm-web-make-suid.1.gz"
svn export "$ROOT_DIR/debian-related/DEBIAN" "$BUILD_DIR/DEBIAN" >/dev/null
fakeroot dpkg-deb --build "$BUILD_DIR" "$PACKAGE_DIR"
rm -rf "$BUILD_DIR"
;;
check )
PACKAGE_FILE=$(find "$PACKAGE_DIR" -type f -name "ezmlm-web*" | grep "\.deb$" | sort -n | tail -1)
if [ -z "$PACKAGE_FILE" ]
then echo "no debian package found in $PACKAGE_DIR"
else lintian "$PACKAGE_FILE"
fi
;;
* )
echo "Syntax: $(basename $0) [ build | check | help ]"
echo
;;
esac