mailpile, nixos/mailpile: drop

Still actively developed and yet stuck on python2. Also marked as
vulnerable and their issue tracker contains yet another security issue
reported in 2021/10 that the upstream hasn't acknowledged yet.

Mind blown.

Closes: #135543, #97274, #97275
This commit is contained in:
Martin Weinelt 2022-01-12 02:27:51 +01:00
parent 608cde3bd4
commit 369db3b2f3
No known key found for this signature in database
GPG key ID: 87C1E9888F856759
9 changed files with 13 additions and 131 deletions

View file

@ -208,6 +208,13 @@
removed due to it being an outdated version.
</para>
</listitem>
<listitem>
<para>
The <literal>mailpile</literal> email webclient
(<literal>services.mailpile</literal>) has been removed due to
its reliance on python2.
</para>
</listitem>
<listitem>
<para>
The MoinMoin wiki engine

View file

@ -71,6 +71,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- `services.kubernetes.addons.dashboard` was removed due to it being an outdated version.
- The `mailpile` email webclient (`services.mailpile`) has been removed due to its reliance on python2.
- The MoinMoin wiki engine (`services.moinmoin`) has been removed, because Python 2 is being retired from nixpkgs.
- The `wafHook` hook now honors `NIX_BUILD_CORES` when `enableParallelBuilding` is not set explicitly. Packages can restore the old behaviour by setting `enableParallelBuilding=false`.

View file

@ -182,7 +182,7 @@ in
yandexdisk = 143;
mxisd = 144; # was once collectd
#consul = 145;# dynamically allocated as of 2021-09-03
mailpile = 146;
#mailpile = 146; # removed 2022-01-12
redmine = 147;
#seeks = 148; # removed 2020-06-21
prosody = 149;
@ -502,7 +502,7 @@ in
#yandexdisk = 143; # unused
mxisd = 144; # was once collectd
#consul = 145; # unused
mailpile = 146;
#mailpile = 146; # removed 2022-01-12
redmine = 147;
#seeks = 148; # removed 2020-06-21
prosody = 149;

View file

@ -791,7 +791,6 @@
./services/networking/lldpd.nix
./services/networking/logmein-hamachi.nix
./services/networking/lxd-image-server.nix
./services/networking/mailpile.nix
./services/networking/magic-wormhole-mailbox-server.nix
./services/networking/matterbridge.nix
./services/networking/mjpg-streamer.nix

View file

@ -51,6 +51,7 @@ with lib;
(mkRemovedOptionModule [ "services" "fourStoreEndpoint" ] "The fourStoreEndpoint module has been removed")
(mkRemovedOptionModule [ "services" "frab" ] "The frab module has been removed")
(mkRemovedOptionModule [ "services" "kippo" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "mailpile" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "marathon" ] "The corresponding package was removed from nixpkgs.")
(mkRemovedOptionModule [ "services" "mathics" ] "The Mathics module has been removed")
(mkRemovedOptionModule [ "services" "meguca" ] "Use meguca has been removed from nixpkgs")

View file

@ -1,74 +0,0 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.mailpile;
hostname = cfg.hostname;
port = cfg.port;
in
{
###### interface
options = {
services.mailpile = {
enable = mkEnableOption "Mailpile the mail client";
hostname = mkOption {
type = types.str;
default = "localhost";
description = "Listen to this hostname or ip.";
};
port = mkOption {
type = types.port;
default = 33411;
description = "Listen on this port.";
};
};
};
###### implementation
config = mkIf config.services.mailpile.enable {
users.users.mailpile =
{ uid = config.ids.uids.mailpile;
description = "Mailpile user";
createHome = true;
home = "/var/lib/mailpile";
};
users.groups.mailpile =
{ gid = config.ids.gids.mailpile;
};
systemd.services.mailpile =
{
description = "Mailpile server.";
after = [ "network.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "mailpile";
ExecStart = "${pkgs.mailpile}/bin/mailpile --www ${hostname}:${port} --wait";
# mixed - first send SIGINT to main process,
# then after 2min send SIGKILL to whole group if neccessary
KillMode = "mixed";
KillSignal = "SIGINT"; # like Ctrl+C - safe mailpile shutdown
TimeoutSec = 120; # wait 2min untill SIGKILL
};
environment.MAILPILE_HOME = "/var/lib/mailpile/.local/share/Mailpile";
};
environment.systemPackages = [ pkgs.mailpile ];
};
}

View file

@ -1,52 +0,0 @@
{ lib, fetchFromGitHub, python2Packages, gnupg1orig, openssl, git }:
python2Packages.buildPythonApplication rec {
pname = "mailpile";
version = "1.0.0rc2";
src = fetchFromGitHub {
owner = "mailpile";
repo = "Mailpile";
rev = version;
sha256 = "1z5psh00fjr8gnl4yjcl4m9ywfj24y1ffa2rfb5q8hq4ksjblbdj";
};
postPatch = ''
patchShebangs scripts
'';
nativeBuildInputs = with python2Packages; [ pbr git ];
PBR_VERSION=version;
propagatedBuildInputs = with python2Packages; [
appdirs
cryptography
fasteners
gnupg1orig
jinja2
pgpdump
pillow
python2Packages.lxml
spambayes
];
postInstall = ''
wrapProgram $out/bin/mailpile \
--prefix PATH ":" "${lib.makeBinPath [ gnupg1orig openssl ]}" \
--set-default MAILPILE_SHARED "$out/share/mailpile"
'';
# No tests were found
doCheck = false;
meta = with lib; {
description = "A modern, fast web-mail client with user-friendly encryption and privacy features";
homepage = "https://www.mailpile.is/";
license = [ licenses.asl20 licenses.agpl3 ];
platforms = platforms.linux;
maintainers = [ ];
knownVulnerabilities = [
"Numerous and uncounted, upstream has requested we not package it. See more: https://github.com/NixOS/nixpkgs/pull/23058#issuecomment-283515104"
];
};
}

View file

@ -572,6 +572,7 @@ mapAliases ({
lzma = xz; # moved from top-level 2021-03-14
m3d-linux = m33-linux; # added 2016-08-13
mail-notification = throw "mail-notification has been removed from nixpkgs, as it's unmaintained and has dependencies on old gnome libraries we want to remove"; # added 2021-08-21
mailpile = throw "mailpile was removed from nixpkgs, as it is stuck on python2."; # added 2022-01-12
man_db = man-db; # added 2016-05
manpages = man-pages; # added 2015-12-06
marathon = throw "marathon has been removed from nixpkgs, as it's unmaintained"; # added 2020-08-15

View file

@ -7594,8 +7594,6 @@ with pkgs;
mailsend = callPackage ../tools/networking/mailsend { };
mailpile = callPackage ../applications/networking/mailreaders/mailpile { };
mailutils = callPackage ../tools/networking/mailutils {
sasl = gsasl;
};