From 6d6e907dbc4618f5fff2d9c746710aebdb78ff4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 13 May 2025 17:55:43 -0700 Subject: [PATCH 1/2] kdeltachat: pin libdeltachat at 1.155.6 Otherwise kdeltachat fails to build with /build/source/message.cpp: In member function 'void DcMessage::setFile(QString)': /build/source/message.cpp:93:12: error: 'dc_msg_set_file' was not declared in this scope; did you mean 'dc_msg_get_file'? 93 | return dc_msg_set_file(m_message, utf8File.constData(), NULL); | ^~~~~~~~~~~~~~~ | dc_msg_get_file --- .../instant-messengers/kdeltachat/default.nix | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix index f84eb379fec8..6584d64e94ba 100644 --- a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix +++ b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix @@ -1,6 +1,7 @@ { lib, mkDerivation, + fetchFromGitHub, fetchFromSourcehut, cmake, extra-cmake-modules, @@ -11,8 +12,25 @@ qtimageformats, qtmultimedia, qtwebengine, + rustPlatform, }: +let + libdeltachat' = libdeltachat.overrideAttrs rec { + version = "1.155.6"; + src = fetchFromGitHub { + owner = "chatmail"; + repo = "core"; + tag = "v${version}"; + hash = "sha256-d7EmmyLSJjFIZM1j6LP8f4WnXiptNTAqOdJD/oPL02Y="; + }; + cargoDeps = rustPlatform.fetchCargoVendor { + pname = "deltachat-core-rust"; + inherit version src; + hash = "sha256-E01aEzNi06LQntrlA+342a8Nl5API6v7HbdmuKpfajs="; + }; + }; +in mkDerivation { pname = "kdeltachat"; version = "unstable-2024-01-14"; @@ -32,7 +50,7 @@ mkDerivation { buildInputs = [ kirigami2 - libdeltachat + libdeltachat' qtimageformats qtmultimedia qtwebengine From 986a41d5780000af66776ecd2146a620606b1f29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 13 May 2025 18:03:28 -0700 Subject: [PATCH 2/2] kdeltachat: move to pkgs/by-name --- .../kd/kdeltachat/package.nix} | 19 ++++++++++++------- pkgs/top-level/all-packages.nix | 2 -- 2 files changed, 12 insertions(+), 9 deletions(-) rename pkgs/{applications/networking/instant-messengers/kdeltachat/default.nix => by-name/kd/kdeltachat/package.nix} (89%) diff --git a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/pkgs/by-name/kd/kdeltachat/package.nix similarity index 89% rename from pkgs/applications/networking/instant-messengers/kdeltachat/default.nix rename to pkgs/by-name/kd/kdeltachat/package.nix index 6584d64e94ba..ff2ab0db040f 100644 --- a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix +++ b/pkgs/by-name/kd/kdeltachat/package.nix @@ -1,18 +1,14 @@ { lib, - mkDerivation, fetchFromGitHub, fetchFromSourcehut, cmake, extra-cmake-modules, pkg-config, - kirigami2, libdeltachat, - qtbase, - qtimageformats, - qtmultimedia, - qtwebengine, + libsForQt5, rustPlatform, + stdenv, }: let @@ -30,8 +26,16 @@ let hash = "sha256-E01aEzNi06LQntrlA+342a8Nl5API6v7HbdmuKpfajs="; }; }; + inherit (libsForQt5) + kirigami2 + qtbase + qtimageformats + qtmultimedia + qtwebengine + wrapQtAppsHook + ; in -mkDerivation { +stdenv.mkDerivation { pname = "kdeltachat"; version = "unstable-2024-01-14"; @@ -46,6 +50,7 @@ mkDerivation { cmake extra-cmake-modules pkg-config + wrapQtAppsHook ]; buildInputs = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a4d72af0de67..85ec6cf9ea92 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -13019,8 +13019,6 @@ with pkgs; kaidan = kdePackages.callPackage ../applications/networking/instant-messengers/kaidan { }; - kdeltachat = libsForQt5.callPackage ../applications/networking/instant-messengers/kdeltachat { }; - kexi = libsForQt5.callPackage ../applications/office/kexi { }; kgraphviewer = libsForQt5.callPackage ../applications/graphics/kgraphviewer { };