opensmtpd-extras: drop in favor of standalone tables

Upstream has archived the OpenSMTPD-extras repository with 82c49af (add
deprecation notice, 2024-10-22). Instead, it has created a set of
repositories, each containing one of the tables. The old tables aren't
compatible anymore with recent OpenSMTPD versions due to changed
protocols. Other extras, like the queues, don't have an alternative to
the best of my knowledge.

Furthermore, opensmtpd-extras doesn't even build anymore, furthermore
indicating that there aren't any users of this package. Remove the
"opensmtpd-extras" package and raise errors pointing to the new
standalone tables.

Add a release note.

Changed files
+7 -116
doc
release-notes
nixos
modules
services
pkgs
servers
mail
opensmtpd
top-level
+4
doc/release-notes/rl-2505.section.md
···
The hook can be disabled by providing `dontCheckForBrokenSymlinks = true;` as an argument to `mkDerivation`.
For more information, [check the docs](https://nixos.org/manual/nixpkgs/unstable/#no-broken-symlinks.sh) or [see this PR](https://github.com/NixOS/nixpkgs/pull/370750).
+
- `opensmtpd-extras` has been deprecated by upstream and is not compatible with
+
OpenSMTPD 7.6.0 or later. The package has been removed in favor of a set of new
+
`opensmtpd-table-*` packages.
+
- The hand written `perlPackages.SearchXapian` bindings have been dropped in favor of the (mostly compatible)
`perlPackages.Xapian`.
+2 -2
nixos/modules/services/mail/opensmtpd.nix
···
description = ''
Packages to search for filters, tables, queues, and schedulers.
-
Add OpenSMTPD-extras here if you want to use the filters, etc. from
-
that package.
+
Add packages here if you want to use them as as such, for example
+
from the opensmtpd-table-* packages.
'';
};
};
-113
pkgs/servers/mail/opensmtpd/extras.nix
···
-
{
-
lib,
-
stdenv,
-
fetchurl,
-
openssl,
-
libevent,
-
libasr,
-
ncurses,
-
pkg-config,
-
lua5,
-
perl,
-
libmysqlclient,
-
libpq,
-
sqlite,
-
hiredis,
-
enableLua ? true,
-
enablePerl ? true,
-
enableMysql ? true,
-
enablePostgres ? true,
-
enableSqlite ? true,
-
enableRedis ? true,
-
}:
-
-
stdenv.mkDerivation rec {
-
pname = "opensmtpd-extras";
-
version = "6.7.1";
-
-
src = fetchurl {
-
url = "https://www.opensmtpd.org/archives/${pname}-${version}.tar.gz";
-
sha256 = "1b1mx71bvmv92lbm08wr2p60g3qhikvv3n15zsr6dcwbk9aqahzq";
-
};
-
-
nativeBuildInputs = [ pkg-config ];
-
buildInputs = [
-
openssl
-
libevent
-
libasr
-
lua5
-
perl
-
libmysqlclient
-
libpq
-
sqlite
-
hiredis
-
];
-
-
configureFlags =
-
[
-
"--sysconfdir=/etc"
-
"--localstatedir=/var"
-
"--with-privsep-user=smtpd"
-
"--with-libevent-dir=${libevent.dev}"
-
-
"--with-filter-clamav"
-
"--with-filter-dkim-signer"
-
"--with-filter-dnsbl"
-
"--with-filter-monkey"
-
"--with-filter-pause"
-
"--with-filter-regex"
-
"--with-filter-spamassassin"
-
"--with-filter-stub"
-
"--with-filter-trace"
-
"--with-filter-void"
-
"--with-queue-null"
-
"--with-queue-ram"
-
"--with-queue-stub"
-
"--with-table-ldap"
-
"--with-table-socketmap"
-
"--with-table-passwd"
-
"--with-table-stub"
-
"--with-scheduler-ram"
-
"--with-scheduler-stub"
-
-
]
-
++ lib.optionals enableLua [
-
"--with-lua=${pkg-config}"
-
"--with-filter-lua"
-
-
]
-
++ lib.optionals enablePerl [
-
"--with-perl=${perl}"
-
"--with-filter-perl"
-
-
]
-
++ lib.optionals enableMysql [
-
"--with-table-mysql"
-
-
]
-
++ lib.optionals enablePostgres [
-
"--with-table-postgres"
-
-
]
-
++ lib.optionals enableSqlite [
-
"--with-table-sqlite"
-
-
]
-
++ lib.optionals enableRedis [
-
"--with-table-redis"
-
];
-
-
env.NIX_CFLAGS_COMPILE =
-
lib.optionalString enableRedis "-I${hiredis}/include/hiredis -lhiredis"
-
+ lib.optionalString enableMysql " -L${libmysqlclient}/lib/mysql";
-
-
meta = with lib; {
-
homepage = "https://www.opensmtpd.org/";
-
description = "Extra plugins for the OpenSMTPD mail server";
-
license = licenses.isc;
-
platforms = platforms.linux;
-
maintainers = with maintainers; [
-
ekleog
-
];
-
};
-
}
+1
pkgs/top-level/aliases.nix
···
openlens = throw "Lens Closed its source code, package obsolete/stale - consider lens as replacement"; # Added 2024-09-04
openlp = throw "openlp has been removed for now because the outdated version depended on insecure and removed packages and it needs help to upgrade and maintain it; see https://github.com/NixOS/nixpkgs/pull/314882"; # Added 2024-07-29
openmpt123 = throw "'openmpt123' has been renamed to/replaced by 'libopenmpt'"; # Converted to throw 2024-10-17
+
opensmtpd-extras = throw "opensmtpd-extras has been removed in favor of separate opensmtpd-table-* packages"; # Added 2025-01-26
openssl_3_0 = openssl_3; # Added 2022-06-27
opensycl = lib.warnOnInstantiate "'opensycl' has been renamed to 'adaptivecpp'" adaptivecpp; # Added 2024-12-04
opensyclWithRocm = lib.warnOnInstantiate "'opensyclWithRocm' has been renamed to 'adaptivecppWithRocm'" adaptivecppWithRocm; # Added 2024-12-04
-1
pkgs/top-level/all-packages.nix
···
opensmtpd = callPackage ../servers/mail/opensmtpd { };
-
opensmtpd-extras = callPackage ../servers/mail/opensmtpd/extras.nix { };
opensmtpd-filter-rspamd = callPackage ../servers/mail/opensmtpd/filter-rspamd.nix { };
system-sendmail = lowPrio (callPackage ../servers/mail/system-sendmail { });