From c5067e6f831ebbc88a3036bbfff6098bd2e613ea Mon Sep 17 00:00:00 2001 From: Trevor Batley Date: Thu, 9 Oct 2025 11:43:07 +1100 Subject: [PATCH] initial commit of file from CVS for ezmlm-idx on Thu Oct 9 11:43:07 AEDT 2025 --- .gitattributes | 1 + .gitignore | 3 + Makefile | 21 +++++ README.md | 8 +- contriborbase | 1 + ezmlm-idx-7.2.2.tar.gz | 3 + ezmlm-idx.spec | 199 +++++++++++++++++++++++++++++++++++++++++ 7 files changed, 235 insertions(+), 1 deletion(-) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Makefile create mode 100644 contriborbase create mode 100644 ezmlm-idx-7.2.2.tar.gz create mode 100644 ezmlm-idx.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f087b42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.tar.gz filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1534ba5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.rpm +*.log +*spec-20* diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..0a75a2f --- /dev/null +++ b/Makefile @@ -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) diff --git a/README.md b/README.md index 2168fcc..5b94740 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,9 @@ # ezmlm-idx -3rd Party (Maintained by Koozali) git repo for ezmlm-idx smecontribs \ No newline at end of file +3rd Party (Maintained by Koozali) git repo for ezmlm-idx smecontribs + +## Description + +
*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* +
diff --git a/contriborbase b/contriborbase new file mode 100644 index 0000000..9b7fd51 --- /dev/null +++ b/contriborbase @@ -0,0 +1 @@ +contribs10 diff --git a/ezmlm-idx-7.2.2.tar.gz b/ezmlm-idx-7.2.2.tar.gz new file mode 100644 index 0000000..6aca650 --- /dev/null +++ b/ezmlm-idx-7.2.2.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d8840678ad8c2b84350564a065149c055ace3d3e21b169590ebd5abca30c2a8 +size 742451 diff --git a/ezmlm-idx.spec b/ezmlm-idx.spec new file mode 100644 index 0000000..d9ece1c --- /dev/null +++ b/ezmlm-idx.spec @@ -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 7.2.2-2.sme +- upgrade to v7.2.2 [SME: 7587] +- new spec file created from the one of opensuse