initial commit of file from CVS for ezmlm-idx on Thu Oct 9 11:43:07 AEDT 2025

This commit is contained in:
Trevor Batley
2025-10-09 11:43:07 +11:00
parent 6d4f5124ab
commit c5067e6f83
7 changed files with 235 additions and 1 deletions

1
.gitattributes vendored Normal file
View File

@@ -0,0 +1 @@
*.tar.gz filter=lfs diff=lfs merge=lfs -text

3
.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
*.rpm
*.log
*spec-20*

21
Makefile Normal file
View File

@@ -0,0 +1,21 @@
# Makefile for source rpm: ezmlm-idx
# $Id: Makefile,v 1.1 2022/03/15 18:21:59 jpp Exp $
NAME := ezmlm-idx
SPECFILE = $(firstword $(wildcard *.spec))
define find-makefile-common
for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done
endef
MAKEFILE_COMMON := $(shell $(find-makefile-common))
ifeq ($(MAKEFILE_COMMON),)
# attept a checkout
define checkout-makefile-common
test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2
endef
MAKEFILE_COMMON := $(shell $(checkout-makefile-common))
endif
include $(MAKEFILE_COMMON)

View File

@@ -1,3 +1,9 @@
# ezmlm-idx # ezmlm-idx
3rd Party (Maintained by Koozali) git repo for ezmlm-idx smecontribs 3rd Party (Maintained by Koozali) git repo for ezmlm-idx smecontribs
## Description
<br />*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.*
*Once it has been checked, then this comment will be deleted*
<br />

1
contriborbase Normal file
View File

@@ -0,0 +1 @@
contribs10

BIN
ezmlm-idx-7.2.2.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

199
ezmlm-idx.spec Normal file
View File

@@ -0,0 +1,199 @@
%define DEFAULT_LANGUAGE en_US
%define ezcgi /var/www/cgi-bin
%define ezcgi %{_localstatedir}/www/cgi-bin
%define rcdir %{_sysconfdir}/ezmlm
%define version 7.2.2
%define release 1
Name: ezmlm-idx
Version: %{version}
Release: %{release}%{?dist}
Summary: Easy Mailing List Manager for qmail + IDX patches
License: GPL-2.0
Group: Productivity/Networking/Email/Mailinglists
Url: http://untroubled.org/ezmlm/
Source0: http://untroubled.org/ezmlm/archive/%{version}/%{name}-%{version}.tar.gz
BuildRequires: mysql-devel
BuildRequires: postgresql-devel
Provides: ezmlm = %{version}
Obsoletes: ezmlm < %{version}
Provides: ezmlm-idx-std = %{version}
Obsoletes: ezmlm-idx-std < %{version}
Provides: ezmlm-toaster = %{version}
Obsoletes: ezmlm-toaster < %{version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: groff
%description
ezmlm lets users set up their own mailing lists within qmail's address
hierarchy. A user, Joe, types
ezmlm-make ~/SOS ~/.qmail-sos joe-sos isp.net
and instantly has a functioning mailing list, joe-sos@isp.net, with all
relevant information stored in a new ~/SOS directory.
ezmlm sets up joe-sos-subscribe and joe-sos-unsubscribe for automatic
processing of subscription and unsubscription requests. Any message to
joe-sos-subscribe will work; Joe doesn't have to explain any tricky
command formats. ezmlm will send back instructions if a subscriber sends
a message to joe-sos-request or joe-sos-help.
ezmlm automatically archives new messages. Messages are labelled with
sequence numbers; a subscriber can fetch message 123 by sending mail to
joe-sos-get.123. The archive format supports fast message retrieval even
when there are thousands of messages.
ezmlm takes advantage of qmail's VERPs to reliably determine the
recipient address and message number for every incoming bounce message.
It waits ten days and then sends the subscriber a list of message
numbers that bounced. If that warning bounces, ezmlm sends a probe; if
the probe bounces, ezmlm automatically removes the subscriber from the
mailing list.
ezmlm is easy for users to control. Joe can edit ~/SOS/text/* to change
any of the administrative messages sent to subscribers. He can remove
~/SOS/public and ~/SOS/archived to disable automatic subscription and
archiving. He can put his own address into ~/SOS/editor to set up a
moderated mailing list. He can edit ~/SOS/{headeradd,headerremove} to
control outgoing headers. ezmlm has several utilities to manually
inspect and manage mailing lists.
ezmlm uses Delivered-To to stop forwarding loops, Mailing-List to
protect other mailing lists against false subscription requests, and
real cryptographic cookies to protect normal users against false
subscription requests. ezmlm can also be used for a sublist,
redistributing messages from another list.
ezmlm is reliable, even in the face of system crashes. It writes each
new subscription and each new message safely to disk before it reports
success to qmail.
ezmlm doesn't mind huge mailing lists. Lists don't even have to fit into
memory. ezmlm hashes the subscription list into a set of independent
files so that it can handle subscription requests quickly. ezmlm uses
qmail for blazingly fast parallel SMTP deliveries.
The IDX patches add: Indexing, (Remote) Moderation, digest, make
patches, multi-language, MIME, global interface, SQL database support.
%package mysql
Summary: MySQL support module for ezmlm-idx
Group: Productivity/Networking/Email/Mailinglists
Requires: ezmlm-idx = %{version}
%description mysql
MySQL support module for ezmlm-idx. A detailed explanation can be found here:
http://www.ezmlm.org/faq/ezmlm-support-for-SQL-databases.html
%package pgsql
Summary: PostgreSQL support module for ezmlm-idx
Group: Productivity/Networking/Email/Mailinglists
Requires: ezmlm-idx = %{version}
%description pgsql
PostgreSQL support module for ezmlm-idx. A detailed explanation can be found here:
http://www.ezmlm.org/faq/ezmlm-support-for-SQL-databases.html
%package cgi
Summary: WWW archiver for %{name}
Group: Productivity/Networking/Email/Mailinglists
Requires: ezmlm-idx = %{version}
Prefix: %{ezcgi}
%description cgi
www archiver for %{name}. After installation change the SUID permission as follows:
> chmod 4755 %{ezcgi}/ezmlm-cgi
%prep
%setup -q
%build
echo %{rcdir} > conf-etc
echo %{_bindir} > conf-bin
echo %{_mandir} > conf-man
echo %{_libdir}/%{name} > conf-lib
echo gcc %{optflags} -I%{_includedir}/mysql -I%{_includedir}/pgsql > conf-cc
echo gcc %{optflags} -export-dynamic -L%{_libdir}/mysql > conf-ld
make %{?_smp_mflags} clean
make %{?_smp_mflags} it man installer mysql pgsql
sed '/cat/d' MAN > MAN.tmp
mv MAN.tmp MAN
# Create INSTALL file for how to set up ezcgi
echo "The script ezmlm-cgi is installed as %{ezcgi}/ezmlm-cgi with
permissions 0444. In order to use it, you need to make it
SUID root. So do
chmod 4755 %{ezcgi}/ezmlm-cgi
Please see INSTALL 16-22) in this package's doc directory and the
man page ezmlm-cgi.1 for more details on setting up and using ezmlm-cgi.
" > INSTALL.cgi
%install
mkdir -p %{buildroot}/%{_bindir}
mkdir -p %{buildroot}/%{_libdir}/ezmlm
mkdir -p %{buildroot}/%{rcdir}
mkdir -p %{buildroot}/%{ezcgi}
mkdir -p %{buildroot}/%{_defaultdocdir}/%{name}
mkdir -p %{buildroot}/%{_defaultdocdir}/%{name}-cgi
./installer %{buildroot}/%{rcdir} < ETC
./installer %{buildroot}/%{_bindir} < BIN
./installer %{buildroot}/%{_mandir} < MAN
./installer %{buildroot}/%{_libdir}/%{name} < LIB
ln -s `head -n 1 conf-lang` %{buildroot}/%{rcdir}/default
install -m0644 ezmlm-cgi %{buildroot}/%{ezcgi}/
# create file list for man pages (without ezmlm-cgi.1 which goes to a seperate package)
find %{buildroot}/%{_mandir} -type f | sed -e "s}%{buildroot}}}" -e "s}$}*}" | grep -v ezmlm-cgi.1 > man-list
cp ezmlm-cgi.1 %{buildroot}/%{_mandir}/man1
chmod 644 %{buildroot}/%{_mandir}/man1/ezmlm-cgi.1
%if 0%{?suse_version} > 1020
%fdupes -s %{buildroot}/%{rcdir}
%endif
%check
./ezmlm-test || :
%files -f man-list
%defattr(-,root,root,0755)
%doc BLURB CHANGES* FAQ INSTALL README* ChangeLog
%doc THANKS TODO UPGRADE DOWNGRADE ezmlmrc.template
%{_bindir}/*
%dir %{rcdir}
%config(noreplace) %{rcdir}/*
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/sub-std.so
%files cgi
%defattr(0644,root,root,0755)
%doc INSTALL.cgi ezcgirc ezcgi.css
%{_mandir}/man1/ezmlm-cgi.1*
%attr(0444,root,root) %{ezcgi}/*
%files mysql
%defattr(0644,root,root)
%{_libdir}/%{name}/sub-mysql.so
%files pgsql
%defattr(0644,root,root)
%{_libdir}/%{name}/sub-pgsql.so
%changelog
* Thu Oct 09 2025 BogusDateBot
- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday,
by assuming the date is correct and changing the weekday.
* Mon Apr 18 2016 Jean-Philipe Pialasse <tests@pialasse.com> 7.2.2-2.sme
- upgrade to v7.2.2 [SME: 7587]
- new spec file created from the one of opensuse