diff --git a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
index bb8c24ec4d1f..c84a3e3b0193 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2205.section.xml
@@ -66,6 +66,15 @@
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.
+
+
diff --git a/nixos/doc/manual/release-notes/rl-2205.section.md b/nixos/doc/manual/release-notes/rl-2205.section.md
index 579bcda9ec4f..45ed69cf1b03 100644
--- a/nixos/doc/manual/release-notes/rl-2205.section.md
+++ b/nixos/doc/manual/release-notes/rl-2205.section.md
@@ -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}
diff --git a/pkgs/applications/networking/mailreaders/claws-mail/default.nix b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
index 5090b1fd0278..93dfc4d8a1db 100644
--- a/pkgs/applications/networking/mailreaders/claws-mail/default.nix
+++ b/pkgs/applications/networking/mailreaders/claws-mail/default.nix
@@ -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)
;
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 89bf40c5887f..372fab39114f 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -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
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 74ef1eb14072..0f004d6da4b8 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -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 { };