1 |
# $Id: ezmlm-web.spec,v 1.1 2022/03/15 19:09:48 jpp Exp $ |
2 |
# Authority: gordonr |
3 |
# Name: Gordon Rowell |
4 |
|
5 |
Summary: Web interface to ezmlm configuration |
6 |
%define name ezmlm-web |
7 |
Name: %{name} |
8 |
%define version 3.3.1 |
9 |
%define release 8 |
10 |
Version: %{version} |
11 |
Release: %{release}%{?dist} |
12 |
License: BSD-style |
13 |
Group: Networking/Daemons |
14 |
URL: https://systemausfall.org/toolforge/ezmlm-web/ |
15 |
Source: https://systemausfall.org/toolforge/ezmlm-web/download/ezmlm-web-3.3.1.tar.gz |
16 |
Patch0: ezmlm-web-3.3.1-smeintegration.patch |
17 |
Patch1: ezmlm-web-3.3.1-cgi.patch |
18 |
Patch2: ezmlm-web-3.3.1-modiffor722.patch |
19 |
BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot |
20 |
Requires: ezmlm-idx-std |
21 |
Requires: httpd |
22 |
Requires: qmail |
23 |
Requires: perl |
24 |
Requires: perl-Ezmlm |
25 |
Requires: perl-MailTools |
26 |
BuildRequires: gcc |
27 |
BuildRequires: e-smith-devtools |
28 |
BuildRequires: perl-Ezmlm |
29 |
BuildRequires: perl-devel |
30 |
|
31 |
%description |
32 |
The need for ezmlm-web arose from the fact that we host many student |
33 |
societies on our system. These societies usually have a virtual host for web |
34 |
and email, which is administered by a computer rep from the society. These |
35 |
computer reps often have little or no knowledge of Unix and so we needed a |
36 |
user friendly system that would let the create and maintain mailing lists |
37 |
(such as members@foo.soc.ru.ac.za, committee@foo.soc.ru.ac.za, etc). |
38 |
|
39 |
Since I am never keen to re-invent the wheel, I had a look at Steve Peterson's |
40 |
script (http://virtation.com/qmail/ml-sub), which allows people to subscribe |
41 |
and unsubscribe from mailing lists using a form->email gateway. This is fine |
42 |
for putting on a web page saying "here come and join our mailing list", but |
43 |
doesn't really allow you to administrate a list. |
44 |
|
45 |
Security of mailing lists was a concern, as we really didn't want |
46 |
unauthorised people to be able to alter some users list. Ezmlm-web itself |
47 |
implements no security checks (apart from un-tainting input) and so relies |
48 |
on the web server to do this (re-inventing the wheel again :). We use an |
49 |
Apache webserver, so one can control access to a directory using a .htaccess |
50 |
file or in the access.conf file. ApacheWeek have a good article on doing |
51 |
this at http://www.apacheweek.com/features/userauth. I also give examples |
52 |
later in this document. |
53 |
|
54 |
This version of ezmlm-web (2.0) is based to a large extent on previous |
55 |
versions that I have developed. It has however been totally re-written to |
56 |
make use of the Mail::Ezmlm perl module I wrote. At the same time it was |
57 |
updated and extended to include the new features of ezmlm-idx. It includes |
58 |
many new features that have been suggested to me over the last few months, |
59 |
and hopefully is now useful to a much larger group of people. |
60 |
|
61 |
%changelog |
62 |
* Wed Mar 16 2022 Jean-Philippe Pialasse <tests@pialasse.com> 3.3.1-8.sme |
63 |
- remove /usr/lib64 from filelist, this conflict with base rpm filesystem |
64 |
|
65 |
* Fri Apr 22 2016 Jean-Philipe Pialasse <tests@pialasse.com> 3.3.1-7.sme |
66 |
- fix to build against SME 9 centos 6 [SME: 8439] |
67 |
|
68 |
* Thu Apr 21 2016 Jean-Philipe Pialasse <tests@pialasse.com> 3.3.1-5.sme |
69 |
- remove non available options (always on) in ezmlm-idx 7.2.2 [SME: 9470] |
70 |
- remove setting user access to web, as unecessary in SME |
71 |
- patch ezmlm-web-3.3.1-modiffor722.patch |
72 |
|
73 |
* Wed Apr 20 2016 Jean-Philipe Pialasse <tests@pialasse.com> 3.3.1-4.sme |
74 |
- small fix to save some config with 7.2.2 idx [SME: 9470] |
75 |
|
76 |
* Mon Apr 18 2016 Jean-Philipe Pialasse <tests@pialasse.com> 3.3.1-1.sme |
77 |
- update to 3.3.1 [SME: 7588] |
78 |
|
79 |
* Sun Apr 29 2007 Shad L. Lords <slords@mail.com> |
80 |
- Clean up spec so package can be built by koji/plague |
81 |
|
82 |
* Thu Dec 07 2006 Shad L. Lords <slords@mail.com> |
83 |
- Update to new release naming. No functional changes. |
84 |
- Make Packager generic |
85 |
|
86 |
* Tue Oct 25 2005 Gordon Rowell <gordonr@gormand.com.au> 2.3-01sme02 |
87 |
- Retarget previous patches against 2.3 |
88 |
- Change ezmlm-cgi location |
89 |
- Access local help icon |
90 |
- Hide delete button if -c provided |
91 |
|
92 |
* Tue Oct 25 2005 Gordon Rowell <gordonr@gormand.com.au> 2.3-01sme01 |
93 |
- Update to 2.3 - ezmlm-web has moved to a new home |
94 |
|
95 |
* Wed Nov 28 2001 Gordon Rowell <gordonr@e-smith.com> |
96 |
- [2.1-04] |
97 |
- Create ezmlm user (uid/gid 80) in %pre if it doesn't already exist |
98 |
|
99 |
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com> |
100 |
- [2.1-03] |
101 |
- Allow the web server to execute the CGI script |
102 |
|
103 |
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com> |
104 |
- [2.1-02] |
105 |
- Remove [Delete] button if $opt_c is set |
106 |
- $opt_c "no list creation" now also means "no list deletion" |
107 |
|
108 |
* Wed Oct 24 2001 Gordon Rowell <gordonr@e-smith.com> |
109 |
- [2.1-01] |
110 |
- Initial packaging |
111 |
- Modified ezmlm-web.cgi path to /usr/bin |
112 |
- Modified $HELP_ICON_URL for RedHat Apache patch |
113 |
|
114 |
%prep |
115 |
%setup -n %{name}-%{version} |
116 |
%patch0 -p1 |
117 |
%patch1 -p1 |
118 |
%patch2 -p1 |
119 |
|
120 |
%build |
121 |
mkdir build |
122 |
perl Makefile.PL DESTDIR=build PREFIX=/usr |
123 |
# REALINSTALLBIN=/usr/bin/ezmlm-web |
124 |
make |
125 |
make install |
126 |
|
127 |
|
128 |
|
129 |
%install |
130 |
rm -rf $RPM_BUILD_ROOT |
131 |
|
132 |
(cd build ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) |
133 |
/sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ |
134 |
| sed -e '/ezmlm-web.cgi.1p/d' \ |
135 |
| grep -vr '/usr/lib64$' \ |
136 |
| grep -vr '/usr/lib$' \ |
137 |
> %{name}-%{version}-%{release}-filelist |
138 |
#| sed -e '/ezmlm-web.cgi.1p/d' \ |
139 |
#> %{name}-%{version}-%{release}-filelist |
140 |
|
141 |
# creating the cgi index to the suid wrapper |
142 |
cp -a $RPM_BUILD_ROOT/usr/bin/ezmlm-web.wrapper $RPM_BUILD_ROOT/usr/local/share/ezmlm-web/www-data/index.cgi |
143 |
|
144 |
%clean |
145 |
rm -rf $RPM_BUILD_ROOT |
146 |
|
147 |
%pre |
148 |
if [ -d /home/e-smith ] |
149 |
then |
150 |
EZMLMHOME=/home/e-smith/files/ezmlm |
151 |
else |
152 |
EZMLMHOME=/home/ezmlm |
153 |
fi |
154 |
grep '^ezmlm:' /etc/passwd > /dev/null || \ |
155 |
/usr/sbin/useradd -c "ezmlm" -u 80 -m -d $EZMLMHOME -s /bin/false ezmlm |
156 |
|
157 |
%post |
158 |
%preun |
159 |
%postun |
160 |
|
161 |
%files -f %{name}-%{version}-%{release}-filelist |
162 |
%defattr(-,root,root) |
163 |
%attr(104755,ezmlm,ezmlm) /usr/local/share/ezmlm-web/www-data/index.cgi |
164 |
%doc /usr/share/man/man1/ezmlm-web.cgi.1p.gz |