From aa130002db8bc5f047c039e6d716cccdc485fc49 Mon Sep 17 00:00:00 2001 From: Ilya Fedin Date: Fri, 3 Jul 2026 14:46:24 +0400 Subject: [PATCH] kotatogram-desktop: 1.4.9-unstable-2024-09-27 -> 1.4.9-unstable-2026-07-03 (cherry picked from commit 6f555d44da4a34c51fdb314b6c416bf03b9a2561) --- .../kotatogram-desktop/cstring-includes.patch | 74 ----------------- .../telegram/kotatogram-desktop/default.nix | 81 ++----------------- .../kotatogram-desktop/glib-2.86.patch | 37 --------- .../kotatogram-desktop/macos-qt5.patch | 75 ----------------- 4 files changed, 6 insertions(+), 261 deletions(-) delete mode 100644 pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/cstring-includes.patch delete mode 100644 pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/glib-2.86.patch delete mode 100644 pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/macos-qt5.patch diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/cstring-includes.patch b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/cstring-includes.patch deleted file mode 100644 index e334777ac14f..000000000000 --- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/cstring-includes.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff --git a/src/api/video/nv12_buffer.cc b/src/api/video/nv12_buffer.cc -index ca9dcd867..89d28f23c 100644 ---- a/src/api/video/nv12_buffer.cc -+++ b/src/api/video/nv12_buffer.cc -@@ -16,6 +16,8 @@ - #include "third_party/libyuv/include/libyuv/convert.h" - #include "third_party/libyuv/include/libyuv/scale.h" - -+#include -+ - namespace webrtc { - - namespace { -diff --git a/src/audio/utility/channel_mixer.cc b/src/audio/utility/channel_mixer.cc -index 0f1e66387..33b771b0c 100644 ---- a/src/audio/utility/channel_mixer.cc -+++ b/src/audio/utility/channel_mixer.cc -@@ -15,6 +15,8 @@ - #include "rtc_base/logging.h" - #include "rtc_base/numerics/safe_conversions.h" - -+#include -+ - namespace webrtc { - - ChannelMixer::ChannelMixer(ChannelLayout input_layout, -diff --git a/src/modules/audio_processing/aec3/alignment_mixer.cc b/src/modules/audio_processing/aec3/alignment_mixer.cc -index 7f076dea8..ffd7242b5 100644 ---- a/src/modules/audio_processing/aec3/alignment_mixer.cc -+++ b/src/modules/audio_processing/aec3/alignment_mixer.cc -@@ -10,6 +10,7 @@ - #include "modules/audio_processing/aec3/alignment_mixer.h" - - #include -+#include - - #include "rtc_base/checks.h" - -diff --git a/src/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc b/src/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc -index 7ef1a030e..5b9ab7137 100644 ---- a/src/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc -+++ b/src/modules/desktop_capture/linux/wayland/shared_screencast_stream.cc -@@ -18,6 +18,7 @@ - #include - #include - -+#include - #include - - #include "absl/memory/memory.h" -diff --git a/src/modules/video_coding/utility/ivf_file_reader.cc b/src/modules/video_coding/utility/ivf_file_reader.cc -index 4c08ca613..f82f2bfcb 100644 ---- a/src/modules/video_coding/utility/ivf_file_reader.cc -+++ b/src/modules/video_coding/utility/ivf_file_reader.cc -@@ -10,6 +10,7 @@ - - #include "modules/video_coding/utility/ivf_file_reader.h" - -+#include - #include - #include - -diff --git a/src/net/dcsctp/packet/bounded_byte_writer.h b/src/net/dcsctp/packet/bounded_byte_writer.h -index d754549e4..bf5e3ed42 100644 ---- a/src/net/dcsctp/packet/bounded_byte_writer.h -+++ b/src/net/dcsctp/packet/bounded_byte_writer.h -@@ -12,6 +12,7 @@ - #define NET_DCSCTP_PACKET_BOUNDED_BYTE_WRITER_H_ - - #include -+#include - - #include "api/array_view.h" - \ No newline at end of file diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix index da4652dca501..f4402d9798d8 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/default.nix @@ -1,97 +1,28 @@ { lib, - stdenv, fetchFromGitHub, - fetchpatch, - libsForQt5, - yasm, - alsa-lib, - jemalloc, - libopus, - libpulseaudio, + telegram-desktop, withWebkit ? true, }: let - telegram-desktop = libsForQt5.callPackage ../telegram-desktop { - inherit stdenv; - # N/A on Qt5 - kimageformats = null; - unwrapped = libsForQt5.callPackage ../telegram-desktop/unwrapped.nix { - inherit stdenv; - kcoreaddons = null; - qtshadertools = null; - }; - }; version = "1.4.9"; - tg_owt = telegram-desktop.tg_owt.overrideAttrs (oldAttrs: { - version = "0-unstable-2024-06-15"; - - src = fetchFromGitHub { - owner = "desktop-app"; - repo = "tg_owt"; - rev = "c9cc4390ab951f2cbc103ff783a11f398b27660b"; - hash = "sha256-FfWmSYaeryTDbsGJT3R7YK1oiyJcrR7YKKBOF+9PmpY="; - fetchSubmodules = true; - }; - - patches = [ - # fix build with latest glibc - # upstream PR: https://github.com/desktop-app/tg_owt/pull/172 - ./cstring-includes.patch - (fetchpatch { - url = "https://webrtc.googlesource.com/src/+/e7d10047096880feb5e9846375f2da54aef91202%5E%21/?format=TEXT"; - decode = "base64 -d"; - stripLen = 1; - extraPrefix = "src/"; - hash = "sha256-goxnuRRbwcdfIk1jFaKGiKCTCYn2saEj7En1Iyglzko="; - }) - ]; - - nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ yasm ]; - - env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-c++11-narrowing"; - }); in telegram-desktop.override { pname = "kotatogram-desktop"; inherit withWebkit; - unwrapped = (telegram-desktop.unwrapped.override { inherit tg_owt; }).overrideAttrs (old: { + unwrapped = telegram-desktop.unwrapped.overrideAttrs (old: { pname = "kotatogram-desktop-unwrapped"; - version = "${version}-unstable-2024-09-27"; + version = "${version}-unstable-2026-07-03"; src = fetchFromGitHub { owner = "kotatogram"; repo = "kotatogram-desktop"; - rev = "0581eb6219343b3cfcbb81124b372df1039b7568"; - hash = "sha256-rvn8GZmHdMkVutLUe/LmUNIawlb9VgU3sYhPwZ2MWsI="; + rev = "7263a1b53c9e6b45a416532644fff7a4c7f90d54"; + hash = "sha256-xOfHZ7oUJKk65j7o/AgxtFfc5NqsAoA9E+8U6rHlSmc="; fetchSubmodules = true; }; - patches = [ - ./macos-qt5.patch - ./glib-2.86.patch - (fetchpatch { - url = "https://gitlab.com/mnauw/cppgir/-/commit/c8bb1c6017a6f7f2e47bd10543aea6b3ec69a966.patch"; - stripLen = 1; - extraPrefix = "cmake/external/glib/cppgir/"; - hash = "sha256-8B4h3BTG8dIlt3+uVgBI569E9eCebcor9uohtsrZpnI="; - }) - ]; - - buildInputs = - (old.buildInputs or [ ]) - ++ [ - libopus - ] - ++ lib.optionals stdenv.hostPlatform.isLinux [ - alsa-lib - jemalloc - libpulseaudio - ]; - - env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-missing-template-arg-list-after-template-kw"; - meta = { description = "Kotatogram – experimental Telegram Desktop fork"; longDescription = '' @@ -104,7 +35,7 @@ telegram-desktop.override { homepage = "https://kotatogram.github.io"; changelog = "https://github.com/kotatogram/kotatogram-desktop/releases/tag/k${version}"; maintainers = with lib.maintainers; [ ilya-fedin ]; - mainProgram = if stdenv.hostPlatform.isLinux then "kotatogram-desktop" else "Kotatogram"; + mainProgram = "Kotatogram"; }; }); } diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/glib-2.86.patch b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/glib-2.86.patch deleted file mode 100644 index 5e7f5dc698ae..000000000000 --- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/glib-2.86.patch +++ /dev/null @@ -1,37 +0,0 @@ -Submodule Telegram/lib_base contains modified content -diff --git a/Telegram/lib_base/base/platform/linux/base_url_scheme_linux.cpp b/Telegram/lib_base/base/platform/linux/base_url_scheme_linux.cpp -index 4197367..f79d2fa 100644 ---- a/Telegram/lib_base/base/platform/linux/base_url_scheme_linux.cpp -+++ b/Telegram/lib_base/base/platform/linux/base_url_scheme_linux.cpp -@@ -15,7 +15,7 @@ - #include - #include - --#include -+#include - #include - - namespace base::Platform { -@@ -125,7 +125,7 @@ void RegisterUrlScheme(const UrlSchemeDescriptor &descriptor) { - - const auto appId = QGuiApplication::desktopFileName().toStdString(); - if (!appId.empty()) { -- Gio::AppInfo appInfo = Gio::DesktopAppInfo::new_(appId + ".desktop"); -+ Gio::AppInfo appInfo = GioUnix::DesktopAppInfo::new_(appId + ".desktop"); - if (appInfo) { - if (appInfo.get_commandline() == commandlineForCreator + " %u") { - appInfo.set_as_default_for_type(handlerType); -Submodule cmake contains modified content -diff --git a/cmake/external/glib/CMakeLists.txt b/cmake/external/glib/CMakeLists.txt -index 3c6fe4b..6f73dc5 100644 ---- a/cmake/external/glib/CMakeLists.txt -+++ b/cmake/external/glib/CMakeLists.txt -@@ -16,7 +16,7 @@ endfunction() - add_cppgir() - - include(generate_cppgir.cmake) --generate_cppgir(external_glib Gio-2.0) -+generate_cppgir(external_glib GioUnix-2.0) - - find_package(PkgConfig REQUIRED) - pkg_check_modules(GLIB2 REQUIRED IMPORTED_TARGET glib-2.0 gobject-2.0 gio-2.0 gio-unix-2.0) diff --git a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/macos-qt5.patch b/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/macos-qt5.patch deleted file mode 100644 index 55beb31a7a4d..000000000000 --- a/pkgs/applications/networking/instant-messengers/telegram/kotatogram-desktop/macos-qt5.patch +++ /dev/null @@ -1,75 +0,0 @@ -diff --git a/Telegram/SourceFiles/platform/mac/main_window_mac.h b/Telegram/SourceFiles/platform/mac/main_window_mac.h -index 2a3a59b9cf..16b7b6cdde 100644 ---- a/Telegram/SourceFiles/platform/mac/main_window_mac.h -+++ b/Telegram/SourceFiles/platform/mac/main_window_mac.h -@@ -10,6 +10,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL - #include "platform/platform_main_window.h" - #include "platform/mac/specific_mac_p.h" - #include "base/timer.h" -+#include "base/qt/qt_common_adapters.h" - - #include - #include -@@ -52,7 +53,7 @@ private: - bool nativeEvent( - const QByteArray &eventType, - void *message, -- qintptr *result) override; -+ base::NativeEventResult *result) override; - - void hideAndDeactivate(); - void updateDockCounter(); -diff --git a/Telegram/SourceFiles/platform/mac/main_window_mac.mm b/Telegram/SourceFiles/platform/mac/main_window_mac.mm -index e95ef79f16..c3381926a9 100644 ---- a/Telegram/SourceFiles/platform/mac/main_window_mac.mm -+++ b/Telegram/SourceFiles/platform/mac/main_window_mac.mm -@@ -305,7 +305,7 @@ void MainWindow::updateWindowIcon() { - bool MainWindow::nativeEvent( - const QByteArray &eventType, - void *message, -- qintptr *result) { -+ base::NativeEventResult *result) { - if (message && eventType == "NSEvent") { - const auto event = static_cast(message); - if (PossiblyTextTypingEvent(event)) { -diff --git a/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm b/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm -index de28809077..2521428567 100644 ---- a/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm -+++ b/Telegram/SourceFiles/platform/mac/notifications_manager_mac.mm -@@ -502,11 +502,11 @@ void Manager::Private::invokeIfNotFocused(Fn callback) { - } else { - if (!_processesInited) { - _processesInited = true; -- QObject::connect(&_dnd, &QProcess::finished, [=] { -+ QObject::connect(&_dnd, QOverload::of(&QProcess::finished), [=] { - _waitingDnd = false; - checkFocusState(); - }); -- QObject::connect(&_focus, &QProcess::finished, [=] { -+ QObject::connect(&_focus, QOverload::of(&QProcess::finished), [=] { - _waitingFocus = false; - checkFocusState(); - }); -@@ -536,7 +536,7 @@ void Manager::Private::checkFocusState() { - } - const auto istrue = [](QProcess &process) { - const auto output = process.readAllStandardOutput(); -- DEBUG_LOG(("Focus Check: %1").arg(output)); -+ DEBUG_LOG(("Focus Check: %1").arg(QString::fromUtf8(output))); - const auto result = (output.trimmed() == u"true"_q); - return result; - }; -Submodule Telegram/lib_ui contains modified content -diff --git a/Telegram/lib_ui/ui/rp_widget.cpp b/Telegram/lib_ui/ui/rp_widget.cpp -index 0b57704..0d2ca01 100644 ---- a/Telegram/lib_ui/ui/rp_widget.cpp -+++ b/Telegram/lib_ui/ui/rp_widget.cpp -@@ -62,7 +62,7 @@ TWidget::TWidget(QWidget *parent) - auto format = QSurfaceFormat::defaultFormat(); - format.setSwapInterval(0); - #ifdef Q_OS_MAC -- format.setColorSpace(QColorSpace::SRgb); -+ format.setColorSpace(QSurfaceFormat::sRGBColorSpace); - #endif // Q_OS_MAC - QSurfaceFormat::setDefaultFormat(format); - return true;