claws-mail: remove claws-mail-gtk2 version

The GTK+ 2 version of Claws Mail, major version number three, relies on
Python 2, which is end-of-life and might be dropped in the nixpkgs.

In favour of #148779, this older branch of Claws Mail was removed.
This commit is contained in:
Alvar Penning 2021-12-05 22:58:46 +01:00
parent e98afa97d3
commit 521f30f80c
5 changed files with 24 additions and 35 deletions

View File

@ -66,6 +66,15 @@
<literal>enableParallelBuilding=false</literal>.
</para>
</listitem>
<listitem>
<para>
<literal>pkgs.claws-mail-gtk2</literal>, representing Claws
Mails older release version three, was removed in order to
get rid of Python 2. Please switch to
<literal>claws-mail</literal>, which is Claws Mails latest
release based on GTK+3 and Python 3.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="sec-release-22.05-notable-changes">

View File

@ -29,4 +29,7 @@ In addition to numerous new and upgraded packages, this release has the followin
- The `wafHook` hook now honors `NIX_BUILD_CORES` when `enableParallelBuilding` is not set explicitly. Packages can restore the old behaviour by setting `enableParallelBuilding=false`.
- `pkgs.claws-mail-gtk2`, representing Claws Mail's older release version three, was removed in order to get rid of Python 2.
Please switch to `claws-mail`, which is Claws Mail's latest release based on GTK+3 and Python 3.
## Other Notable Changes {#sec-release-22.05-notable-changes}

View File

@ -1,10 +1,7 @@
{ stdenv, lib, fetchgit, fetchpatch, wrapGAppsHook, autoreconfHook, bison, flex
, curl, gtk2, gtk3, pkg-config, python2, python3, shared-mime-info
, curl, gtk3, pkg-config, python3, shared-mime-info
, glib-networking, gsettings-desktop-schemas
# Selector between the GTK+ 3 and GTK+ 2 releases.
, useGtk3
# Package compatibility: old parameters whose name were not directly derived
, enablePgp ? true
, enablePluginNotificationDialogs ? true
@ -34,14 +31,14 @@
, enablePluginBsfilter ? true
, enablePluginClamd ? true
, enablePluginDillo ? true
, enablePluginFancy ? useGtk3, libsoup, webkitgtk
, enablePluginFancy ? true, libsoup, webkitgtk
, enablePluginFetchInfo ? true
, enablePluginLibravatar ? enablePluginRavatar
, enablePluginLitehtmlViewer ? true, gumbo
, enablePluginMailmbox ? true
, enablePluginManageSieve ? true
, enablePluginNewMail ? true
, enablePluginNotification ? (enablePluginNotificationDialogs || enablePluginNotificationSounds), libcanberra-gtk2, libcanberra-gtk3, libnotify
, enablePluginNotification ? (enablePluginNotificationDialogs || enablePluginNotificationSounds), libcanberra-gtk3, libnotify
, enablePluginPdfViewer ? enablePluginPdf, poppler
, enablePluginPerl ? true, perl
, enablePluginPython ? true
@ -57,23 +54,7 @@
with lib;
let
# Last release and hash for both the GTK+ 3 and GTK+ 2 version.
version = if useGtk3 then "4.0.0" else "3.18.0";
gtk2src = {
sha256 = "1vsiy3xsppw4d8ylsz70wsyrvmgy88lp2hj7vrc353ckny80r9lh";
};
gtk3src = {
sha256 = "0mwnjiqg2sj61va0y9yi3v52iyr5kzmbnvsqxav3a48m2f8p27qn";
};
python = if useGtk3 then python3 else python2;
pythonPkgs = if useGtk3
then
with python.pkgs; [ python wrapPython pygobject3 ]
else
with python.pkgs; [ python wrapPython pygtk pygobject2 ];
pythonPkgs = with python3.pkgs; [ python3 wrapPython pygobject3 ];
features = [
{ flags = [ "acpi_notifier-plugin" ]; enabled = enablePluginAcpiNotifier; }
@ -99,7 +80,7 @@ let
{ flags = [ "managesieve-plugin" ]; enabled = enablePluginManageSieve; }
{ flags = [ "networkmanager" ]; enabled = enableNetworkManager; deps = [ networkmanager ]; }
{ flags = [ "newmail-plugin" ]; enabled = enablePluginNewMail; }
{ flags = [ "notification-plugin" ]; enabled = enablePluginNotification; deps = [ libnotify ] ++ [(if useGtk3 then libcanberra-gtk3 else libcanberra-gtk2)]; }
{ flags = [ "notification-plugin" ]; enabled = enablePluginNotification; deps = [ libnotify ] ++ [libcanberra-gtk3]; }
{ flags = [ "pdf_viewer-plugin" ]; enabled = enablePluginPdfViewer; deps = [ poppler ]; }
{ flags = [ "perl-plugin" ]; enabled = enablePluginPerl; deps = [ perl ]; }
{ flags = [ "pgpcore-plugin" "pgpinline-plugin" "pgpmime-plugin" ]; enabled = enablePluginPgp; deps = [ gnupg gpgme ]; }
@ -115,12 +96,13 @@ let
];
in stdenv.mkDerivation rec {
pname = "claws-mail";
inherit version;
version = "4.0.0";
src = fetchgit ({
src = fetchgit {
rev = version;
url = "git://git.claws-mail.org/claws.git";
} // (if useGtk3 then gtk3src else gtk2src));
sha256 = "0mwnjiqg2sj61va0y9yi3v52iyr5kzmbnvsqxav3a48m2f8p27qn";
};
outputs = [ "out" "dev" ];
@ -140,7 +122,7 @@ in stdenv.mkDerivation rec {
preConfigure = ''
# autotools check tries to dlopen libpython as a requirement for the python plugin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${python}/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${python3}/lib
# generate version without .git
[ -e version ] || echo "echo ${version}" > version
'';
@ -154,8 +136,7 @@ in stdenv.mkDerivation rec {
propagatedBuildInputs = pythonPkgs;
buildInputs =
[ curl gsettings-desktop-schemas glib-networking ]
++ [(if useGtk3 then gtk3 else gtk2)]
[ curl gsettings-desktop-schemas glib-networking gtk3 ]
++ concatMap (f: optionals f.enabled f.deps) (filter (f: f ? deps) features)
;

View File

@ -132,6 +132,7 @@ mapAliases ({
clangAnalyzer = clang-analyzer; # added 2015-02-20
claws-mail-gtk3 = claws-mail; # added 2021-07-10
clawsMail = claws-mail; # added 2016-04-29
claws-mail-gtk2 = throw "claws-mail-gtk2 was removed to get rid of Python 2, please use claws-mail"; # added 2021-12-05
clutter_gtk = clutter-gtk; # added 2018-02-25
cmakeWithQt4Gui = throw "cmakeWithQt4Gui has been removed in favor of cmakeWithGui (Qt 5)"; # added 2021-05
codimd = hedgedoc; # added 2020-11-29

View File

@ -24399,13 +24399,8 @@ with pkgs;
ciscoPacketTracer8 = callPackage ../applications/networking/cisco-packet-tracer/8.nix { };
claws-mail-gtk2 = callPackage ../applications/networking/mailreaders/claws-mail {
inherit (xorg) libSM;
useGtk3 = false;
};
claws-mail = callPackage ../applications/networking/mailreaders/claws-mail {
inherit (xorg) libSM;
useGtk3 = true;
};
clfswm = callPackage ../applications/window-managers/clfswm { };