all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [bug#71897] [PATCH 1/2] gnu: Add cppgir.
@ 2024-07-02  5:18 dan
  2024-07-02  5:26 ` [bug#71897] [PATCH 2/2] gnu: telegram-desktop: Update to 5.1.7 dan
                   ` (4 more replies)
  0 siblings, 5 replies; 27+ messages in thread
From: dan @ 2024-07-02  5:18 UTC (permalink / raw)
  To: 71897; +Cc: Liliana Marie Prikler, Maxim Cournoyer, Vivien Kraus

* gnu/packages/glib.scm: Import (gnu packages pretty-print).
  (cppgir): New variable.

Change-Id: Ifaf3af1642bb8cb4750ee4f679967fb57c9cc7e2
---
 gnu/packages/glib.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index b11046f05d..10d39e4fe2 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -71,6 +72,7 @@ (define-module (gnu packages glib)
   #:use-module (gnu packages perl-check)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sqlite)
@@ -1594,3 +1596,31 @@ (define-public libdex
 Dex also provides Fibers which allow writing synchronous looking code in C
 that uses asynchronous and future-based APIs.")
     (license license:lgpl2.1+)))
+
+(define-public cppgir
+  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
+        (revision "0"))
+    (package
+      (name "cppgir")
+      (version (git-version "2.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri
+                 (git-reference
+                  (url "https://gitlab.com/mnauw/cppgir")
+                  (commit commit)))
+                (sha256
+                 (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        #:configure-flags #~(list "-DINTERNAL_EXPECTED=OFF")))
+      (inputs (list boost fmt expected-lite))
+      (home-page "https://gitlab.com/mnauw/cppgir")
+      (synopsis "A GObject-Introspection C++ binding wrapper generator")
+      (description "it processes .gir files derived from GObject-Introspection
+annotations into a set of C++ files defining suitable namespaces, classes and
+other types that together from a C++ binding. In this way, the plain C
+libraries and objects become available as native objects along with (RAII)
+managed resource handling.")
+      (license license:expat))))

base-commit: 0f51ddd8dba6b69115d07f4a77ba70abb6521293
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 2/2] gnu: telegram-desktop: Update to 5.1.7.
  2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
@ 2024-07-02  5:26 ` dan
  2024-07-02 11:09 ` [bug#71897] [PATCH 1/2] gnu: Add cppgir Maxim Cournoyer
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 27+ messages in thread
From: dan @ 2024-07-02  5:26 UTC (permalink / raw)
  To: 71897; +Cc: dan

* gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New file.
* gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
* gnu/local.mk (dist_patch_DATA): register them.
* gnu/packages/telegram.scm: Import (gnu packages boost).
(libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to submodule
checkout.
(cmake-helpers-for-telegram-desktop)[patches]: Add patches to unbundle gsl and
cppgir.
(libprisma-for-telegram-desktop, xdg-desktop-portal-for-telegram-desktop): New
variables.
(telegram-desktop): Update to 5.1.7.
[phases]<unpack-additional-sources>: Add libprisma-for-telegram-desktop and
xdg-desktop-portal-for-telegram-desktop.
<patch-gir-ignore-paths>: New phase.
[inputs]: Add boost, cppgir, expected-lite and gobject-introspection.

Change-Id: I75441a6284e3755f510a7d3ba5746bfbb8acbb91
---
 gnu/local.mk                                  |   2 +
 .../telegram-desktop-unbundle-cppgir.patch    |  95 ++++++++++++++++
 .../telegram-desktop-unbundle-gsl.patch       |  31 ++++++
 gnu/packages/telegram.scm                     | 105 ++++++++++++------
 4 files changed, 202 insertions(+), 31 deletions(-)
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-gsl.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index cf6b1d61b3..ddce260961 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2135,6 +2135,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/texinfo-headings-single.patch		\
   %D%/packages/patches/texinfo-5-perl-compat.patch		\
   %D%/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-cppgir.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-gsl.patch      \
   %D%/packages/patches/telegram-purple-adjust-test.patch	\
   %D%/packages/patches/teuchos-remove-duplicate-using.patch	\
   %D%/packages/patches/texi2html-document-encoding.patch	\
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
new file mode 100644
index 0000000000..a24dbe25bb
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
@@ -0,0 +1,95 @@
+From a5c42e07ae223d440ff11347e0cf1fd58fd383df Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 1/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/CMakeLists.txt        | 4 +++-
+ external/glib/generate_cppgir.cmake | 7 ++++++-
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/external/glib/CMakeLists.txt b/external/glib/CMakeLists.txt
+index 3c6fe4be..c862705f 100644
+--- a/external/glib/CMakeLists.txt
++++ b/external/glib/CMakeLists.txt
+@@ -13,9 +13,11 @@ function(add_cppgir) # isolate scope
+     set(BUILD_EXAMPLES OFF)
+     add_subdirectory(cppgir EXCLUDE_FROM_ALL)
+ endfunction()
+-add_cppgir()
+ 
+ include(generate_cppgir.cmake)
++if (NOT CppGir_FOUND)
++    add_cppgir()
++endif()
+ generate_cppgir(external_glib Gio-2.0)
+ 
+ find_package(PkgConfig REQUIRED)
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index c15d3f9e..9b0a5ac8 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -4,6 +4,8 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+ 
++find_package(CppGir 2.0)
++
+ function(generate_cppgir target_name gir)
+     set(cppgir_loc ${cmake_helpers_loc}/external/glib/cppgir)
+ 
+@@ -17,6 +19,9 @@ function(generate_cppgir target_name gir)
+         ${cppgir_loc}/data/cppgir.ignore
+         ${cppgir_loc}/data/cppgir_unix.ignore
+     )
++    if (CppGir_FOUND)
++        set(ignore_files)  # rely on default ignore list
++    endif()
+ 
+     set(gir_path)
+     if (IS_ABSOLUTE "${gir}")
+@@ -33,7 +38,7 @@ function(generate_cppgir target_name gir)
+         --class
+         --class-full
+         --expected
+-        --ignore
++        "$<$<BOOL:${ignore_files}>:--ignore>"
+         "$<JOIN:${ignore_files},:>"
+         --output
+         ${gen_dst}
+
+From eed39522952c15f448c54290454806dd011c4996 Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 2/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/generate_cppgir.cmake | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index 9b0a5ac8..2ad82277 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -15,11 +15,12 @@ function(generate_cppgir target_name gir)
+ 
+     set(gen_timestamp ${gen_dst}/${target_name}_cppgir.timestamp)
+ 
+-    set(ignore_files
+-        ${cppgir_loc}/data/cppgir.ignore
+-        ${cppgir_loc}/data/cppgir_unix.ignore
+-    )
+-    if (CppGir_FOUND)
++    if (NOT CppGir_FOUND)
++        set(ignore_files
++            ${cppgir_loc}/data/cppgir.ignore
++            ${cppgir_loc}/data/cppgir_unix.ignore
++        )
++    else()
+         set(ignore_files)  # rely on default ignore list
+     endif()
+ 
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
new file mode 100644
index 0000000000..f89d326a5c
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
@@ -0,0 +1,31 @@
+From a3ac6df0441b4caca28b1df87febc420e18942ce Mon Sep 17 00:00:00 2001
+From: Zephyr Lykos <git@mochaa.ws>
+Date: Mon, 23 Oct 2023 15:55:24 +0800
+Subject: [PATCH] Revert "Force usage of GSL fork because of a libstdc++ bug."
+
+This reverts commit 982546b169df3d479e6511425870327559b38a89.
+<https://github.com/microsoft/GSL/commit/e64c97fc2cfc11992098bb38eda932de275e3f4d>
+---
+ external/gsl/CMakeLists.txt | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/external/gsl/CMakeLists.txt b/external/gsl/CMakeLists.txt
+index 8eaf19c5..344f9488 100644
+--- a/external/gsl/CMakeLists.txt
++++ b/external/gsl/CMakeLists.txt
+@@ -7,7 +7,6 @@
+ add_library(external_gsl INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_gsl ALIAS external_gsl)
+ 
+-#[[
+ if (DESKTOP_APP_USE_PACKAGED)
+     if (DESKTOP_APP_USE_PACKAGED_LAZY)
+         find_package(Microsoft.GSL 4.0.0 QUIET)
+@@ -20,7 +19,6 @@ if (DESKTOP_APP_USE_PACKAGED)
+         return()
+     endif()
+ endif()
+-]]
+ 
+ # https://gitlab.kitware.com/cmake/cmake/-/issues/25222
+ if (NOT EXISTS ${third_party_loc}/GSL/include)
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 358374a5bb..4138dc3779 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -28,6 +28,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages assembly)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -82,11 +83,11 @@ (define-module (gnu packages telegram)
   #:use-module (guix build-system python)
   #:use-module (guix build-system qt))
 
-(define %telegram-version "4.8.1")
+(define %telegram-version "5.1.7")
 
 (define libyuv-for-telegram-desktop
-  (let ((commit "77c2121f7e6b8e694d6e908bbbe9be24214097da")
-        (revision "2439"))
+  (let ((commit "04821d1e7d60845525e8db55c7bcd41ef5be9406")
+        (revision "2440"))
     (origin
       (method git-fetch)
       (uri (git-reference
@@ -97,67 +98,72 @@ (define libyuv-for-telegram-desktop
                   (git-version "0" revision commit)))
       (sha256
        (base32
-        "1b4k8yskr9ffl5k8s9i0af1gn1pavsfixla26vh8bij69rdr7f9c")))))
+        "1fsvc0f8mckrdzys8lnlnbw6676mjamm6p3ghr2h9liqfa83s6wg")))))
 
 (define cmake-helpers-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/cmake_helpers.git")
-          (commit "6ab5543b3dd1e40979d258e46d03376931b6c37b")))
+          (commit "a7527c0e6eba1c71cd0dfd7bd8de9c1e68cb529f")))
     (file-name
      (git-file-name "cmake-helpers-for-telegram-desktop" %telegram-version))
+    (patches
+     ;; https://github.com/desktop-app/cmake_helpers/pull/320
+     ;; https://github.com/desktop-app/cmake_helpers/pull/305
+     (search-patches "telegram-desktop-unbundle-gsl.patch"
+                     "telegram-desktop-unbundle-cppgir.patch"))
     (sha256
      (base32
-      "0y96mvzs113zh8bdw1h3i6l0pgwg93rigrday8kfdg4magz686k6"))))
+      "176saaaiww9ivmqdi50by7vgq5j7jhqpyzp74lpy1xg83am4malf"))))
 
 (define codegen-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/codegen.git")
-          (commit "1a969faa0afb29d53af03e530775eccdfb8433f1")))
+          (commit "0af136124083369073b8fdaf45f0816fd2b10bad")))
     (file-name
      (git-file-name "codegen-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1xmw8dfm51p5g20rlmzqnr72a14ngyxwq09an8clf1v5s6mmwvak"))))
+      "057bwn9smrgnyfb1vraf50ihbkhjc4d72msl7vnbqc4h5sg8dav9"))))
 
 (define lib-base-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_base.git")
-          (commit "fd9adb30ee906ea02c125eaa58fcfae773fdc677")))
+          (commit "4d56f8b4bba52b46844f46fafa5f9b6b2704429e")))
     (file-name
      (git-file-name "lib-base-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1m760mcfvgzia53nrs6wvjn353jvzlzln7c9fkx2dhpkigiynz83"))))
+      "1xc6www5bgbl94wp2fg0gxcmv1b2j0z1pyxhmmhp06jvfqx6anqy"))))
 
 (define lib-crl-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_crl.git")
-          (commit "3d7e1e1f1321c3defd21c01882d674e485ecd8df")))
+          (commit "078006d29af0002e6cd8c61a405cdeaf65b37142")))
     (file-name
      (git-file-name "lib-crl-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "06mzafnjpfr5ih297dh7bxm6bgpg0wy0gv2r2732n5szyrg9sdl6"))))
+      "18n88ghj3akpkxvllrh1rs19vd0d3xw87hd67qphr30b6ggqs9fd"))))
 
 (define lib-lottie-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_lottie.git")
-          (commit "3e9c2f1026e4b5aa3202fca4cc67ece36c7cebb2")))
+          (commit "1a700e5a0d7c3e2f617530354ff2a47c5c72bb4a")))
     (file-name
      (git-file-name "lib-lottie-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l57ibfij9xm4ww4s9cc63q1x8xzpc6ablwaji1krrn3xxksqdd4"))))
+      "18w35sz6k3wcv07v0szx3avpfdl0rjby6yqm1fzmx7fqw2jn6wpl"))))
 
 (define lib-qr-for-telegram-desktop
   (origin
@@ -188,24 +194,24 @@ (define lib-spellcheck-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_spellcheck.git")
-          (commit "ae89fefd239ecc47d4dab7ba29f9e230376a57d3")))
+          (commit "9b52030bfcd7e90e3e550231a3783ad1982fda78")))
     (file-name
      (git-file-name "lib-spellcheck-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "147xbbcza5q4wcdipk5jplajzkc48971kg2s7qv5jlz33sxkw1lq"))))
+      "0s9fjxpxxvj1xgzg3sfw6079blgmdvbb5cy6wb921sqaqwf52j6x"))))
 
 (define lib-storage-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_storage.git")
-          (commit "839609369d04615475cb1518636de3619106a917")))
+          (commit "0971b69ca90f1697ef81276d9820dcd6d26de4ac")))
     (file-name
      (git-file-name "lib-storage-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1l26h2fmqp9dcpr6pfvdd5sjb68j7yh0ms2lnr8na7jf5xqmkwwm"))))
+      "0ihbh1ajns0sf42h9992hnawwjr1n439sgb0g4zirn2bj5i1zbdv"))))
 
 (define lib-tl-for-telegram-desktop
   (origin
@@ -224,52 +230,52 @@ (define lib-ui-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_ui.git")
-          (commit "37531086ec21a8569deddedb11b402f8a3157b90")))
+          (commit "e9fb40c0d3ef6f05bfef0f4395c8b2d81bc9823a")))
     (file-name
      (git-file-name "lib-ui-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l4baalwdiwcwzn3wgrbyiaryi70lswillbpkzcjpavaa2pjg6b0"))))
+      "1if01nrxy785130cgbqjl8c99yylzsd4q7vv2x0px2nm56vy67lf"))))
 
 (define lib-webrtc-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webrtc.git")
-          (commit "b68a95ad4d1ae9a1827671100a7fd76cbe448c3f")))
+          (commit "f701713cd798bd7d5f69d318fdefb125d101aa76")))
     (file-name
      (git-file-name "lib-webrtc-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1c8jwdnn26n13yp0rp0l71q6xlxa6wp3cspbm3pnghw964jwgp3z"))))
+      "1hki5lc2jrack0r7wyixfh3c08jnmnw3pfrggrznvj4kq490z1b4"))))
 
 (define lib-webview-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webview.git")
-          (commit "f632fc84cbc62ae8abbbd05f81d472757a337c11")))
+          (commit "659b9181240aae16c05ef8ab7e6c4dd527afcf8a")))
     (file-name
      (git-file-name "lib-webview-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0idsfkxq7l9kgyrhifys5l4jkhvbyxkgkp0qdq9218h7g0ldw84i"))))
+      "1hg8jnpkszf3rrbnkqq9xc3n743602vkjp4kj8rccw7syjmgvrf1"))))
 
 (define tgcalls-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/TelegramMessenger/tgcalls.git")
-          (commit "2e2797648aac2588e7fe479c2e8b4455ec65c5e6")))
+          (commit "b9fa8b84d8abe741183f157218ac038c596a54a5")))
     (file-name
      (git-file-name "tgcalls-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "193m2gkvipijqbfd6a8mhg9nd63wlnshzgspk3pip57vk21l709z"))))
+      "1swni7xw5l0q376b6rnf9h93arzjqm9rkv7g6hz67742lf9a0x9z"))))
 
 (define-public webrtc-for-telegram-desktop
-  (let ((commit "0532942ac6176a66ef184fb728a4cbb02958fc0b")
-        (revision "389"))
+  (let ((commit "c9cc4390ab951f2cbc103ff783a11f398b27660b")
+        (revision "399"))
     (hidden-package
      (package
        (name "webrtc-for-telegram-desktop")
@@ -285,7 +291,7 @@ (define-public webrtc-for-telegram-desktop
           (file-name
            (git-file-name name version))
           (sha256
-           (base32 "0fary99yl1ddk5zjpfy0pyb5brd268j41plcnvv9qjyf0wj9hf2k"))
+           (base32 "0x2hjliiapb9kacbg8fwkz7g09c9k8dc77xxycjh5kmm1fc2i6dd"))
           (patches
            (search-patches
             ;; https://github.com/desktop-app/tg_owt/pull/123
@@ -400,6 +406,32 @@ (define cld3-for-telegram-desktop
     (base32
      "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
 
+(define libprisma-for-telegram-desktop
+  (origin
+   (method git-fetch)
+   (uri (git-reference
+         (url "https://github.com/desktop-app/libprisma")
+         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
+   (file-name
+    (git-file-name "libprisma-for-telegram-desktop" %telegram-version))
+   (sha256
+    (base32
+     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
+
+;; telegram-desktop requires xdg-desktop-portal 1.18 to build, which isn't
+;; available in Guix yet.
+(define xdg-desktop-portal-for-telegram-desktop
+  (origin
+    (method git-fetch)
+    (uri (git-reference
+          (url "https://github.com/flatpak/xdg-desktop-portal.git")
+          (commit "fa8d41a2f9a5d30a1e41568b6fb53b046dce14dc")))
+    (file-name
+     (git-file-name "xdg-desktop-portal-for-telegram-desktop" %telegram-version))
+    (sha256
+     (base32
+      "1hgbpr5x20g63gklrkx2rrarpfsxfy2cpcs3sy2f7z39nlm4ipix"))))
+
 (define-public telegram-desktop
   (package
     (name "telegram-desktop")
@@ -415,7 +447,7 @@ (define-public telegram-desktop
        (file-name
         (git-file-name name version))
        (sha256
-        (base32 "0g47ffamh1csp79yzkv28v3qjkhjacj0c7pjf53n1ks80j5hc2j0"))
+        (base32 "17cbx727m46v1w6lh2mh6vj5zkn9914lhn9p3bkp516v2zfisn40"))
        (patches
         (search-patches
          ;; https://github.com/telegramdesktop/tdesktop/pull/24126
@@ -481,7 +513,14 @@ (define-public telegram-desktop
                       ("Telegram/lib_webrtc" #$lib-webrtc-for-telegram-desktop)
                       ("Telegram/lib_webview" #$lib-webview-for-telegram-desktop)
                       ("Telegram/ThirdParty/cld3" #$cld3-for-telegram-desktop)
-                      ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)))))
+                      ("Telegram/ThirdParty/libprisma" #$libprisma-for-telegram-desktop)
+                      ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)
+                      ("Telegram/ThirdParty/xdg-desktop-portal" #$xdg-desktop-portal-for-telegram-desktop)))))
+               (add-after 'unpack-additional-sources 'patch-gir-ignore-paths
+                 (lambda _
+                   (substitute* "cmake/external/glib/generate_cppgir.cmake"
+                     (("\\$\\{cmake_helpers_loc\\}/external/glib/cppgir/data")
+                      (string-append #$(this-package-input "cppgir") "/share/cppgir")))))
                (add-after 'install 'glib-or-gtk-compile-schemas
                  (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
                (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
@@ -494,13 +533,17 @@ (define-public telegram-desktop
     (inputs
      (list abseil-cpp-cxxstd17
            alsa-lib
+           boost
            c++-gsl
            crc32c
+           cppgir
+           expected-lite
            fcitx-qt5
            fcitx5-qt
            ffmpeg
            glib
            glibmm-2.76
+           gobject-introspection
            gtk+
            hime
            hunspell
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 1/2] gnu: Add cppgir.
  2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
  2024-07-02  5:26 ` [bug#71897] [PATCH 2/2] gnu: telegram-desktop: Update to 5.1.7 dan
@ 2024-07-02 11:09 ` Maxim Cournoyer
  2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-02 11:09 UTC (permalink / raw)
  To: dan; +Cc: Vivien Kraus, Liliana Marie Prikler, 71897

Hi Dan,

dan <i@dan.games> writes:

> * gnu/packages/glib.scm: Import (gnu packages pretty-print).
>   (cppgir): New variable.
>
> Change-Id: Ifaf3af1642bb8cb4750ee4f679967fb57c9cc7e2
> ---
>  gnu/packages/glib.scm | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index b11046f05d..10d39e4fe2 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -20,6 +20,7 @@
>  ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
>  ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
>  ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
> +;;; Copyright © 2024 dan <i@dan.games>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -71,6 +72,7 @@ (define-module (gnu packages glib)
>    #:use-module (gnu packages perl-check)
>    #:use-module (gnu packages popt)
>    #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages pretty-print)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-xyz)
>    #:use-module (gnu packages sqlite)
> @@ -1594,3 +1596,31 @@ (define-public libdex
>  Dex also provides Fibers which allow writing synchronous looking code in C
>  that uses asynchronous and future-based APIs.")
>      (license license:lgpl2.1+)))
> +
> +(define-public cppgir
> +  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
> +        (revision "0"))

When not using a release (tag or archive), a comment is nice to have,
e.g. "No proper release; use the latest available tag."

> +    (package
> +      (name "cppgir")
> +      (version (git-version "2.0" revision commit))
> +      (source (origin
> +                (method git-fetch)
> +                (uri
> +                 (git-reference
> +                  (url "https://gitlab.com/mnauw/cppgir")
> +                  (commit commit)))
> +                (sha256
> +                 (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
> +      (build-system cmake-build-system)
> +      (arguments
> +       (list
> +        #:configure-flags #~(list "-DINTERNAL_EXPECTED=OFF")))
> +      (inputs (list boost fmt expected-lite))
> +      (home-page "https://gitlab.com/mnauw/cppgir")
> +      (synopsis "A GObject-Introspection C++ binding wrapper generator")
> +      (description "it processes .gir files derived from GObject-Introspection
> +annotations into a set of C++ files defining suitable namespaces, classes and
> +other types that together from a C++ binding. In this way, the plain C
                             ^ form ?
                             
> +libraries and objects become available as native objects along with (RAII)

use @acronym for RAII, defining what it means.

> +managed resource handling.")
> +      (license license:expat))))

The description that should start with proper punctuation (a capital
letter), and the use of two spaces for separating sentences (a
Texinfo/Guile convention).  I believe 'guix lint' should warn about the
later at least.  Could you send a v2 including these mostly cosmetic
changes?

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 1/3] gnu: Add cppgir.
  2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
  2024-07-02  5:26 ` [bug#71897] [PATCH 2/2] gnu: telegram-desktop: Update to 5.1.7 dan
  2024-07-02 11:09 ` [bug#71897] [PATCH 1/2] gnu: Add cppgir Maxim Cournoyer
@ 2024-07-02 13:17 ` dan
  2024-07-02 13:17   ` [bug#71897] [PATCH 2/3] gnu: xdg-desktop-portal: Update to 1.18.4 dan
                     ` (2 more replies)
  2024-07-03 13:22 ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 dan
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
  4 siblings, 3 replies; 27+ messages in thread
From: dan @ 2024-07-02 13:17 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler, Vivien Kraus

* gnu/packages/glib.scm: (cppgir): New variable.

Change-Id: Ifaf3af1642bb8cb4750ee4f679967fb57c9cc7e2
---
 gnu/packages/glib.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index b11046f05d..77279e6ad0 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
 ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -71,6 +72,7 @@ (define-module (gnu packages glib)
   #:use-module (gnu packages perl-check)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sqlite)
@@ -1594,3 +1596,35 @@ (define-public libdex
 Dex also provides Fibers which allow writing synchronous looking code in C
 that uses asynchronous and future-based APIs.")
     (license license:lgpl2.1+)))
+
+;; This package is added as a dependency of telegram-desktop.  The 2.0 version
+;; failed to compile, so we use the commit specified in telegram-desktop.
+(define-public cppgir
+  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
+        (revision "0"))
+    (package
+      (name "cppgir")
+      (version (git-version "2.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri
+                 (git-reference
+                  (url "https://gitlab.com/mnauw/cppgir")
+                  (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        #:configure-flags #~(list "-DINTERNAL_EXPECTED=OFF")))
+      (inputs (list boost fmt expected-lite))
+      (home-page "https://gitlab.com/mnauw/cppgir")
+      (synopsis "GObject introspection C++ binding wrapper generator")
+      (description "cppgir processes .gir files derived from GObject
+introspection annotations into a set of C++ files defining suitable
+namespaces, classes and other types that together form a C++ binding.  In this
+way, the plain C libraries and objects become available as native objects
+along with @acronym{RAII, Resource Acquisition Is Initialization} managed
+resource handling.")
+      (license license:expat))))

base-commit: 4b3a553ca5ba5ac190739309eb5f7aa8170cf2a8
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 2/3] gnu: xdg-desktop-portal: Update to 1.18.4.
  2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
@ 2024-07-02 13:17   ` dan
  2024-07-02 13:17   ` [bug#71897] [PATCH 3/3] gnu: telegram-desktop: Update to 5.2.1 dan
  2024-07-02 16:58   ` [bug#71897] [PATCH 1/3] gnu: Add cppgir Liliana Marie Prikler
  2 siblings, 0 replies; 27+ messages in thread
From: dan @ 2024-07-02 13:17 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer

* gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/freedesktop.scm (xdg-desktop-portal): Update to 1.18.4.
[patches]: Disable portal tests.
[native-inputs]: Remove autoconf, automake, libtool and which.  Add python,
python-dbusmock, python-pytest and python-pytest-xdist.
[inputs]: Add bubblewrap.
[phases]<#:configureflags>: Update flags to meson options.

Change-Id: Ic9876565e9119443fedd082273be4f372ebce1d4
---
 gnu/local.mk                                  |  1 +
 gnu/packages/freedesktop.scm                  | 25 +++++----
 ...-desktop-portal-disable-portal-tests.patch | 56 +++++++++++++++++++
 3 files changed, 72 insertions(+), 10 deletions(-)
 create mode 100644 gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index cf6b1d61b3..973c4a5dad 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2240,6 +2240,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch			\
   %D%/packages/patches/wpa-supplicant-dbus-group-policy.patch		\
   %D%/packages/patches/x265-arm-flags.patch			\
+  %D%/packages/patches/xdg-desktop-portal-disable-portal-tests.patch\
   %D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
   %D%/packages/patches/xen-docs-use-predictable-ordering.patch	\
   %D%/packages/patches/xen-remove-config.gz-timestamp.patch	\
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 6941450436..2015ee46f8 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -38,6 +38,7 @@
 ;;; Copyright © 2022 Samuel Culpepper <sculpepper@newstore.com>
 ;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
 ;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -133,6 +134,7 @@ (define-module (gnu packages freedesktop)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages video)
+  #:use-module (gnu packages virtualization)
   #:use-module (gnu packages w3m)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xdisorg)
@@ -2989,7 +2991,7 @@ (define-public libportal
 (define-public xdg-desktop-portal
   (package
     (name "xdg-desktop-portal")
-    (version "1.16.0")
+    (version "1.18.4")
     (source
      (origin
        (method url-fetch)
@@ -2998,18 +3000,21 @@ (define-public xdg-desktop-portal
              version "/xdg-desktop-portal-" version ".tar.xz"))
        (sha256
         (base32
-         "06cczlh39kc41rvav06v37sad827y61rffy3v29i918ibj8sahav"))))
-    (build-system gnu-build-system)
+         "0r8y8qmzcfj7b7brqcxr9lg8pavfds815ffvj0kqc378fhgaln5q"))
+       ;; disable portal tests since they try to use fuse
+       (patches (search-patches "xdg-desktop-portal-disable-portal-tests.patch"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
        ("glib:bin" ,glib "bin")
-       ("which" ,which)
-       ("gettext" ,gettext-minimal)))
+       ("gettext" ,gettext-minimal)
+       ("python" ,python)
+       ("python-dbusmock" ,python-dbusmock)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-xdist" ,python-pytest-xdist)))
     (inputs
-     `(("gdk-pixbuf" ,gdk-pixbuf)
+     `(("bubblewrap" ,bubblewrap)
+       ("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
        ("flatpak" ,flatpak)
        ("fontconfig" ,fontconfig)
@@ -3021,7 +3026,7 @@ (define-public xdg-desktop-portal
        ("fuse" ,fuse)))
     (arguments
      `(#:configure-flags
-       (list "--with-systemd=no")
+       (list "-Dsystemd=disabled")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'po-chmod
diff --git a/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
new file mode 100644
index 0000000000..5e13493613
--- /dev/null
+++ b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
@@ -0,0 +1,56 @@
+From b7750fa99c31c5f28ac2053fa154bef4038b5cc0 Mon Sep 17 00:00:00 2001
+From: dan <i@dan.games>
+Date: Tue, 2 Jul 2024 19:37:38 +0800
+Subject: [PATCH] tests: remove portal tests.
+
+---
+ tests/meson.build | 24 ------------------------
+ 1 file changed, 24 deletions(-)
+
+diff --git a/tests/meson.build b/tests/meson.build
+index a2dafee..bcd87be 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -181,18 +181,6 @@ portal_tests = [
+ 
+ test_env = env_tests
+ test_env.set('XDG_CURRENT_DESKTOP', 'test')
+-foreach p : portal_tests
+-    test(
+-      'test-portals-@0@'.format(p),
+-      test_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/portal/@0@'.format(p)],
+-      depends: [test_backends, test_portals],
+-      env: test_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ # Split the portal tests into one test per portal, this makes debugging a lot
+ # easier.
+@@ -204,18 +192,6 @@ portal_limited = [
+ 
+ limited_env = env_tests
+ limited_env.set('XDG_CURRENT_DESKTOP', 'limited')
+-foreach p : portal_limited
+-    test(
+-      'limited-portals-@0@'.format(p),
+-      limited_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/limited/@0@'.format(p)],
+-      depends: [test_backends, limited_portals],
+-      env: limited_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ if enable_installed_tests
+   install_data(
+
+base-commit: 11c8a96b147aeae70e3f770313f93b367d53fedd
+-- 
+2.41.0
+
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 3/3] gnu: telegram-desktop: Update to 5.2.1.
  2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
  2024-07-02 13:17   ` [bug#71897] [PATCH 2/3] gnu: xdg-desktop-portal: Update to 1.18.4 dan
@ 2024-07-02 13:17   ` dan
  2024-07-02 16:58   ` [bug#71897] [PATCH 1/3] gnu: Add cppgir Liliana Marie Prikler
  2 siblings, 0 replies; 27+ messages in thread
From: dan @ 2024-07-02 13:17 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer

* gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New file.
* gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
* gnu/local.mk (dist_patch_DATA): register them.
* gnu/packages/telegram.scm:
(libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to submodule
checkout.
(cmake-helpers-for-telegram-desktop)[origin]: Add patches to unbundle gsl and
cppgir.
(libprisma-for-telegram-desktop): New variables.
(telegram-desktop): Update to 5.2.1.
[arguments]<#:phases><unpack-additional-sources>: Add
libprisma-for-telegram-desktop.
<patch-gir-ignore-paths>: New phase.
<use-system-xdg-desktop-portal>: New phase.
[inputs]: Add boost, cppgir, expected-lite and gobject-introspection.

Change-Id: I75441a6284e3755f510a7d3ba5746bfbb8acbb91
---
 gnu/local.mk                                  |  2 +
 .../telegram-desktop-unbundle-cppgir.patch    | 95 ++++++++++++++++++
 .../telegram-desktop-unbundle-gsl.patch       | 31 ++++++
 gnu/packages/telegram.scm                     | 99 +++++++++++++------
 4 files changed, 196 insertions(+), 31 deletions(-)
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-gsl.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 973c4a5dad..2d4f866491 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2135,6 +2135,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/texinfo-headings-single.patch		\
   %D%/packages/patches/texinfo-5-perl-compat.patch		\
   %D%/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-cppgir.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-gsl.patch      \
   %D%/packages/patches/telegram-purple-adjust-test.patch	\
   %D%/packages/patches/teuchos-remove-duplicate-using.patch	\
   %D%/packages/patches/texi2html-document-encoding.patch	\
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
new file mode 100644
index 0000000000..a24dbe25bb
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
@@ -0,0 +1,95 @@
+From a5c42e07ae223d440ff11347e0cf1fd58fd383df Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 1/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/CMakeLists.txt        | 4 +++-
+ external/glib/generate_cppgir.cmake | 7 ++++++-
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/external/glib/CMakeLists.txt b/external/glib/CMakeLists.txt
+index 3c6fe4be..c862705f 100644
+--- a/external/glib/CMakeLists.txt
++++ b/external/glib/CMakeLists.txt
+@@ -13,9 +13,11 @@ function(add_cppgir) # isolate scope
+     set(BUILD_EXAMPLES OFF)
+     add_subdirectory(cppgir EXCLUDE_FROM_ALL)
+ endfunction()
+-add_cppgir()
+ 
+ include(generate_cppgir.cmake)
++if (NOT CppGir_FOUND)
++    add_cppgir()
++endif()
+ generate_cppgir(external_glib Gio-2.0)
+ 
+ find_package(PkgConfig REQUIRED)
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index c15d3f9e..9b0a5ac8 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -4,6 +4,8 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+ 
++find_package(CppGir 2.0)
++
+ function(generate_cppgir target_name gir)
+     set(cppgir_loc ${cmake_helpers_loc}/external/glib/cppgir)
+ 
+@@ -17,6 +19,9 @@ function(generate_cppgir target_name gir)
+         ${cppgir_loc}/data/cppgir.ignore
+         ${cppgir_loc}/data/cppgir_unix.ignore
+     )
++    if (CppGir_FOUND)
++        set(ignore_files)  # rely on default ignore list
++    endif()
+ 
+     set(gir_path)
+     if (IS_ABSOLUTE "${gir}")
+@@ -33,7 +38,7 @@ function(generate_cppgir target_name gir)
+         --class
+         --class-full
+         --expected
+-        --ignore
++        "$<$<BOOL:${ignore_files}>:--ignore>"
+         "$<JOIN:${ignore_files},:>"
+         --output
+         ${gen_dst}
+
+From eed39522952c15f448c54290454806dd011c4996 Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 2/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/generate_cppgir.cmake | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index 9b0a5ac8..2ad82277 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -15,11 +15,12 @@ function(generate_cppgir target_name gir)
+ 
+     set(gen_timestamp ${gen_dst}/${target_name}_cppgir.timestamp)
+ 
+-    set(ignore_files
+-        ${cppgir_loc}/data/cppgir.ignore
+-        ${cppgir_loc}/data/cppgir_unix.ignore
+-    )
+-    if (CppGir_FOUND)
++    if (NOT CppGir_FOUND)
++        set(ignore_files
++            ${cppgir_loc}/data/cppgir.ignore
++            ${cppgir_loc}/data/cppgir_unix.ignore
++        )
++    else()
+         set(ignore_files)  # rely on default ignore list
+     endif()
+ 
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
new file mode 100644
index 0000000000..f89d326a5c
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
@@ -0,0 +1,31 @@
+From a3ac6df0441b4caca28b1df87febc420e18942ce Mon Sep 17 00:00:00 2001
+From: Zephyr Lykos <git@mochaa.ws>
+Date: Mon, 23 Oct 2023 15:55:24 +0800
+Subject: [PATCH] Revert "Force usage of GSL fork because of a libstdc++ bug."
+
+This reverts commit 982546b169df3d479e6511425870327559b38a89.
+<https://github.com/microsoft/GSL/commit/e64c97fc2cfc11992098bb38eda932de275e3f4d>
+---
+ external/gsl/CMakeLists.txt | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/external/gsl/CMakeLists.txt b/external/gsl/CMakeLists.txt
+index 8eaf19c5..344f9488 100644
+--- a/external/gsl/CMakeLists.txt
++++ b/external/gsl/CMakeLists.txt
+@@ -7,7 +7,6 @@
+ add_library(external_gsl INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_gsl ALIAS external_gsl)
+ 
+-#[[
+ if (DESKTOP_APP_USE_PACKAGED)
+     if (DESKTOP_APP_USE_PACKAGED_LAZY)
+         find_package(Microsoft.GSL 4.0.0 QUIET)
+@@ -20,7 +19,6 @@ if (DESKTOP_APP_USE_PACKAGED)
+         return()
+     endif()
+ endif()
+-]]
+ 
+ # https://gitlab.kitware.com/cmake/cmake/-/issues/25222
+ if (NOT EXISTS ${third_party_loc}/GSL/include)
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 358374a5bb..54b9c72361 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2023 Lu Hui <luhux76@gmail.com>
 ;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
 ;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,6 +29,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages assembly)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -82,11 +84,11 @@ (define-module (gnu packages telegram)
   #:use-module (guix build-system python)
   #:use-module (guix build-system qt))
 
-(define %telegram-version "4.8.1")
+(define %telegram-version "5.2.1")
 
 (define libyuv-for-telegram-desktop
-  (let ((commit "77c2121f7e6b8e694d6e908bbbe9be24214097da")
-        (revision "2439"))
+  (let ((commit "04821d1e7d60845525e8db55c7bcd41ef5be9406")
+        (revision "2440"))
     (origin
       (method git-fetch)
       (uri (git-reference
@@ -97,67 +99,72 @@ (define libyuv-for-telegram-desktop
                   (git-version "0" revision commit)))
       (sha256
        (base32
-        "1b4k8yskr9ffl5k8s9i0af1gn1pavsfixla26vh8bij69rdr7f9c")))))
+        "1fsvc0f8mckrdzys8lnlnbw6676mjamm6p3ghr2h9liqfa83s6wg")))))
 
 (define cmake-helpers-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/cmake_helpers.git")
-          (commit "6ab5543b3dd1e40979d258e46d03376931b6c37b")))
+          (commit "5742caae65e4163e7faec238eb4e3e5c219ad09c")))
     (file-name
      (git-file-name "cmake-helpers-for-telegram-desktop" %telegram-version))
+    (patches
+     ;; https://github.com/desktop-app/cmake_helpers/pull/320
+     ;; https://github.com/desktop-app/cmake_helpers/pull/305
+     (search-patches "telegram-desktop-unbundle-gsl.patch"
+                     "telegram-desktop-unbundle-cppgir.patch"))
     (sha256
      (base32
-      "0y96mvzs113zh8bdw1h3i6l0pgwg93rigrday8kfdg4magz686k6"))))
+      "1ld74wd4gyx22gd132ci13sbzis7ypxqiyk4y0mrlhjvmciq9nw1"))))
 
 (define codegen-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/codegen.git")
-          (commit "1a969faa0afb29d53af03e530775eccdfb8433f1")))
+          (commit "0af136124083369073b8fdaf45f0816fd2b10bad")))
     (file-name
      (git-file-name "codegen-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1xmw8dfm51p5g20rlmzqnr72a14ngyxwq09an8clf1v5s6mmwvak"))))
+      "057bwn9smrgnyfb1vraf50ihbkhjc4d72msl7vnbqc4h5sg8dav9"))))
 
 (define lib-base-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_base.git")
-          (commit "fd9adb30ee906ea02c125eaa58fcfae773fdc677")))
+          (commit "f30400147d997fedc787e214467d305db6c159e7")))
     (file-name
      (git-file-name "lib-base-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1m760mcfvgzia53nrs6wvjn353jvzlzln7c9fkx2dhpkigiynz83"))))
+      "0mm88xj9q9v5p0z7byjfpbmw8h6rqg9ya9m0jhfzi2s8iglz0cga"))))
 
 (define lib-crl-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_crl.git")
-          (commit "3d7e1e1f1321c3defd21c01882d674e485ecd8df")))
+          (commit "078006d29af0002e6cd8c61a405cdeaf65b37142")))
     (file-name
      (git-file-name "lib-crl-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "06mzafnjpfr5ih297dh7bxm6bgpg0wy0gv2r2732n5szyrg9sdl6"))))
+      "18n88ghj3akpkxvllrh1rs19vd0d3xw87hd67qphr30b6ggqs9fd"))))
 
 (define lib-lottie-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_lottie.git")
-          (commit "3e9c2f1026e4b5aa3202fca4cc67ece36c7cebb2")))
+          (commit "1a700e5a0d7c3e2f617530354ff2a47c5c72bb4a")))
     (file-name
      (git-file-name "lib-lottie-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l57ibfij9xm4ww4s9cc63q1x8xzpc6ablwaji1krrn3xxksqdd4"))))
+      "18w35sz6k3wcv07v0szx3avpfdl0rjby6yqm1fzmx7fqw2jn6wpl"))))
 
 (define lib-qr-for-telegram-desktop
   (origin
@@ -188,24 +195,24 @@ (define lib-spellcheck-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_spellcheck.git")
-          (commit "ae89fefd239ecc47d4dab7ba29f9e230376a57d3")))
+          (commit "0b7622ff38778e9cd03d3997de59351973480a1f")))
     (file-name
      (git-file-name "lib-spellcheck-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "147xbbcza5q4wcdipk5jplajzkc48971kg2s7qv5jlz33sxkw1lq"))))
+      "0s9fjxpxxvj1xgzg3sfw6079blgmdvbb5cy6wb921sqaqwf52j6x"))))
 
 (define lib-storage-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_storage.git")
-          (commit "839609369d04615475cb1518636de3619106a917")))
+          (commit "0971b69ca90f1697ef81276d9820dcd6d26de4ac")))
     (file-name
      (git-file-name "lib-storage-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1l26h2fmqp9dcpr6pfvdd5sjb68j7yh0ms2lnr8na7jf5xqmkwwm"))))
+      "0ihbh1ajns0sf42h9992hnawwjr1n439sgb0g4zirn2bj5i1zbdv"))))
 
 (define lib-tl-for-telegram-desktop
   (origin
@@ -224,52 +231,52 @@ (define lib-ui-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_ui.git")
-          (commit "37531086ec21a8569deddedb11b402f8a3157b90")))
+          (commit "ebd8609ee73d48186b905787dd5bb3bcbb4f9f3f")))
     (file-name
      (git-file-name "lib-ui-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l4baalwdiwcwzn3wgrbyiaryi70lswillbpkzcjpavaa2pjg6b0"))))
+      "0abpb0gi3k99pm5zh5gh9czhi48jqvr6wy0yli004hswlfqs2nxk"))))
 
 (define lib-webrtc-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webrtc.git")
-          (commit "b68a95ad4d1ae9a1827671100a7fd76cbe448c3f")))
+          (commit "f701713cd798bd7d5f69d318fdefb125d101aa76")))
     (file-name
      (git-file-name "lib-webrtc-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1c8jwdnn26n13yp0rp0l71q6xlxa6wp3cspbm3pnghw964jwgp3z"))))
+      "1hki5lc2jrack0r7wyixfh3c08jnmnw3pfrggrznvj4kq490z1b4"))))
 
 (define lib-webview-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webview.git")
-          (commit "f632fc84cbc62ae8abbbd05f81d472757a337c11")))
+          (commit "659b9181240aae16c05ef8ab7e6c4dd527afcf8a")))
     (file-name
      (git-file-name "lib-webview-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0idsfkxq7l9kgyrhifys5l4jkhvbyxkgkp0qdq9218h7g0ldw84i"))))
+      "1hg8jnpkszf3rrbnkqq9xc3n743602vkjp4kj8rccw7syjmgvrf1"))))
 
 (define tgcalls-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/TelegramMessenger/tgcalls.git")
-          (commit "2e2797648aac2588e7fe479c2e8b4455ec65c5e6")))
+          (commit "b9fa8b84d8abe741183f157218ac038c596a54a5")))
     (file-name
      (git-file-name "tgcalls-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "193m2gkvipijqbfd6a8mhg9nd63wlnshzgspk3pip57vk21l709z"))))
+      "1swni7xw5l0q376b6rnf9h93arzjqm9rkv7g6hz67742lf9a0x9z"))))
 
 (define-public webrtc-for-telegram-desktop
-  (let ((commit "0532942ac6176a66ef184fb728a4cbb02958fc0b")
-        (revision "389"))
+  (let ((commit "c9cc4390ab951f2cbc103ff783a11f398b27660b")
+        (revision "399"))
     (hidden-package
      (package
        (name "webrtc-for-telegram-desktop")
@@ -285,7 +292,7 @@ (define-public webrtc-for-telegram-desktop
           (file-name
            (git-file-name name version))
           (sha256
-           (base32 "0fary99yl1ddk5zjpfy0pyb5brd268j41plcnvv9qjyf0wj9hf2k"))
+           (base32 "0x2hjliiapb9kacbg8fwkz7g09c9k8dc77xxycjh5kmm1fc2i6dd"))
           (patches
            (search-patches
             ;; https://github.com/desktop-app/tg_owt/pull/123
@@ -400,6 +407,18 @@ (define cld3-for-telegram-desktop
     (base32
      "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
 
+(define libprisma-for-telegram-desktop
+  (origin
+   (method git-fetch)
+   (uri (git-reference
+         (url "https://github.com/desktop-app/libprisma")
+         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
+   (file-name
+    (git-file-name "libprisma-for-telegram-desktop" %telegram-version))
+   (sha256
+    (base32
+     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
+
 (define-public telegram-desktop
   (package
     (name "telegram-desktop")
@@ -415,7 +434,7 @@ (define-public telegram-desktop
        (file-name
         (git-file-name name version))
        (sha256
-        (base32 "0g47ffamh1csp79yzkv28v3qjkhjacj0c7pjf53n1ks80j5hc2j0"))
+        (base32 "0x5fjr0brl3x5d3d0jjkx0gsm297wl47bnwhy1zb4zndkwl0h28b"))
        (patches
         (search-patches
          ;; https://github.com/telegramdesktop/tdesktop/pull/24126
@@ -481,7 +500,20 @@ (define-public telegram-desktop
                       ("Telegram/lib_webrtc" #$lib-webrtc-for-telegram-desktop)
                       ("Telegram/lib_webview" #$lib-webview-for-telegram-desktop)
                       ("Telegram/ThirdParty/cld3" #$cld3-for-telegram-desktop)
+                      ("Telegram/ThirdParty/libprisma" #$libprisma-for-telegram-desktop)
                       ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)))))
+               (add-after 'unpack-additional-sources 'patch-gir-ignore-paths
+                 (lambda _
+                   (substitute* "cmake/external/glib/generate_cppgir.cmake"
+                     (("\\$\\{cmake_helpers_loc\\}/external/glib/cppgir/data")
+                      (string-append #$(this-package-input "cppgir") "/share/cppgir")))))
+               (add-after 'unpack-additional-sources 'use-system-xdg-desktop-portal
+                 (lambda _
+                   (substitute* (list "Telegram/CMakeLists.txt"
+                                      "Telegram/lib_base/CMakeLists.txt")
+                     (("\\$\\{third_party_loc\\}/xdg-desktop-portal/data")
+                      (string-append #$(this-package-native-input "xdg-desktop-portal")
+                                     "/share/dbus-1/interfaces")))))
                (add-after 'install 'glib-or-gtk-compile-schemas
                  (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
                (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
@@ -490,17 +522,22 @@ (define-public telegram-desktop
      (list `(,glib "bin")
            `(,gtk+ "bin")
            pkg-config
-           python-wrapper))
+           python-wrapper
+           xdg-desktop-portal))
     (inputs
      (list abseil-cpp-cxxstd17
            alsa-lib
+           boost
            c++-gsl
            crc32c
+           cppgir
+           expected-lite
            fcitx-qt5
            fcitx5-qt
            ffmpeg
            glib
            glibmm-2.76
+           gobject-introspection
            gtk+
            hime
            hunspell
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 1/3] gnu: Add cppgir.
  2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
  2024-07-02 13:17   ` [bug#71897] [PATCH 2/3] gnu: xdg-desktop-portal: Update to 1.18.4 dan
  2024-07-02 13:17   ` [bug#71897] [PATCH 3/3] gnu: telegram-desktop: Update to 5.2.1 dan
@ 2024-07-02 16:58   ` Liliana Marie Prikler
  2 siblings, 0 replies; 27+ messages in thread
From: Liliana Marie Prikler @ 2024-07-02 16:58 UTC (permalink / raw)
  To: dan, 71897; +Cc: Vivien Kraus, Maxim Cournoyer

Am Dienstag, dem 02.07.2024 um 21:17 +0800 schrieb dan:
> * gnu/packages/glib.scm: (cppgir): New variable.
> 
> Change-Id: Ifaf3af1642bb8cb4750ee4f679967fb57c9cc7e2
> ---
>  gnu/packages/glib.scm | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
> 
> diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
> index b11046f05d..77279e6ad0 100644
> --- a/gnu/packages/glib.scm
> +++ b/gnu/packages/glib.scm
> @@ -20,6 +20,7 @@
>  ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
>  ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
>  ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
> +;;; Copyright © 2024 dan <i@dan.games>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -71,6 +72,7 @@ (define-module (gnu packages glib)
>    #:use-module (gnu packages perl-check)
>    #:use-module (gnu packages popt)
>    #:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages pretty-print)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages python-xyz)
>    #:use-module (gnu packages sqlite)
> @@ -1594,3 +1596,35 @@ (define-public libdex
>  Dex also provides Fibers which allow writing synchronous looking
> code in C
>  that uses asynchronous and future-based APIs.")
>      (license license:lgpl2.1+)))
> +
> +;; This package is added as a dependency of telegram-desktop.  The
> 2.0 version
> +;; failed to compile, so we use the commit specified in telegram-
> desktop.
> +(define-public cppgir
> +  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
> +        (revision "0"))
> +    (package
> +      (name "cppgir")
> +      (version (git-version "2.0" revision commit))
Can we investigate why 2.0 fails to compile?  If telegram-desktop
requires a newer one, that's fine, we'd just name it cppgir-for-
telegram-desktop, as it's an application that likes to require special
versions.
> +      (source (origin
> +                (method git-fetch)
> +                (uri
> +                 (git-reference
> +                  (url "https://gitlab.com/mnauw/cppgir")
> +                  (commit commit)))
> +                (file-name (git-file-name name version))
> +                (sha256
> +                 (base32
> "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
> +      (build-system cmake-build-system)
> +      (arguments
> +       (list
> +        #:configure-flags #~(list "-DINTERNAL_EXPECTED=OFF")))
> +      (inputs (list boost fmt expected-lite))
> +      (home-page "https://gitlab.com/mnauw/cppgir")
> +      (synopsis "GObject introspection C++ binding wrapper
> generator")
> +      (description "cppgir processes .gir files derived from GObject
> +introspection annotations into a set of C++ files defining suitable
> +namespaces, classes and other types that together form a C++
> binding.  In this
> +way, the plain C libraries and objects become available as native
> objects
> +along with @acronym{RAII, Resource Acquisition Is Initialization}
> managed
> +resource handling.")
I think "and resources are handled according to the @acronym{RAII, …}
pattern." would fit nicer, grammatically.

Cheers




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4.
  2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
                   ` (2 preceding siblings ...)
  2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
@ 2024-07-03 13:22 ` dan
  2024-07-03 13:22   ` [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2 dan
  2024-07-03 17:01   ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 Liliana Marie Prikler
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
  4 siblings, 2 replies; 27+ messages in thread
From: dan @ 2024-07-03 13:22 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/freedesktop.scm (xdg-desktop-portal): Update to 1.18.4.
[patches]: Disable portal tests.
[native-inputs]: Remove autoconf, automake, libtool and which.  Add python,
python-dbusmock, python-pytest and python-pytest-xdist.
[inputs]: Add bubblewrap.
[phases]<#:configureflags>: Update flags to meson options.

Change-Id: Ic9876565e9119443fedd082273be4f372ebce1d4
---
 gnu/local.mk                                  |  1 +
 gnu/packages/freedesktop.scm                  | 25 +++++----
 ...-desktop-portal-disable-portal-tests.patch | 56 +++++++++++++++++++
 3 files changed, 72 insertions(+), 10 deletions(-)
 create mode 100644 gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index cf6b1d61b3..973c4a5dad 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2240,6 +2240,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch			\
   %D%/packages/patches/wpa-supplicant-dbus-group-policy.patch		\
   %D%/packages/patches/x265-arm-flags.patch			\
+  %D%/packages/patches/xdg-desktop-portal-disable-portal-tests.patch\
   %D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
   %D%/packages/patches/xen-docs-use-predictable-ordering.patch	\
   %D%/packages/patches/xen-remove-config.gz-timestamp.patch	\
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 6941450436..2015ee46f8 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -38,6 +38,7 @@
 ;;; Copyright © 2022 Samuel Culpepper <sculpepper@newstore.com>
 ;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
 ;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -133,6 +134,7 @@ (define-module (gnu packages freedesktop)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages video)
+  #:use-module (gnu packages virtualization)
   #:use-module (gnu packages w3m)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xdisorg)
@@ -2989,7 +2991,7 @@ (define-public libportal
 (define-public xdg-desktop-portal
   (package
     (name "xdg-desktop-portal")
-    (version "1.16.0")
+    (version "1.18.4")
     (source
      (origin
        (method url-fetch)
@@ -2998,18 +3000,21 @@ (define-public xdg-desktop-portal
              version "/xdg-desktop-portal-" version ".tar.xz"))
        (sha256
         (base32
-         "06cczlh39kc41rvav06v37sad827y61rffy3v29i918ibj8sahav"))))
-    (build-system gnu-build-system)
+         "0r8y8qmzcfj7b7brqcxr9lg8pavfds815ffvj0kqc378fhgaln5q"))
+       ;; disable portal tests since they try to use fuse
+       (patches (search-patches "xdg-desktop-portal-disable-portal-tests.patch"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
        ("glib:bin" ,glib "bin")
-       ("which" ,which)
-       ("gettext" ,gettext-minimal)))
+       ("gettext" ,gettext-minimal)
+       ("python" ,python)
+       ("python-dbusmock" ,python-dbusmock)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-xdist" ,python-pytest-xdist)))
     (inputs
-     `(("gdk-pixbuf" ,gdk-pixbuf)
+     `(("bubblewrap" ,bubblewrap)
+       ("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
        ("flatpak" ,flatpak)
        ("fontconfig" ,fontconfig)
@@ -3021,7 +3026,7 @@ (define-public xdg-desktop-portal
        ("fuse" ,fuse)))
     (arguments
      `(#:configure-flags
-       (list "--with-systemd=no")
+       (list "-Dsystemd=disabled")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'po-chmod
diff --git a/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
new file mode 100644
index 0000000000..5e13493613
--- /dev/null
+++ b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
@@ -0,0 +1,56 @@
+From b7750fa99c31c5f28ac2053fa154bef4038b5cc0 Mon Sep 17 00:00:00 2001
+From: dan <i@dan.games>
+Date: Tue, 2 Jul 2024 19:37:38 +0800
+Subject: [PATCH] tests: remove portal tests.
+
+---
+ tests/meson.build | 24 ------------------------
+ 1 file changed, 24 deletions(-)
+
+diff --git a/tests/meson.build b/tests/meson.build
+index a2dafee..bcd87be 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -181,18 +181,6 @@ portal_tests = [
+ 
+ test_env = env_tests
+ test_env.set('XDG_CURRENT_DESKTOP', 'test')
+-foreach p : portal_tests
+-    test(
+-      'test-portals-@0@'.format(p),
+-      test_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/portal/@0@'.format(p)],
+-      depends: [test_backends, test_portals],
+-      env: test_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ # Split the portal tests into one test per portal, this makes debugging a lot
+ # easier.
+@@ -204,18 +192,6 @@ portal_limited = [
+ 
+ limited_env = env_tests
+ limited_env.set('XDG_CURRENT_DESKTOP', 'limited')
+-foreach p : portal_limited
+-    test(
+-      'limited-portals-@0@'.format(p),
+-      limited_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/limited/@0@'.format(p)],
+-      depends: [test_backends, limited_portals],
+-      env: limited_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ if enable_installed_tests
+   install_data(
+
+base-commit: 11c8a96b147aeae70e3f770313f93b367d53fedd
+-- 
+2.41.0
+

base-commit: bab73e413b3421f4aa051e9438d147040a52e1be
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2.
  2024-07-03 13:22 ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 dan
@ 2024-07-03 13:22   ` dan
  2024-07-03 17:06     ` Liliana Marie Prikler
  2024-07-03 17:01   ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 Liliana Marie Prikler
  1 sibling, 1 reply; 27+ messages in thread
From: dan @ 2024-07-03 13:22 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New file.
* gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
* gnu/local.mk (dist_patch_DATA): register them.
* gnu/packages/telegram.scm:
(libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to submodule
checkout.
(cmake-helpers-for-telegram-desktop)[origin]: Add patches to unbundle gsl and
cppgir.
(libprisma-for-telegram-desktop): New variable.
(cppgir-for-telegram-desktop): New variable.
(telegram-desktop): Update to 5.2.2.
[arguments]<#:phases><unpack-additional-sources>: Add
libprisma-for-telegram-desktop.
<patch-gir-ignore-paths>: New phase.
<use-system-xdg-desktop-portal>: New phase.
[inputs]: Add boost, cppgir-for-telegram-desktop, expected-lite and
gobject-introspection.

Change-Id: I75441a6284e3755f510a7d3ba5746bfbb8acbb91
---
 gnu/local.mk                                  |   2 +
 .../telegram-desktop-unbundle-cppgir.patch    |  95 +++++++++++++
 .../telegram-desktop-unbundle-gsl.patch       |  31 +++++
 gnu/packages/telegram.scm                     | 129 +++++++++++++-----
 4 files changed, 226 insertions(+), 31 deletions(-)
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-gsl.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 973c4a5dad..2d4f866491 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2135,6 +2135,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/texinfo-headings-single.patch		\
   %D%/packages/patches/texinfo-5-perl-compat.patch		\
   %D%/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-cppgir.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-gsl.patch      \
   %D%/packages/patches/telegram-purple-adjust-test.patch	\
   %D%/packages/patches/teuchos-remove-duplicate-using.patch	\
   %D%/packages/patches/texi2html-document-encoding.patch	\
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
new file mode 100644
index 0000000000..a24dbe25bb
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
@@ -0,0 +1,95 @@
+From a5c42e07ae223d440ff11347e0cf1fd58fd383df Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 1/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/CMakeLists.txt        | 4 +++-
+ external/glib/generate_cppgir.cmake | 7 ++++++-
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/external/glib/CMakeLists.txt b/external/glib/CMakeLists.txt
+index 3c6fe4be..c862705f 100644
+--- a/external/glib/CMakeLists.txt
++++ b/external/glib/CMakeLists.txt
+@@ -13,9 +13,11 @@ function(add_cppgir) # isolate scope
+     set(BUILD_EXAMPLES OFF)
+     add_subdirectory(cppgir EXCLUDE_FROM_ALL)
+ endfunction()
+-add_cppgir()
+ 
+ include(generate_cppgir.cmake)
++if (NOT CppGir_FOUND)
++    add_cppgir()
++endif()
+ generate_cppgir(external_glib Gio-2.0)
+ 
+ find_package(PkgConfig REQUIRED)
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index c15d3f9e..9b0a5ac8 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -4,6 +4,8 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+ 
++find_package(CppGir 2.0)
++
+ function(generate_cppgir target_name gir)
+     set(cppgir_loc ${cmake_helpers_loc}/external/glib/cppgir)
+ 
+@@ -17,6 +19,9 @@ function(generate_cppgir target_name gir)
+         ${cppgir_loc}/data/cppgir.ignore
+         ${cppgir_loc}/data/cppgir_unix.ignore
+     )
++    if (CppGir_FOUND)
++        set(ignore_files)  # rely on default ignore list
++    endif()
+ 
+     set(gir_path)
+     if (IS_ABSOLUTE "${gir}")
+@@ -33,7 +38,7 @@ function(generate_cppgir target_name gir)
+         --class
+         --class-full
+         --expected
+-        --ignore
++        "$<$<BOOL:${ignore_files}>:--ignore>"
+         "$<JOIN:${ignore_files},:>"
+         --output
+         ${gen_dst}
+
+From eed39522952c15f448c54290454806dd011c4996 Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 2/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/generate_cppgir.cmake | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index 9b0a5ac8..2ad82277 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -15,11 +15,12 @@ function(generate_cppgir target_name gir)
+ 
+     set(gen_timestamp ${gen_dst}/${target_name}_cppgir.timestamp)
+ 
+-    set(ignore_files
+-        ${cppgir_loc}/data/cppgir.ignore
+-        ${cppgir_loc}/data/cppgir_unix.ignore
+-    )
+-    if (CppGir_FOUND)
++    if (NOT CppGir_FOUND)
++        set(ignore_files
++            ${cppgir_loc}/data/cppgir.ignore
++            ${cppgir_loc}/data/cppgir_unix.ignore
++        )
++    else()
+         set(ignore_files)  # rely on default ignore list
+     endif()
+ 
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
new file mode 100644
index 0000000000..f89d326a5c
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
@@ -0,0 +1,31 @@
+From a3ac6df0441b4caca28b1df87febc420e18942ce Mon Sep 17 00:00:00 2001
+From: Zephyr Lykos <git@mochaa.ws>
+Date: Mon, 23 Oct 2023 15:55:24 +0800
+Subject: [PATCH] Revert "Force usage of GSL fork because of a libstdc++ bug."
+
+This reverts commit 982546b169df3d479e6511425870327559b38a89.
+<https://github.com/microsoft/GSL/commit/e64c97fc2cfc11992098bb38eda932de275e3f4d>
+---
+ external/gsl/CMakeLists.txt | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/external/gsl/CMakeLists.txt b/external/gsl/CMakeLists.txt
+index 8eaf19c5..344f9488 100644
+--- a/external/gsl/CMakeLists.txt
++++ b/external/gsl/CMakeLists.txt
+@@ -7,7 +7,6 @@
+ add_library(external_gsl INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_gsl ALIAS external_gsl)
+ 
+-#[[
+ if (DESKTOP_APP_USE_PACKAGED)
+     if (DESKTOP_APP_USE_PACKAGED_LAZY)
+         find_package(Microsoft.GSL 4.0.0 QUIET)
+@@ -20,7 +19,6 @@ if (DESKTOP_APP_USE_PACKAGED)
+         return()
+     endif()
+ endif()
+-]]
+ 
+ # https://gitlab.kitware.com/cmake/cmake/-/issues/25222
+ if (NOT EXISTS ${third_party_loc}/GSL/include)
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 358374a5bb..533e976f6f 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2023 Lu Hui <luhux76@gmail.com>
 ;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
 ;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,6 +29,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages assembly)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -54,6 +56,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
@@ -82,11 +85,11 @@ (define-module (gnu packages telegram)
   #:use-module (guix build-system python)
   #:use-module (guix build-system qt))
 
-(define %telegram-version "4.8.1")
+(define %telegram-version "5.2.2")
 
 (define libyuv-for-telegram-desktop
-  (let ((commit "77c2121f7e6b8e694d6e908bbbe9be24214097da")
-        (revision "2439"))
+  (let ((commit "04821d1e7d60845525e8db55c7bcd41ef5be9406")
+        (revision "2440"))
     (origin
       (method git-fetch)
       (uri (git-reference
@@ -97,67 +100,72 @@ (define libyuv-for-telegram-desktop
                   (git-version "0" revision commit)))
       (sha256
        (base32
-        "1b4k8yskr9ffl5k8s9i0af1gn1pavsfixla26vh8bij69rdr7f9c")))))
+        "1fsvc0f8mckrdzys8lnlnbw6676mjamm6p3ghr2h9liqfa83s6wg")))))
 
 (define cmake-helpers-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/cmake_helpers.git")
-          (commit "6ab5543b3dd1e40979d258e46d03376931b6c37b")))
+          (commit "5742caae65e4163e7faec238eb4e3e5c219ad09c")))
     (file-name
      (git-file-name "cmake-helpers-for-telegram-desktop" %telegram-version))
+    (patches
+     ;; https://github.com/desktop-app/cmake_helpers/pull/320
+     ;; https://github.com/desktop-app/cmake_helpers/pull/305
+     (search-patches "telegram-desktop-unbundle-gsl.patch"
+                     "telegram-desktop-unbundle-cppgir.patch"))
     (sha256
      (base32
-      "0y96mvzs113zh8bdw1h3i6l0pgwg93rigrday8kfdg4magz686k6"))))
+      "1ld74wd4gyx22gd132ci13sbzis7ypxqiyk4y0mrlhjvmciq9nw1"))))
 
 (define codegen-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/codegen.git")
-          (commit "1a969faa0afb29d53af03e530775eccdfb8433f1")))
+          (commit "0af136124083369073b8fdaf45f0816fd2b10bad")))
     (file-name
      (git-file-name "codegen-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1xmw8dfm51p5g20rlmzqnr72a14ngyxwq09an8clf1v5s6mmwvak"))))
+      "057bwn9smrgnyfb1vraf50ihbkhjc4d72msl7vnbqc4h5sg8dav9"))))
 
 (define lib-base-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_base.git")
-          (commit "fd9adb30ee906ea02c125eaa58fcfae773fdc677")))
+          (commit "f30400147d997fedc787e214467d305db6c159e7")))
     (file-name
      (git-file-name "lib-base-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1m760mcfvgzia53nrs6wvjn353jvzlzln7c9fkx2dhpkigiynz83"))))
+      "0mm88xj9q9v5p0z7byjfpbmw8h6rqg9ya9m0jhfzi2s8iglz0cga"))))
 
 (define lib-crl-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_crl.git")
-          (commit "3d7e1e1f1321c3defd21c01882d674e485ecd8df")))
+          (commit "078006d29af0002e6cd8c61a405cdeaf65b37142")))
     (file-name
      (git-file-name "lib-crl-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "06mzafnjpfr5ih297dh7bxm6bgpg0wy0gv2r2732n5szyrg9sdl6"))))
+      "18n88ghj3akpkxvllrh1rs19vd0d3xw87hd67qphr30b6ggqs9fd"))))
 
 (define lib-lottie-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_lottie.git")
-          (commit "3e9c2f1026e4b5aa3202fca4cc67ece36c7cebb2")))
+          (commit "1a700e5a0d7c3e2f617530354ff2a47c5c72bb4a")))
     (file-name
      (git-file-name "lib-lottie-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l57ibfij9xm4ww4s9cc63q1x8xzpc6ablwaji1krrn3xxksqdd4"))))
+      "18w35sz6k3wcv07v0szx3avpfdl0rjby6yqm1fzmx7fqw2jn6wpl"))))
 
 (define lib-qr-for-telegram-desktop
   (origin
@@ -188,24 +196,24 @@ (define lib-spellcheck-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_spellcheck.git")
-          (commit "ae89fefd239ecc47d4dab7ba29f9e230376a57d3")))
+          (commit "0b7622ff38778e9cd03d3997de59351973480a1f")))
     (file-name
      (git-file-name "lib-spellcheck-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "147xbbcza5q4wcdipk5jplajzkc48971kg2s7qv5jlz33sxkw1lq"))))
+      "0s9fjxpxxvj1xgzg3sfw6079blgmdvbb5cy6wb921sqaqwf52j6x"))))
 
 (define lib-storage-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_storage.git")
-          (commit "839609369d04615475cb1518636de3619106a917")))
+          (commit "0971b69ca90f1697ef81276d9820dcd6d26de4ac")))
     (file-name
      (git-file-name "lib-storage-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1l26h2fmqp9dcpr6pfvdd5sjb68j7yh0ms2lnr8na7jf5xqmkwwm"))))
+      "0ihbh1ajns0sf42h9992hnawwjr1n439sgb0g4zirn2bj5i1zbdv"))))
 
 (define lib-tl-for-telegram-desktop
   (origin
@@ -224,52 +232,52 @@ (define lib-ui-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_ui.git")
-          (commit "37531086ec21a8569deddedb11b402f8a3157b90")))
+          (commit "ebd8609ee73d48186b905787dd5bb3bcbb4f9f3f")))
     (file-name
      (git-file-name "lib-ui-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l4baalwdiwcwzn3wgrbyiaryi70lswillbpkzcjpavaa2pjg6b0"))))
+      "0abpb0gi3k99pm5zh5gh9czhi48jqvr6wy0yli004hswlfqs2nxk"))))
 
 (define lib-webrtc-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webrtc.git")
-          (commit "b68a95ad4d1ae9a1827671100a7fd76cbe448c3f")))
+          (commit "f701713cd798bd7d5f69d318fdefb125d101aa76")))
     (file-name
      (git-file-name "lib-webrtc-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1c8jwdnn26n13yp0rp0l71q6xlxa6wp3cspbm3pnghw964jwgp3z"))))
+      "1hki5lc2jrack0r7wyixfh3c08jnmnw3pfrggrznvj4kq490z1b4"))))
 
 (define lib-webview-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webview.git")
-          (commit "f632fc84cbc62ae8abbbd05f81d472757a337c11")))
+          (commit "659b9181240aae16c05ef8ab7e6c4dd527afcf8a")))
     (file-name
      (git-file-name "lib-webview-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0idsfkxq7l9kgyrhifys5l4jkhvbyxkgkp0qdq9218h7g0ldw84i"))))
+      "1hg8jnpkszf3rrbnkqq9xc3n743602vkjp4kj8rccw7syjmgvrf1"))))
 
 (define tgcalls-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/TelegramMessenger/tgcalls.git")
-          (commit "2e2797648aac2588e7fe479c2e8b4455ec65c5e6")))
+          (commit "b9fa8b84d8abe741183f157218ac038c596a54a5")))
     (file-name
      (git-file-name "tgcalls-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "193m2gkvipijqbfd6a8mhg9nd63wlnshzgspk3pip57vk21l709z"))))
+      "1swni7xw5l0q376b6rnf9h93arzjqm9rkv7g6hz67742lf9a0x9z"))))
 
 (define-public webrtc-for-telegram-desktop
-  (let ((commit "0532942ac6176a66ef184fb728a4cbb02958fc0b")
-        (revision "389"))
+  (let ((commit "c9cc4390ab951f2cbc103ff783a11f398b27660b")
+        (revision "399"))
     (hidden-package
      (package
        (name "webrtc-for-telegram-desktop")
@@ -285,7 +293,7 @@ (define-public webrtc-for-telegram-desktop
           (file-name
            (git-file-name name version))
           (sha256
-           (base32 "0fary99yl1ddk5zjpfy0pyb5brd268j41plcnvv9qjyf0wj9hf2k"))
+           (base32 "0x2hjliiapb9kacbg8fwkz7g09c9k8dc77xxycjh5kmm1fc2i6dd"))
           (patches
            (search-patches
             ;; https://github.com/desktop-app/tg_owt/pull/123
@@ -400,6 +408,47 @@ (define cld3-for-telegram-desktop
     (base32
      "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
 
+(define libprisma-for-telegram-desktop
+  (origin
+   (method git-fetch)
+   (uri (git-reference
+         (url "https://github.com/desktop-app/libprisma")
+         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
+   (file-name
+    (git-file-name "libprisma-for-telegram-desktop" %telegram-version))
+   (sha256
+    (base32
+     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
+
+(define cppgir-for-telegram-desktop
+  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
+        (revision "0"))
+    (package
+      (name "cppgir-for-telegram-desktop")
+      (version (git-version "2.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+           (url "https://gitlab.com/mnauw/cppgir")
+           (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        #:configure-flags
+        #~(list "-DINTERNAL_EXPECTED=OFF")))
+      (inputs (list boost fmt expected-lite))
+      (home-page "https://gitlab.com/mnauw/cppgir")
+      (synopsis "GObject introspection C++ binding wrapper generator")
+      (description "cppgir processes .gir files derived from GObject
+introspection annotations into a set of C++ files defining suitable
+namespaces, classes and other types that together form a C++ binding.")
+      (license license:expat))))
+
 (define-public telegram-desktop
   (package
     (name "telegram-desktop")
@@ -415,7 +464,7 @@ (define-public telegram-desktop
        (file-name
         (git-file-name name version))
        (sha256
-        (base32 "0g47ffamh1csp79yzkv28v3qjkhjacj0c7pjf53n1ks80j5hc2j0"))
+        (base32 "0ik74jdvjlan34mykidgrk8d7p2b2y27ax5szvx7kdas7vmbl7k1"))
        (patches
         (search-patches
          ;; https://github.com/telegramdesktop/tdesktop/pull/24126
@@ -481,7 +530,20 @@ (define-public telegram-desktop
                       ("Telegram/lib_webrtc" #$lib-webrtc-for-telegram-desktop)
                       ("Telegram/lib_webview" #$lib-webview-for-telegram-desktop)
                       ("Telegram/ThirdParty/cld3" #$cld3-for-telegram-desktop)
+                      ("Telegram/ThirdParty/libprisma" #$libprisma-for-telegram-desktop)
                       ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)))))
+               (add-after 'unpack-additional-sources 'patch-gir-ignore-paths
+                 (lambda _
+                   (substitute* "cmake/external/glib/generate_cppgir.cmake"
+                     (("\\$\\{cmake_helpers_loc\\}/external/glib/cppgir/data")
+                      (string-append #$(this-package-input "cppgir") "/share/cppgir")))))
+               (add-after 'unpack-additional-sources 'use-system-xdg-desktop-portal
+                 (lambda _
+                   (substitute* (list "Telegram/CMakeLists.txt"
+                                      "Telegram/lib_base/CMakeLists.txt")
+                     (("\\$\\{third_party_loc\\}/xdg-desktop-portal/data")
+                      (string-append #$(this-package-native-input "xdg-desktop-portal")
+                                     "/share/dbus-1/interfaces")))))
                (add-after 'install 'glib-or-gtk-compile-schemas
                  (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
                (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
@@ -490,17 +552,22 @@ (define-public telegram-desktop
      (list `(,glib "bin")
            `(,gtk+ "bin")
            pkg-config
-           python-wrapper))
+           python-wrapper
+           xdg-desktop-portal))
     (inputs
      (list abseil-cpp-cxxstd17
            alsa-lib
+           boost
            c++-gsl
            crc32c
+           cppgir-for-telegram-desktop
+           expected-lite
            fcitx-qt5
            fcitx5-qt
            ffmpeg
            glib
            glibmm-2.76
+           gobject-introspection
            gtk+
            hime
            hunspell
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4.
  2024-07-03 13:22 ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 dan
  2024-07-03 13:22   ` [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2 dan
@ 2024-07-03 17:01   ` Liliana Marie Prikler
  1 sibling, 0 replies; 27+ messages in thread
From: Liliana Marie Prikler @ 2024-07-03 17:01 UTC (permalink / raw)
  To: dan, 71897; +Cc: Maxim Cournoyer

Am Mittwoch, dem 03.07.2024 um 21:22 +0800 schrieb dan:
> * gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch:
> New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/freedesktop.scm (xdg-desktop-portal): Update to
> 1.18.4.
> [patches]: Disable portal tests.
> [native-inputs]: Remove autoconf, automake, libtool and which.  Add
> python,
> python-dbusmock, python-pytest and python-pytest-xdist.
> [inputs]: Add bubblewrap.
> [phases]<#:configureflags>: Update flags to meson options.
Nit-pick: you misspelled #:configure-flags.

> Change-Id: Ic9876565e9119443fedd082273be4f372ebce1d4
> ---
>  gnu/local.mk                                  |  1 +
>  gnu/packages/freedesktop.scm                  | 25 +++++----
>  ...-desktop-portal-disable-portal-tests.patch | 56
> +++++++++++++++++++
>  3 files changed, 72 insertions(+), 10 deletions(-)
>  create mode 100644 gnu/packages/patches/xdg-desktop-portal-disable-
> portal-tests.patch
> 
> diff --git a/gnu/local.mk b/gnu/local.mk
> index cf6b1d61b3..973c4a5dad 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -2240,6 +2240,7 @@ dist_patch_DATA
> =                                         \
>    %D%/packages/patches/wordnet-CVE-2008-3908-
> pt2.patch                 \
>    %D%/packages/patches/wpa-supplicant-dbus-group-
> policy.patch          \
>    %D%/packages/patches/x265-arm-flags.patch                    \
> +  %D%/packages/patches/xdg-desktop-portal-disable-portal-
> tests.patch\
>    %D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
>    %D%/packages/patches/xen-docs-use-predictable-ordering.patch \
>    %D%/packages/patches/xen-remove-config.gz-timestamp.patch    \
> diff --git a/gnu/packages/freedesktop.scm
> b/gnu/packages/freedesktop.scm
> index 6941450436..2015ee46f8 100644
> --- a/gnu/packages/freedesktop.scm
> +++ b/gnu/packages/freedesktop.scm
> @@ -38,6 +38,7 @@
>  ;;; Copyright © 2022 Samuel Culpepper <sculpepper@newstore.com>
>  ;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
>  ;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
> +;;; Copyright © 2024 dan <i@dan.games>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -133,6 +134,7 @@ (define-module (gnu packages freedesktop)
>    #:use-module (gnu packages tls)
>    #:use-module (gnu packages valgrind)
>    #:use-module (gnu packages video)
> +  #:use-module (gnu packages virtualization)
>    #:use-module (gnu packages w3m)
>    #:use-module (gnu packages web)
>    #:use-module (gnu packages xdisorg)
> @@ -2989,7 +2991,7 @@ (define-public libportal
>  (define-public xdg-desktop-portal
>    (package
>      (name "xdg-desktop-portal")
> -    (version "1.16.0")
> +    (version "1.18.4")
>      (source
>       (origin
>         (method url-fetch)
> @@ -2998,18 +3000,21 @@ (define-public xdg-desktop-portal
>               version "/xdg-desktop-portal-" version ".tar.xz"))
>         (sha256
>          (base32
> -         "06cczlh39kc41rvav06v37sad827y61rffy3v29i918ibj8sahav"))))
> -    (build-system gnu-build-system)
> +         "0r8y8qmzcfj7b7brqcxr9lg8pavfds815ffvj0kqc378fhgaln5q"))
> +       ;; disable portal tests since they try to use fuse
> +       (patches (search-patches "xdg-desktop-portal-disable-portal-
> tests.patch"))))
> +    (build-system meson-build-system)
>      (native-inputs
>       `(("pkg-config" ,pkg-config)
> -       ("autoconf" ,autoconf)
> -       ("automake" ,automake)
> -       ("libtool" ,libtool)
>         ("glib:bin" ,glib "bin")
> -       ("which" ,which)
> -       ("gettext" ,gettext-minimal)))
> +       ("gettext" ,gettext-minimal)
> +       ("python" ,python)
> +       ("python-dbusmock" ,python-dbusmock)
> +       ("python-pytest" ,python-pytest)
> +       ("python-pytest-xdist" ,python-pytest-xdist)))
>      (inputs
> -     `(("gdk-pixbuf" ,gdk-pixbuf)
> +     `(("bubblewrap" ,bubblewrap)
> +       ("gdk-pixbuf" ,gdk-pixbuf)
>         ("glib" ,glib)
>         ("flatpak" ,flatpak)
>         ("fontconfig" ,fontconfig)
Since this is still using old-style inputs, it would be nice to follow
up with a styling commit.


Cheers

^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2.
  2024-07-03 13:22   ` [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2 dan
@ 2024-07-03 17:06     ` Liliana Marie Prikler
  2024-07-03 17:18       ` dan
  0 siblings, 1 reply; 27+ messages in thread
From: Liliana Marie Prikler @ 2024-07-03 17:06 UTC (permalink / raw)
  To: dan, 71897; +Cc: Maxim Cournoyer

Am Mittwoch, dem 03.07.2024 um 21:22 +0800 schrieb dan:
> * gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New
> file.
> * gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
> * gnu/local.mk (dist_patch_DATA): register them.
> * gnu/packages/telegram.scm:
> (libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
> codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
> lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
> lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
> lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
> tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to
> submodule
> checkout.
Note: ChangeLog format uses closing braces.
> (cmake-helpers-for-telegram-desktop)[origin]: Add patches to unbundle
> gsl and
> cppgir.
> (libprisma-for-telegram-desktop): New variable.
> (cppgir-for-telegram-desktop): New variable.
Introduce these in their own commits.
> (telegram-desktop): Update to 5.2.2.
> [arguments]<#:phases><unpack-additional-sources>: Add
Shorten this to just [#:phases] – you're not using any other
[arguments], and repeating the same brackets would be confusing.
> libprisma-for-telegram-desktop.
> <patch-gir-ignore-paths>: New phase.
> <use-system-xdg-desktop-portal>: New phase.
> [inputs]: Add boost, cppgir-for-telegram-desktop, expected-lite and
> gobject-introspection.
Lexically, the rest LGTM, but I ain't subject my weak machine to that
build.  Let's see if CI can handle this for us.

Cheers




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2.
  2024-07-03 17:06     ` Liliana Marie Prikler
@ 2024-07-03 17:18       ` dan
  2024-07-03 17:22         ` dan
  0 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-03 17:18 UTC (permalink / raw)
  To: Liliana Marie Prikler; +Cc: Maxim Cournoyer, 71897

Jul 4, 2024 01:06:06 Liliana Marie Prikler <liliana.prikler@gmail.com>:
>
>> (libprisma-for-telegram-desktop): New variable.
>> (cppgir-for-telegram-desktop): New variable.
> Introduce these in their own commits.
But these variables depend on the new %telegram-desktop-version, which is 
only updated in this commit.  Personally I feel more comfortable sticking 
these changes together, although it's a bit less ideal.  I would like to 
know if there are better ways to do so.




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2.
  2024-07-03 17:18       ` dan
@ 2024-07-03 17:22         ` dan
  2024-07-03 18:21           ` Liliana Marie Prikler
  0 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-03 17:22 UTC (permalink / raw)
  To: Liliana Marie Prikler; +Cc: Maxim Cournoyer, 71897

Jul 4, 2024 01:18:19 dan <i@dan.games>:

> Jul 4, 2024 01:06:06 Liliana Marie Prikler <liliana.prikler@gmail.com>:
>>
>>> (libprisma-for-telegram-desktop): New variable.
>>> (cppgir-for-telegram-desktop): New variable.
>> Introduce these in their own commits.
> But these variables depend on the new %telegram-desktop-version, which 
> is only updated in this commit.  Personally I feel more comfortable 
> sticking these changes together, although it's a bit less ideal.  I 
> would like to know if there are better ways to do so.
Oh I misread, cppgir probably can be split to a dedicated commit since 
it's using their own version number.




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2.
  2024-07-03 17:22         ` dan
@ 2024-07-03 18:21           ` Liliana Marie Prikler
  0 siblings, 0 replies; 27+ messages in thread
From: Liliana Marie Prikler @ 2024-07-03 18:21 UTC (permalink / raw)
  To: dan; +Cc: Maxim Cournoyer, 71897

Am Donnerstag, dem 04.07.2024 um 01:22 +0800 schrieb dan:
> Jul 4, 2024 01:18:19 dan <i@dan.games>:
> 
> > Jul 4, 2024 01:06:06 Liliana Marie Prikler
> > <liliana.prikler@gmail.com>:
> > > 
> > > > (libprisma-for-telegram-desktop): New variable.
> > > > (cppgir-for-telegram-desktop): New variable.
> > > Introduce these in their own commits.
> > But these variables depend on the new %telegram-desktop-version,
> > which is only updated in this commit.  Personally I feel more
> > comfortable sticking these changes together, although it's a bit
> > less ideal.  I would like to know if there are better ways to do
> > so.
> Oh I misread, cppgir probably can be split to a dedicated commit
> since it's using their own version number.
For libprisma, assuming it uses %telegram-desktop-version, you can make
it to do so in the commit that updates telegram and hardcode the
version prior to that.

Cheers




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 1/5] gnu: xdg-desktop-portal: Update to 1.18.4.
  2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
                   ` (3 preceding siblings ...)
  2024-07-03 13:22 ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 dan
@ 2024-07-07 15:00 ` dan
  2024-07-07 15:00   ` [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style dan
                     ` (4 more replies)
  4 siblings, 5 replies; 27+ messages in thread
From: dan @ 2024-07-07 15:00 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/freedesktop.scm (xdg-desktop-portal): Update to 1.18.4.
[patches]: Disable portal tests.
[native-inputs]: Remove autoconf, automake, libtool and which.  Add python,
python-dbusmock, python-pytest and python-pytest-xdist.
[inputs]: Add bubblewrap.
[phases]<#:configure-flags>: Update flags to meson options.

Change-Id: Ic9876565e9119443fedd082273be4f372ebce1d4
---
 gnu/local.mk                                  |  1 +
 gnu/packages/freedesktop.scm                  | 25 +++++----
 ...-desktop-portal-disable-portal-tests.patch | 56 +++++++++++++++++++
 3 files changed, 72 insertions(+), 10 deletions(-)
 create mode 100644 gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 329eaf9358..bb53b08b8e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2240,6 +2240,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch			\
   %D%/packages/patches/wpa-supplicant-dbus-group-policy.patch		\
   %D%/packages/patches/x265-arm-flags.patch			\
+  %D%/packages/patches/xdg-desktop-portal-disable-portal-tests.patch\
   %D%/packages/patches/xdg-desktop-portal-wlr-harcoded-length.patch\
   %D%/packages/patches/xen-docs-use-predictable-ordering.patch	\
   %D%/packages/patches/xen-remove-config.gz-timestamp.patch	\
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 6941450436..2015ee46f8 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -38,6 +38,7 @@
 ;;; Copyright © 2022 Samuel Culpepper <sculpepper@newstore.com>
 ;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
 ;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -133,6 +134,7 @@ (define-module (gnu packages freedesktop)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages video)
+  #:use-module (gnu packages virtualization)
   #:use-module (gnu packages w3m)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xdisorg)
@@ -2989,7 +2991,7 @@ (define-public libportal
 (define-public xdg-desktop-portal
   (package
     (name "xdg-desktop-portal")
-    (version "1.16.0")
+    (version "1.18.4")
     (source
      (origin
        (method url-fetch)
@@ -2998,18 +3000,21 @@ (define-public xdg-desktop-portal
              version "/xdg-desktop-portal-" version ".tar.xz"))
        (sha256
         (base32
-         "06cczlh39kc41rvav06v37sad827y61rffy3v29i918ibj8sahav"))))
-    (build-system gnu-build-system)
+         "0r8y8qmzcfj7b7brqcxr9lg8pavfds815ffvj0kqc378fhgaln5q"))
+       ;; disable portal tests since they try to use fuse
+       (patches (search-patches "xdg-desktop-portal-disable-portal-tests.patch"))))
+    (build-system meson-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("autoconf" ,autoconf)
-       ("automake" ,automake)
-       ("libtool" ,libtool)
        ("glib:bin" ,glib "bin")
-       ("which" ,which)
-       ("gettext" ,gettext-minimal)))
+       ("gettext" ,gettext-minimal)
+       ("python" ,python)
+       ("python-dbusmock" ,python-dbusmock)
+       ("python-pytest" ,python-pytest)
+       ("python-pytest-xdist" ,python-pytest-xdist)))
     (inputs
-     `(("gdk-pixbuf" ,gdk-pixbuf)
+     `(("bubblewrap" ,bubblewrap)
+       ("gdk-pixbuf" ,gdk-pixbuf)
        ("glib" ,glib)
        ("flatpak" ,flatpak)
        ("fontconfig" ,fontconfig)
@@ -3021,7 +3026,7 @@ (define-public xdg-desktop-portal
        ("fuse" ,fuse)))
     (arguments
      `(#:configure-flags
-       (list "--with-systemd=no")
+       (list "-Dsystemd=disabled")
        #:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'po-chmod
diff --git a/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
new file mode 100644
index 0000000000..5e13493613
--- /dev/null
+++ b/gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch
@@ -0,0 +1,56 @@
+From b7750fa99c31c5f28ac2053fa154bef4038b5cc0 Mon Sep 17 00:00:00 2001
+From: dan <i@dan.games>
+Date: Tue, 2 Jul 2024 19:37:38 +0800
+Subject: [PATCH] tests: remove portal tests.
+
+---
+ tests/meson.build | 24 ------------------------
+ 1 file changed, 24 deletions(-)
+
+diff --git a/tests/meson.build b/tests/meson.build
+index a2dafee..bcd87be 100644
+--- a/tests/meson.build
++++ b/tests/meson.build
+@@ -181,18 +181,6 @@ portal_tests = [
+ 
+ test_env = env_tests
+ test_env.set('XDG_CURRENT_DESKTOP', 'test')
+-foreach p : portal_tests
+-    test(
+-      'test-portals-@0@'.format(p),
+-      test_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/portal/@0@'.format(p)],
+-      depends: [test_backends, test_portals],
+-      env: test_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ # Split the portal tests into one test per portal, this makes debugging a lot
+ # easier.
+@@ -204,18 +192,6 @@ portal_limited = [
+ 
+ limited_env = env_tests
+ limited_env.set('XDG_CURRENT_DESKTOP', 'limited')
+-foreach p : portal_limited
+-    test(
+-      'limited-portals-@0@'.format(p),
+-      limited_portals,
+-      args: ['--verbose', '--keep-going', '--tap', '-p', '/limited/@0@'.format(p)],
+-      depends: [test_backends, limited_portals],
+-      env: limited_env,
+-      is_parallel: false,
+-      protocol: test_protocol,
+-      suite: 'portals',
+-    )
+-endforeach
+ 
+ if enable_installed_tests
+   install_data(
+
+base-commit: 11c8a96b147aeae70e3f770313f93b367d53fedd
+-- 
+2.41.0
+

base-commit: c86a07bacc2469e7a00fbc66cfe4f322e4bafb06
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style.
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
@ 2024-07-07 15:00   ` dan
  2024-07-09  2:14     ` Maxim Cournoyer
  2024-07-07 15:00   ` [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop dan
                     ` (3 subsequent siblings)
  4 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-07 15:00 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/freedesktop.scm (xdg-desktop-portal): Update input style.

Change-Id: Iec0630cd945dfcd4db67af30211cbfd4d058766d
---
 gnu/packages/freedesktop.scm | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 2015ee46f8..28954451d5 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -3005,25 +3005,25 @@ (define-public xdg-desktop-portal
        (patches (search-patches "xdg-desktop-portal-disable-portal-tests.patch"))))
     (build-system meson-build-system)
     (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("glib:bin" ,glib "bin")
-       ("gettext" ,gettext-minimal)
-       ("python" ,python)
-       ("python-dbusmock" ,python-dbusmock)
-       ("python-pytest" ,python-pytest)
-       ("python-pytest-xdist" ,python-pytest-xdist)))
+     (list gettext-minimal
+           (list glib "bin")
+           pkg-config
+           python
+           python-dbusmock
+           python-pytest
+           python-pytest-xdist))
     (inputs
-     `(("bubblewrap" ,bubblewrap)
-       ("gdk-pixbuf" ,gdk-pixbuf)
-       ("glib" ,glib)
-       ("flatpak" ,flatpak)
-       ("fontconfig" ,fontconfig)
-       ("json-glib" ,json-glib)
-       ("libportal" ,libportal)
-       ("dbus" ,dbus)
-       ("geoclue" ,geoclue)
-       ("pipewire" ,pipewire)
-       ("fuse" ,fuse)))
+     (list bubblewrap
+           dbus
+           flatpak
+           fontconfig
+           fuse
+           gdk-pixbuf
+           geoclue
+           glib
+           json-glib
+           libportal
+           pipewire))
     (arguments
      `(#:configure-flags
        (list "-Dsystemd=disabled")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop.
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
  2024-07-07 15:00   ` [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style dan
@ 2024-07-07 15:00   ` dan
  2024-07-09  2:25     ` Maxim Cournoyer
  2024-07-07 15:00   ` [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop dan
                     ` (2 subsequent siblings)
  4 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-07 15:00 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/telegram.scm (cppgir-for-telegram-desktop): New variable.

Change-Id: I4bb37f9ebc6cfd711ad83f29cd95bc72c0d3bf45
---
 gnu/packages/telegram.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 358374a5bb..26ab27293f 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -400,6 +400,35 @@ (define cld3-for-telegram-desktop
     (base32
      "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
 
+(define cppgir-for-telegram-desktop
+  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
+        (revision "0"))
+    (package
+      (name "cppgir-for-telegram-desktop")
+      (version (git-version "2.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+           (url "https://gitlab.com/mnauw/cppgir")
+           (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
+      (build-system cmake-build-system)
+      (arguments
+       (list
+        #:configure-flags
+        #~(list "-DINTERNAL_EXPECTED=OFF")))
+      (inputs (list boost fmt expected-lite))
+      (home-page "https://gitlab.com/mnauw/cppgir")
+      (synopsis "GObject introspection C++ binding wrapper generator")
+      (description "cppgir processes .gir files derived from GObject
+introspection annotations into a set of C++ files defining suitable
+namespaces, classes and other types that together form a C++ binding.")
+      (license license:expat))))
+
 (define-public telegram-desktop
   (package
     (name "telegram-desktop")
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop.
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
  2024-07-07 15:00   ` [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style dan
  2024-07-07 15:00   ` [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop dan
@ 2024-07-07 15:00   ` dan
  2024-07-09  2:29     ` Maxim Cournoyer
  2024-07-07 15:00   ` [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3 dan
  2024-07-09  2:14   ` [bug#71897] [PATCH 1/5] gnu: xdg-desktop-portal: Update to 1.18.4 Maxim Cournoyer
  4 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-07 15:00 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/telegram.scm (libprisma-for-telegram-desktop): New variable.

Change-Id: I855b463993654a8cad491c7b56c9581b3083f5e4
---
 gnu/packages/telegram.scm | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 26ab27293f..0a48361eb4 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -400,6 +400,18 @@ (define cld3-for-telegram-desktop
     (base32
      "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
 
+(define libprisma-for-telegram-desktop
+  (origin
+   (method git-fetch)
+   (uri (git-reference
+         (url "https://github.com/desktop-app/libprisma")
+         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
+   (file-name
+    (git-file-name "libprisma-for-telegram-desktop" "5.2.3"))
+   (sha256
+    (base32
+     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
+
 (define cppgir-for-telegram-desktop
   (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
         (revision "0"))
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3.
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
                     ` (2 preceding siblings ...)
  2024-07-07 15:00   ` [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop dan
@ 2024-07-07 15:00   ` dan
  2024-07-09  2:35     ` Maxim Cournoyer
  2024-07-09  2:14   ` [bug#71897] [PATCH 1/5] gnu: xdg-desktop-portal: Update to 1.18.4 Maxim Cournoyer
  4 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-07 15:00 UTC (permalink / raw)
  To: 71897; +Cc: dan, Maxim Cournoyer, Liliana Marie Prikler

* gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New file.
* gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
* gnu/local.mk (dist_patch_DATA): register them.
* gnu/packages/telegram.scm:
(libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to submodule
checkout.
(cmake-helpers-for-telegram-desktop)[origin]: Add patches to unbundle gsl and
cppgir.
(libprisma-for-telegram-desktop): Use %telegram-version.
(telegram-desktop): Update to 5.2.3.
[#:phases]<unpack-additional-sources>: Add libprisma-for-telegram-desktop.
  <patch-gir-ignore-paths>: New phase.
  <use-system-xdg-desktop-portal>: New phase.
[native-inputs]: Add xdg-desktop-portal.
[inputs]: Add boost, cppgir-for-telegram-desktop, expected-lite and
gobject-introspection.

Change-Id: I78df3434a2cd04afc54107b7fecd5e5a8df85564
---
 gnu/local.mk                                  |  2 +
 .../telegram-desktop-unbundle-cppgir.patch    | 95 +++++++++++++++++++
 .../telegram-desktop-unbundle-gsl.patch       | 31 ++++++
 gnu/packages/telegram.scm                     | 90 +++++++++++-------
 4 files changed, 186 insertions(+), 32 deletions(-)
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
 create mode 100644 gnu/packages/patches/telegram-desktop-unbundle-gsl.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index bb53b08b8e..396cd72fcf 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2135,6 +2135,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/texinfo-headings-single.patch		\
   %D%/packages/patches/texinfo-5-perl-compat.patch		\
   %D%/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-cppgir.patch   \
+  %D%/packages/patches/telegram-desktop-unbundle-gsl.patch      \
   %D%/packages/patches/telegram-purple-adjust-test.patch	\
   %D%/packages/patches/teuchos-remove-duplicate-using.patch	\
   %D%/packages/patches/texi2html-document-encoding.patch	\
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
new file mode 100644
index 0000000000..a24dbe25bb
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch
@@ -0,0 +1,95 @@
+From a5c42e07ae223d440ff11347e0cf1fd58fd383df Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 1/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/CMakeLists.txt        | 4 +++-
+ external/glib/generate_cppgir.cmake | 7 ++++++-
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/external/glib/CMakeLists.txt b/external/glib/CMakeLists.txt
+index 3c6fe4be..c862705f 100644
+--- a/external/glib/CMakeLists.txt
++++ b/external/glib/CMakeLists.txt
+@@ -13,9 +13,11 @@ function(add_cppgir) # isolate scope
+     set(BUILD_EXAMPLES OFF)
+     add_subdirectory(cppgir EXCLUDE_FROM_ALL)
+ endfunction()
+-add_cppgir()
+ 
+ include(generate_cppgir.cmake)
++if (NOT CppGir_FOUND)
++    add_cppgir()
++endif()
+ generate_cppgir(external_glib Gio-2.0)
+ 
+ find_package(PkgConfig REQUIRED)
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index c15d3f9e..9b0a5ac8 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -4,6 +4,8 @@
+ # For license and copyright information please follow this link:
+ # https://github.com/desktop-app/legal/blob/master/LEGAL
+ 
++find_package(CppGir 2.0)
++
+ function(generate_cppgir target_name gir)
+     set(cppgir_loc ${cmake_helpers_loc}/external/glib/cppgir)
+ 
+@@ -17,6 +19,9 @@ function(generate_cppgir target_name gir)
+         ${cppgir_loc}/data/cppgir.ignore
+         ${cppgir_loc}/data/cppgir_unix.ignore
+     )
++    if (CppGir_FOUND)
++        set(ignore_files)  # rely on default ignore list
++    endif()
+ 
+     set(gir_path)
+     if (IS_ABSOLUTE "${gir}")
+@@ -33,7 +38,7 @@ function(generate_cppgir target_name gir)
+         --class
+         --class-full
+         --expected
+-        --ignore
++        "$<$<BOOL:${ignore_files}>:--ignore>"
+         "$<JOIN:${ignore_files},:>"
+         --output
+         ${gen_dst}
+
+From eed39522952c15f448c54290454806dd011c4996 Mon Sep 17 00:00:00 2001
+From: Nicholas Guriev <nicholas@guriev.su>
+Date: Sat, 26 Aug 2023 18:23:53 +0300
+Subject: [PATCH 2/2] Look for system-wide cppgir before fallback to the
+ bundled copy
+
+Closes: #282
+---
+ external/glib/generate_cppgir.cmake | 11 ++++++-----
+ 1 file changed, 6 insertions(+), 5 deletions(-)
+
+diff --git a/external/glib/generate_cppgir.cmake b/external/glib/generate_cppgir.cmake
+index 9b0a5ac8..2ad82277 100644
+--- a/external/glib/generate_cppgir.cmake
++++ b/external/glib/generate_cppgir.cmake
+@@ -15,11 +15,12 @@ function(generate_cppgir target_name gir)
+ 
+     set(gen_timestamp ${gen_dst}/${target_name}_cppgir.timestamp)
+ 
+-    set(ignore_files
+-        ${cppgir_loc}/data/cppgir.ignore
+-        ${cppgir_loc}/data/cppgir_unix.ignore
+-    )
+-    if (CppGir_FOUND)
++    if (NOT CppGir_FOUND)
++        set(ignore_files
++            ${cppgir_loc}/data/cppgir.ignore
++            ${cppgir_loc}/data/cppgir_unix.ignore
++        )
++    else()
+         set(ignore_files)  # rely on default ignore list
+     endif()
+ 
diff --git a/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
new file mode 100644
index 0000000000..f89d326a5c
--- /dev/null
+++ b/gnu/packages/patches/telegram-desktop-unbundle-gsl.patch
@@ -0,0 +1,31 @@
+From a3ac6df0441b4caca28b1df87febc420e18942ce Mon Sep 17 00:00:00 2001
+From: Zephyr Lykos <git@mochaa.ws>
+Date: Mon, 23 Oct 2023 15:55:24 +0800
+Subject: [PATCH] Revert "Force usage of GSL fork because of a libstdc++ bug."
+
+This reverts commit 982546b169df3d479e6511425870327559b38a89.
+<https://github.com/microsoft/GSL/commit/e64c97fc2cfc11992098bb38eda932de275e3f4d>
+---
+ external/gsl/CMakeLists.txt | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/external/gsl/CMakeLists.txt b/external/gsl/CMakeLists.txt
+index 8eaf19c5..344f9488 100644
+--- a/external/gsl/CMakeLists.txt
++++ b/external/gsl/CMakeLists.txt
+@@ -7,7 +7,6 @@
+ add_library(external_gsl INTERFACE IMPORTED GLOBAL)
+ add_library(desktop-app::external_gsl ALIAS external_gsl)
+ 
+-#[[
+ if (DESKTOP_APP_USE_PACKAGED)
+     if (DESKTOP_APP_USE_PACKAGED_LAZY)
+         find_package(Microsoft.GSL 4.0.0 QUIET)
+@@ -20,7 +19,6 @@ if (DESKTOP_APP_USE_PACKAGED)
+         return()
+     endif()
+ endif()
+-]]
+ 
+ # https://gitlab.kitware.com/cmake/cmake/-/issues/25222
+ if (NOT EXISTS ${third_party_loc}/GSL/include)
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index 0a48361eb4..f4bba8cae9 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -5,6 +5,7 @@
 ;;; Copyright © 2023 Lu Hui <luhux76@gmail.com>
 ;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
 ;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2024 dan <i@dan.games>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,6 +29,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages assembly)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
   #:use-module (gnu packages cmake)
   #:use-module (gnu packages compression)
@@ -54,6 +56,7 @@ (define-module (gnu packages telegram)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages protobuf)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages python)
@@ -82,11 +85,11 @@ (define-module (gnu packages telegram)
   #:use-module (guix build-system python)
   #:use-module (guix build-system qt))
 
-(define %telegram-version "4.8.1")
+(define %telegram-version "5.2.3")
 
 (define libyuv-for-telegram-desktop
-  (let ((commit "77c2121f7e6b8e694d6e908bbbe9be24214097da")
-        (revision "2439"))
+  (let ((commit "04821d1e7d60845525e8db55c7bcd41ef5be9406")
+        (revision "2440"))
     (origin
       (method git-fetch)
       (uri (git-reference
@@ -97,67 +100,72 @@ (define libyuv-for-telegram-desktop
                   (git-version "0" revision commit)))
       (sha256
        (base32
-        "1b4k8yskr9ffl5k8s9i0af1gn1pavsfixla26vh8bij69rdr7f9c")))))
+        "1fsvc0f8mckrdzys8lnlnbw6676mjamm6p3ghr2h9liqfa83s6wg")))))
 
 (define cmake-helpers-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/cmake_helpers.git")
-          (commit "6ab5543b3dd1e40979d258e46d03376931b6c37b")))
+          (commit "4a4bc4cd34b3ade038541a2b8b2c79f05393d67b")))
     (file-name
      (git-file-name "cmake-helpers-for-telegram-desktop" %telegram-version))
+    (patches
+     ;; https://github.com/desktop-app/cmake_helpers/pull/320
+     ;; https://github.com/desktop-app/cmake_helpers/pull/305
+     (search-patches "telegram-desktop-unbundle-gsl.patch"
+                     "telegram-desktop-unbundle-cppgir.patch"))
     (sha256
      (base32
-      "0y96mvzs113zh8bdw1h3i6l0pgwg93rigrday8kfdg4magz686k6"))))
+      "129m2wy3jyrcngsln46k7cl00jjg30kj9kdfil7aq9c23z3iqvm8"))))
 
 (define codegen-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/codegen.git")
-          (commit "1a969faa0afb29d53af03e530775eccdfb8433f1")))
+          (commit "0af136124083369073b8fdaf45f0816fd2b10bad")))
     (file-name
      (git-file-name "codegen-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1xmw8dfm51p5g20rlmzqnr72a14ngyxwq09an8clf1v5s6mmwvak"))))
+      "057bwn9smrgnyfb1vraf50ihbkhjc4d72msl7vnbqc4h5sg8dav9"))))
 
 (define lib-base-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_base.git")
-          (commit "fd9adb30ee906ea02c125eaa58fcfae773fdc677")))
+          (commit "1a50fd2300da3198e751a22bf728d33822180e15")))
     (file-name
      (git-file-name "lib-base-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1m760mcfvgzia53nrs6wvjn353jvzlzln7c9fkx2dhpkigiynz83"))))
+      "1hyhqz6mwdmcs6wcglz3hwlzl1n04lfi22d3n75ad40qfc9kh3ci"))))
 
 (define lib-crl-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_crl.git")
-          (commit "3d7e1e1f1321c3defd21c01882d674e485ecd8df")))
+          (commit "078006d29af0002e6cd8c61a405cdeaf65b37142")))
     (file-name
      (git-file-name "lib-crl-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "06mzafnjpfr5ih297dh7bxm6bgpg0wy0gv2r2732n5szyrg9sdl6"))))
+      "18n88ghj3akpkxvllrh1rs19vd0d3xw87hd67qphr30b6ggqs9fd"))))
 
 (define lib-lottie-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_lottie.git")
-          (commit "3e9c2f1026e4b5aa3202fca4cc67ece36c7cebb2")))
+          (commit "1a700e5a0d7c3e2f617530354ff2a47c5c72bb4a")))
     (file-name
      (git-file-name "lib-lottie-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l57ibfij9xm4ww4s9cc63q1x8xzpc6ablwaji1krrn3xxksqdd4"))))
+      "18w35sz6k3wcv07v0szx3avpfdl0rjby6yqm1fzmx7fqw2jn6wpl"))))
 
 (define lib-qr-for-telegram-desktop
   (origin
@@ -188,24 +196,24 @@ (define lib-spellcheck-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_spellcheck.git")
-          (commit "ae89fefd239ecc47d4dab7ba29f9e230376a57d3")))
+          (commit "0b7622ff38778e9cd03d3997de59351973480a1f")))
     (file-name
      (git-file-name "lib-spellcheck-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "147xbbcza5q4wcdipk5jplajzkc48971kg2s7qv5jlz33sxkw1lq"))))
+      "0s9fjxpxxvj1xgzg3sfw6079blgmdvbb5cy6wb921sqaqwf52j6x"))))
 
 (define lib-storage-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_storage.git")
-          (commit "839609369d04615475cb1518636de3619106a917")))
+          (commit "0971b69ca90f1697ef81276d9820dcd6d26de4ac")))
     (file-name
      (git-file-name "lib-storage-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1l26h2fmqp9dcpr6pfvdd5sjb68j7yh0ms2lnr8na7jf5xqmkwwm"))))
+      "0ihbh1ajns0sf42h9992hnawwjr1n439sgb0g4zirn2bj5i1zbdv"))))
 
 (define lib-tl-for-telegram-desktop
   (origin
@@ -224,52 +232,52 @@ (define lib-ui-for-telegram-desktop
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_ui.git")
-          (commit "37531086ec21a8569deddedb11b402f8a3157b90")))
+          (commit "96be2a6b72f0405a9c01407148303fba2dab101c")))
     (file-name
      (git-file-name "lib-ui-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0l4baalwdiwcwzn3wgrbyiaryi70lswillbpkzcjpavaa2pjg6b0"))))
+      "0y989q2xs5hjm7dg7rpgyqlalf8sjklhg0v26nnzfgabl8248bgy"))))
 
 (define lib-webrtc-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webrtc.git")
-          (commit "b68a95ad4d1ae9a1827671100a7fd76cbe448c3f")))
+          (commit "eb9496540356945e2c9fb700bcfa51444fd36f41")))
     (file-name
      (git-file-name "lib-webrtc-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "1c8jwdnn26n13yp0rp0l71q6xlxa6wp3cspbm3pnghw964jwgp3z"))))
+      "0nqlzb02b39ywjmazx30y43nalvc3ypkqjh5zvs35gnvm9x2hy43"))))
 
 (define lib-webview-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/desktop-app/lib_webview.git")
-          (commit "f632fc84cbc62ae8abbbd05f81d472757a337c11")))
+          (commit "363db4e49a0b78e5dd08bd922e09cf8810318c09")))
     (file-name
      (git-file-name "lib-webview-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "0idsfkxq7l9kgyrhifys5l4jkhvbyxkgkp0qdq9218h7g0ldw84i"))))
+      "1l84rlm4cb56q87k5036n4c0g49f6a5qlhrjc5wn57s56wphvhqn"))))
 
 (define tgcalls-for-telegram-desktop
   (origin
     (method git-fetch)
     (uri (git-reference
           (url "https://github.com/TelegramMessenger/tgcalls.git")
-          (commit "2e2797648aac2588e7fe479c2e8b4455ec65c5e6")))
+          (commit "b9fa8b84d8abe741183f157218ac038c596a54a5")))
     (file-name
      (git-file-name "tgcalls-for-telegram-desktop" %telegram-version))
     (sha256
      (base32
-      "193m2gkvipijqbfd6a8mhg9nd63wlnshzgspk3pip57vk21l709z"))))
+      "1swni7xw5l0q376b6rnf9h93arzjqm9rkv7g6hz67742lf9a0x9z"))))
 
 (define-public webrtc-for-telegram-desktop
-  (let ((commit "0532942ac6176a66ef184fb728a4cbb02958fc0b")
-        (revision "389"))
+  (let ((commit "c9cc4390ab951f2cbc103ff783a11f398b27660b")
+        (revision "399"))
     (hidden-package
      (package
        (name "webrtc-for-telegram-desktop")
@@ -285,7 +293,7 @@ (define-public webrtc-for-telegram-desktop
           (file-name
            (git-file-name name version))
           (sha256
-           (base32 "0fary99yl1ddk5zjpfy0pyb5brd268j41plcnvv9qjyf0wj9hf2k"))
+           (base32 "0x2hjliiapb9kacbg8fwkz7g09c9k8dc77xxycjh5kmm1fc2i6dd"))
           (patches
            (search-patches
             ;; https://github.com/desktop-app/tg_owt/pull/123
@@ -407,7 +415,7 @@ (define libprisma-for-telegram-desktop
          (url "https://github.com/desktop-app/libprisma")
          (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
    (file-name
-    (git-file-name "libprisma-for-telegram-desktop" "5.2.3"))
+    (git-file-name "libprisma-for-telegram-desktop" %telegram-version))
    (sha256
     (base32
      "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
@@ -456,7 +464,7 @@ (define-public telegram-desktop
        (file-name
         (git-file-name name version))
        (sha256
-        (base32 "0g47ffamh1csp79yzkv28v3qjkhjacj0c7pjf53n1ks80j5hc2j0"))
+        (base32 "1jwm8irjx5yfzd9a94f5dy4y9v5as0an8m83hlal6czlqbi5v4sm"))
        (patches
         (search-patches
          ;; https://github.com/telegramdesktop/tdesktop/pull/24126
@@ -522,7 +530,20 @@ (define-public telegram-desktop
                       ("Telegram/lib_webrtc" #$lib-webrtc-for-telegram-desktop)
                       ("Telegram/lib_webview" #$lib-webview-for-telegram-desktop)
                       ("Telegram/ThirdParty/cld3" #$cld3-for-telegram-desktop)
+                      ("Telegram/ThirdParty/libprisma" #$libprisma-for-telegram-desktop)
                       ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)))))
+               (add-after 'unpack-additional-sources 'patch-gir-ignore-paths
+                 (lambda _
+                   (substitute* "cmake/external/glib/generate_cppgir.cmake"
+                     (("\\$\\{cmake_helpers_loc\\}/external/glib/cppgir/data")
+                      (string-append #$(this-package-input "cppgir") "/share/cppgir")))))
+               (add-after 'unpack-additional-sources 'use-system-xdg-desktop-portal
+                 (lambda _
+                   (substitute* (list "Telegram/CMakeLists.txt"
+                                      "Telegram/lib_base/CMakeLists.txt")
+                     (("\\$\\{third_party_loc\\}/xdg-desktop-portal/data")
+                      (string-append #$(this-package-native-input "xdg-desktop-portal")
+                                     "/share/dbus-1/interfaces")))))
                (add-after 'install 'glib-or-gtk-compile-schemas
                  (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
                (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
@@ -531,17 +552,22 @@ (define-public telegram-desktop
      (list `(,glib "bin")
            `(,gtk+ "bin")
            pkg-config
-           python-wrapper))
+           python-wrapper
+           xdg-desktop-portal))
     (inputs
      (list abseil-cpp-cxxstd17
            alsa-lib
+           boost
            c++-gsl
            crc32c
+           cppgir-for-telegram-desktop
+           expected-lite
            fcitx-qt5
            fcitx5-qt
            ffmpeg
            glib
            glibmm-2.76
+           gobject-introspection
            gtk+
            hime
            hunspell
-- 
2.41.0





^ permalink raw reply related	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 1/5] gnu: xdg-desktop-portal: Update to 1.18.4.
  2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
                     ` (3 preceding siblings ...)
  2024-07-07 15:00   ` [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3 dan
@ 2024-07-09  2:14   ` Maxim Cournoyer
  4 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09  2:14 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

dan <i@dan.games> writes:

> * gnu/packages/patches/xdg-desktop-portal-disable-portal-tests.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/freedesktop.scm (xdg-desktop-portal): Update to 1.18.4.
> [patches]: Disable portal tests.
> [native-inputs]: Remove autoconf, automake, libtool and which.  Add python,
> python-dbusmock, python-pytest and python-pytest-xdist.
> [inputs]: Add bubblewrap.
> [phases]<#:configure-flags>: Update flags to meson options.
>
> Change-Id: Ic9876565e9119443fedd082273be4f372ebce1d4

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style.
  2024-07-07 15:00   ` [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style dan
@ 2024-07-09  2:14     ` Maxim Cournoyer
  0 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09  2:14 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

dan <i@dan.games> writes:

> * gnu/packages/freedesktop.scm (xdg-desktop-portal): Update input style.
>
> Change-Id: Iec0630cd945dfcd4db67af30211cbfd4d058766d

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop.
  2024-07-07 15:00   ` [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop dan
@ 2024-07-09  2:25     ` Maxim Cournoyer
  2024-07-09  3:07       ` dan
  0 siblings, 1 reply; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09  2:25 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

Hi Dan,

dan <i@dan.games> writes:

> * gnu/packages/telegram.scm (cppgir-for-telegram-desktop): New variable.
>
> Change-Id: I4bb37f9ebc6cfd711ad83f29cd95bc72c0d3bf45
> ---
>  gnu/packages/telegram.scm | 29 +++++++++++++++++++++++++++++
>  1 file changed, 29 insertions(+)
>
> diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
> index 358374a5bb..26ab27293f 100644
> --- a/gnu/packages/telegram.scm
> +++ b/gnu/packages/telegram.scm
> @@ -400,6 +400,35 @@ (define cld3-for-telegram-desktop
>      (base32
>       "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
>  
> +(define cppgir-for-telegram-desktop
> +  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
> +        (revision "0"))
> +    (package
> +      (name "cppgir-for-telegram-desktop")
> +      (version (git-version "2.0" revision commit))
> +      (source
> +       (origin
> +         (method git-fetch)
> +         (uri
> +          (git-reference
> +           (url "https://gitlab.com/mnauw/cppgir")
> +           (commit commit)))
> +         (file-name (git-file-name name version))
> +         (sha256
> +          (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
> +      (build-system cmake-build-system)
> +      (arguments
> +       (list
> +        #:configure-flags
> +        #~(list "-DINTERNAL_EXPECTED=OFF")))
> +      (inputs (list boost fmt expected-lite))
> +      (home-page "https://gitlab.com/mnauw/cppgir")
> +      (synopsis "GObject introspection C++ binding wrapper generator")
> +      (description "cppgir processes .gir files derived from GObject
> +introspection annotations into a set of C++ files defining suitable
> +namespaces, classes and other types that together form a C++ binding.")
> +      (license license:expat))))

That'd be reasonable as a new package if it was very tightly developed
with telegram, but it doesn't seem to be the case.  I'd prefer having it
in (gnu packages glib).

What is the "compilation error" you had mentioned when using version
2.0?  Does the cppgir release fails to compile itself, or is it
telegram that then doesn't build using that one?

If the later, I'd define, in (gnu packages glib)

--8<---------------cut here---------------start------------->8---
(define-public cppgir
 [...]
 "original package at version 2.0")

(define-public cppgir-for-telegram-desktop
 (package
  (inherit cppgir)
  (source ... (using latest or telegram-specific (?) commit))))
--8<---------------cut here---------------end--------------->8---

Sorry for the back and forth, we're narrowing down on the perfect
submission; keep it up.  Don't forget to use -v5 for your next patches
submission :-), and ensure 'guix lint' is happy with all the packages.

Thank you for your efforts!  Keep it up.

-- 
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop.
  2024-07-07 15:00   ` [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop dan
@ 2024-07-09  2:29     ` Maxim Cournoyer
       [not found]       ` <a1177ffa-90ba-483e-9c60-2aebf6e5dc4c@dan.games>
  0 siblings, 1 reply; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09  2:29 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

Hi,

dan <i@dan.games> writes:

> * gnu/packages/telegram.scm (libprisma-for-telegram-desktop): New variable.
>
> Change-Id: I855b463993654a8cad491c7b56c9581b3083f5e4
> ---
>  gnu/packages/telegram.scm | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
> index 26ab27293f..0a48361eb4 100644
> --- a/gnu/packages/telegram.scm
> +++ b/gnu/packages/telegram.scm
> @@ -400,6 +400,18 @@ (define cld3-for-telegram-desktop
>      (base32
>       "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
>  
> +(define libprisma-for-telegram-desktop
> +  (origin
> +   (method git-fetch)
> +   (uri (git-reference
> +         (url "https://github.com/desktop-app/libprisma")
> +         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
> +   (file-name
> +    (git-file-name "libprisma-for-telegram-desktop" "5.2.3"))
> +   (sha256
> +    (base32
> +     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
> +

So this is built as part of telegram?  If this doesn't have any proper
build system to be built separately and linked, or if telegram lacks
such a feature in its own build system (I like to report such feature
request for that to upstream myself), another perhaps more maintainable
strategy would be to use recursive? #t on the git-reference to clone
these, and delete in a source snippet the submodules we don't want to
have.

Otherwise, OK!

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3.
  2024-07-07 15:00   ` [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3 dan
@ 2024-07-09  2:35     ` Maxim Cournoyer
  0 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09  2:35 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

Hello!

dan <i@dan.games> writes:

> * gnu/packages/patches/telegram-desktop-unbundle-cppgir.patch: New file.
> * gnu/packages/patches/telegram-desktop-unbundle-gsl.patch: New file.
> * gnu/local.mk (dist_patch_DATA): register them.

Nitpick: "Register", capitalized.

> * gnu/packages/telegram.scm:
> (libyuv-for-telegram-desktop, cmake-helpers-for-telegram-desktop,
> codegen-for-telegram-desktop, lib-base-for-telegram-desktop,
> lib-crl-for-telegram-desktop, lib-lottie-for-telegram-desktop,
> lib-qr-for-telegram-desktop, lib-storage-for-telegram-desktop,
> lib-tl-for-telegram-desktop, lib-webrtc-for-telegram-desktop,
> tgcalls-for-telegram-desktop, webrtc-for-telegram-desktop): Bump to submodule
> checkout.
> (cmake-helpers-for-telegram-desktop)[origin]: Add patches to unbundle gsl and
> cppgir.
> (libprisma-for-telegram-desktop): Use %telegram-version.
> (telegram-desktop): Update to 5.2.3.
> [#:phases]<unpack-additional-sources>: Add libprisma-for-telegram-desktop.
>   <patch-gir-ignore-paths>: New phase.
>   <use-system-xdg-desktop-portal>: New phase.
> [native-inputs]: Add xdg-desktop-portal.

Nitpick: GNU ChangeLog doesn't uses hanging indents.

> [inputs]: Add boost, cppgir-for-telegram-desktop, expected-lite and
> gobject-introspection.

[...]

> diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm

[...]

> -(define %telegram-version "4.8.1")
> +(define %telegram-version "5.2.3")

[...]

>          (search-patches
>           ;; https://github.com/telegramdesktop/tdesktop/pull/24126
> @@ -522,7 +530,20 @@ (define-public telegram-desktop
>                        ("Telegram/lib_webrtc" #$lib-webrtc-for-telegram-desktop)
>                        ("Telegram/lib_webview" #$lib-webview-for-telegram-desktop)
>                        ("Telegram/ThirdParty/cld3" #$cld3-for-telegram-desktop)
> +                      ("Telegram/ThirdParty/libprisma" #$libprisma-for-telegram-desktop)
>                        ("Telegram/ThirdParty/tgcalls" #$tgcalls-for-telegram-desktop)))))
> +               (add-after 'unpack-additional-sources 'patch-gir-ignore-paths
> +                 (lambda _
> +                   (substitute* "cmake/external/glib/generate_cppgir.cmake"
> +                     (("\\$\\{cmake_helpers_loc\\}/external/glib/cppgir/data")
> +                      (string-append #$(this-package-input "cppgir") "/share/cppgir")))))
> +               (add-after 'unpack-additional-sources 'use-system-xdg-desktop-portal
> +                 (lambda _
> +                   (substitute* (list "Telegram/CMakeLists.txt"
> +                                      "Telegram/lib_base/CMakeLists.txt")
> +                     (("\\$\\{third_party_loc\\}/xdg-desktop-portal/data")
> +                      (string-append #$(this-package-native-input "xdg-desktop-portal")
> +                                     "/share/dbus-1/interfaces")))))
>                 (add-after 'install 'glib-or-gtk-compile-schemas
>                   (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
>                 (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap
> @@ -531,17 +552,22 @@ (define-public telegram-desktop
>       (list `(,glib "bin")
>             `(,gtk+ "bin")
>             pkg-config
> -           python-wrapper))
> +           python-wrapper
> +           xdg-desktop-portal))
>      (inputs
>       (list abseil-cpp-cxxstd17
>             alsa-lib
> +           boost
>             c++-gsl
>             crc32c
> +           cppgir-for-telegram-desktop

Nitpick: should be listed alphabetically before the crc32c input.

> +           expected-lite
>             fcitx-qt5
>             fcitx5-qt
>             ffmpeg
>             glib
>             glibmm-2.76
> +           gobject-introspection
>             gtk+
>             hime
>             hunspell

Otherwise LGTM!  Feel free to adjust the little things above in a v5.

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop.
  2024-07-09  2:25     ` Maxim Cournoyer
@ 2024-07-09  3:07       ` dan
  2024-07-10  1:31         ` Maxim Cournoyer
  0 siblings, 1 reply; 27+ messages in thread
From: dan @ 2024-07-09  3:07 UTC (permalink / raw)
  To: Maxim Cournoyer; +Cc: Liliana Marie Prikler, 71897

On 7/9/2024 10:25 AM, Maxim Cournoyer wrote:
> Hi Dan,
> 
> dan <i@dan.games> writes:
> 
>> * gnu/packages/telegram.scm (cppgir-for-telegram-desktop): New variable.
>>
>> Change-Id: I4bb37f9ebc6cfd711ad83f29cd95bc72c0d3bf45
>> ---
>>   gnu/packages/telegram.scm | 29 +++++++++++++++++++++++++++++
>>   1 file changed, 29 insertions(+)
>>
>> diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
>> index 358374a5bb..26ab27293f 100644
>> --- a/gnu/packages/telegram.scm
>> +++ b/gnu/packages/telegram.scm
>> @@ -400,6 +400,35 @@ (define cld3-for-telegram-desktop
>>       (base32
>>        "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
>>   
>> +(define cppgir-for-telegram-desktop
>> +  (let ((commit "9c4f5820d94d62ab451501f016bfea97156518f4")
>> +        (revision "0"))
>> +    (package
>> +      (name "cppgir-for-telegram-desktop")
>> +      (version (git-version "2.0" revision commit))
>> +      (source
>> +       (origin
>> +         (method git-fetch)
>> +         (uri
>> +          (git-reference
>> +           (url "https://gitlab.com/mnauw/cppgir")
>> +           (commit commit)))
>> +         (file-name (git-file-name name version))
>> +         (sha256
>> +          (base32 "1fa9nf4yljfarihaqj5kd98yysrky7q316mh6l5b1rq39ga15k9b"))))
>> +      (build-system cmake-build-system)
>> +      (arguments
>> +       (list
>> +        #:configure-flags
>> +        #~(list "-DINTERNAL_EXPECTED=OFF")))
>> +      (inputs (list boost fmt expected-lite))
>> +      (home-page "https://gitlab.com/mnauw/cppgir")
>> +      (synopsis "GObject introspection C++ binding wrapper generator")
>> +      (description "cppgir processes .gir files derived from GObject
>> +introspection annotations into a set of C++ files defining suitable
>> +namespaces, classes and other types that together form a C++ binding.")
>> +      (license license:expat))))
> 
> That'd be reasonable as a new package if it was very tightly developed
> with telegram, but it doesn't seem to be the case.  I'd prefer having it
> in (gnu packages glib).
> 
> What is the "compilation error" you had mentioned when using version
> 2.0?  Does the cppgir release fails to compile itself, or is it
> telegram that then doesn't build using that one?

Sorry about not directly replying the previous message.  It's the 
latter, telegram-desktop fails to compile with cppgir@2.0.

> 
> If the later, I'd define, in (gnu packages glib)
> 
> --8<---------------cut here---------------start------------->8---
> (define-public cppgir
>   [...]
>   "original package at version 2.0")
> 
> (define-public cppgir-for-telegram-desktop
>   (package
>    (inherit cppgir)
>    (source ... (using latest or telegram-specific (?) commit))))
> --8<---------------cut here---------------end--------------->8---

For the lower package definition, I put it in (gnu packages glib) or 
(gnu packages telegram)?  I think it should be the latter one?

> 
> Sorry for the back and forth, we're narrowing down on the perfect
> submission; keep it up.  Don't forget to use -v5 for your next patches
> submission :-), and ensure 'guix lint' is happy with all the packages.
> 
> Thank you for your efforts!  Keep it up.
> 

Sorry about forgetting to add revision number to the patch series. 
Although we have mumi right now, there are still a bit of manual works 
to be done before sending patches.  I constantly forget some of them.

-- 
dan





^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop.
       [not found]       ` <a1177ffa-90ba-483e-9c60-2aebf6e5dc4c@dan.games>
@ 2024-07-09 11:54         ` Maxim Cournoyer
  0 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-09 11:54 UTC (permalink / raw)
  To: dan; +Cc: 71897

Hi Dan,

dan <i@dan.games> writes:

> Hi Maxim,
>
> On 7/9/2024 10:29 AM, Maxim Cournoyer wrote:
>> Hi,
>> dan <i@dan.games> writes:
>> 
>>> * gnu/packages/telegram.scm (libprisma-for-telegram-desktop): New variable.
>>>
>>> Change-Id: I855b463993654a8cad491c7b56c9581b3083f5e4
>>> ---
>>>   gnu/packages/telegram.scm | 12 ++++++++++++
>>>   1 file changed, 12 insertions(+)
>>>
>>> diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
>>> index 26ab27293f..0a48361eb4 100644
>>> --- a/gnu/packages/telegram.scm
>>> +++ b/gnu/packages/telegram.scm
>>> @@ -400,6 +400,18 @@ (define cld3-for-telegram-desktop
>>>       (base32
>>>        "0ayrrhfdwrf4260h9fsirkhhfrcvc3qqnh6h9wj3ixij2lq0wwqb"))))
>>>   +(define libprisma-for-telegram-desktop
>>> +  (origin
>>> +   (method git-fetch)
>>> +   (uri (git-reference
>>> +         (url "https://github.com/desktop-app/libprisma")
>>> +         (commit "23b0d70f9709da9b38561d5706891a134d18df76")))
>>> +   (file-name
>>> +    (git-file-name "libprisma-for-telegram-desktop" "5.2.3"))
>>> +   (sha256
>>> +    (base32
>>> +     "0fg4x4ikj7f3706bmfvkwq4smxc98qr3cgpm25w48n4ys6wfgadg"))))
>>> +
>> So this is built as part of telegram?  If this doesn't have any
>> proper
>> build system to be built separately and linked, or if telegram lacks
>> such a feature in its own build system (I like to report such feature
>> request for that to upstream myself), another perhaps more maintainable
>> strategy would be to use recursive? #t on the git-reference to clone
>> these, and delete in a source snippet the submodules we don't want to
>> have.
>
> Most of the dependencies of telegram-desktop are packaged this way, so
> here I'm more or less following the convention. de If we decide to use
> recursive? #t, I think it's better to fully revamp the packaging of
> telegram-desktop.  libprisma itself doesn't have a build system, and I
> think it's only used in telegram-desktop.

OK, fair enough.  Thanks for the explanation (I also noticed the tens of
git submodules as source variables in a later commit).

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

* [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop.
  2024-07-09  3:07       ` dan
@ 2024-07-10  1:31         ` Maxim Cournoyer
  0 siblings, 0 replies; 27+ messages in thread
From: Maxim Cournoyer @ 2024-07-10  1:31 UTC (permalink / raw)
  To: dan; +Cc: Liliana Marie Prikler, 71897

Hi Dan,

dan <i@dan.games> writes:

> On 7/9/2024 10:25 AM, Maxim Cournoyer wrote:
>> Hi Dan,
>> dan <i@dan.games> writes:
>> 
>>> * gnu/packages/telegram.scm (cppgir-for-telegram-desktop): New variable.

[...]

>> That'd be reasonable as a new package if it was very tightly
>> developed
>> with telegram, but it doesn't seem to be the case.  I'd prefer having it
>> in (gnu packages glib).
>> What is the "compilation error" you had mentioned when using version
>> 2.0?  Does the cppgir release fails to compile itself, or is it
>> telegram that then doesn't build using that one?
>
> Sorry about not directly replying the previous message.  It's the
> latter, telegram-desktop fails to compile with cppgir@2.0.
>
>> If the later, I'd define, in (gnu packages glib)
>> --8<---------------cut here---------------start------------->8---
>> (define-public cppgir
>>   [...]
>>   "original package at version 2.0")
>> (define-public cppgir-for-telegram-desktop
>>   (package
>>    (inherit cppgir)
>>    (source ... (using latest or telegram-specific (?) commit))))
>> --8<---------------cut here---------------end--------------->8---
>
> For the lower package definition, I put it in (gnu packages glib) or
> (gnu packages telegram)?  I think it should be the latter one?

It's a bit counter-intuitive, but it has to be in the former, to avoid
cyclic module dependencies caused by top level variables referring one
another in different modules (that's fine for delayed fields, but the
inherit field is not delayed).  For more information on this topic, see
(info 'guix (Cyclic Module Dependencies)').

>> Sorry for the back and forth, we're narrowing down on the perfect
>> submission; keep it up.  Don't forget to use -v5 for your next patches
>> submission :-), and ensure 'guix lint' is happy with all the packages.
>> Thank you for your efforts!  Keep it up.
>> 
>
> Sorry about forgetting to add revision number to the patch
> series. Although we have mumi right now, there are still a bit of
> manual works to be done before sending patches.  I constantly forget
> some of them.

I do like the ability of patman of recording where my submission
metadata as git trailers in the top commit.  Mumi could in theory avoid
the need for automatically using -v though, since it can look at the
past messages sent to an issue and could infer which revision should be
used, in theory.

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2024-07-10  1:33 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-02  5:18 [bug#71897] [PATCH 1/2] gnu: Add cppgir dan
2024-07-02  5:26 ` [bug#71897] [PATCH 2/2] gnu: telegram-desktop: Update to 5.1.7 dan
2024-07-02 11:09 ` [bug#71897] [PATCH 1/2] gnu: Add cppgir Maxim Cournoyer
2024-07-02 13:17 ` [bug#71897] [PATCH 1/3] " dan
2024-07-02 13:17   ` [bug#71897] [PATCH 2/3] gnu: xdg-desktop-portal: Update to 1.18.4 dan
2024-07-02 13:17   ` [bug#71897] [PATCH 3/3] gnu: telegram-desktop: Update to 5.2.1 dan
2024-07-02 16:58   ` [bug#71897] [PATCH 1/3] gnu: Add cppgir Liliana Marie Prikler
2024-07-03 13:22 ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 dan
2024-07-03 13:22   ` [bug#71897] [PATCH v3 2/2] gnu: telegram-desktop: Update to 5.2.2 dan
2024-07-03 17:06     ` Liliana Marie Prikler
2024-07-03 17:18       ` dan
2024-07-03 17:22         ` dan
2024-07-03 18:21           ` Liliana Marie Prikler
2024-07-03 17:01   ` [bug#71897] [PATCH v3 1/2] gnu: xdg-desktop-portal: Update to 1.18.4 Liliana Marie Prikler
2024-07-07 15:00 ` [bug#71897] [PATCH 1/5] " dan
2024-07-07 15:00   ` [bug#71897] [PATCH 2/5] gnu: xdg-desktop-portal: Update input style dan
2024-07-09  2:14     ` Maxim Cournoyer
2024-07-07 15:00   ` [bug#71897] [PATCH 3/5] gnu: Add cppgir-for-telegram-desktop dan
2024-07-09  2:25     ` Maxim Cournoyer
2024-07-09  3:07       ` dan
2024-07-10  1:31         ` Maxim Cournoyer
2024-07-07 15:00   ` [bug#71897] [PATCH 4/5] gnu: Add libprisma-for-telegram-desktop dan
2024-07-09  2:29     ` Maxim Cournoyer
     [not found]       ` <a1177ffa-90ba-483e-9c60-2aebf6e5dc4c@dan.games>
2024-07-09 11:54         ` Maxim Cournoyer
2024-07-07 15:00   ` [bug#71897] [PATCH 5/5] gnu: telegram-desktop: Update to 5.2.3 dan
2024-07-09  2:35     ` Maxim Cournoyer
2024-07-09  2:14   ` [bug#71897] [PATCH 1/5] gnu: xdg-desktop-portal: Update to 1.18.4 Maxim Cournoyer

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.