summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHilton Chain <hako@ultrarare.space>2022-09-08 08:59:03 +0800
committerGuix Patches Tester <>2022-09-08 02:02:14 +0100
commit2236f8c810cac3bf2caae2647ea7ed8c2c095a11 (patch)
tree9f190de76d52c9926a8f7fc5ed79034be821e0b1
parent215ce321af9d871b2c5501feafcf5dd379de97d7 (diff)
downloadguix-patches-2236f8c810cac3bf2caae2647ea7ed8c2c095a11.tar
guix-patches-2236f8c810cac3bf2caae2647ea7ed8c2c095a11.tar.gz
gnu: telegram-desktop: Update to 4.1.1.
* gnu/packages/telegram.scm (telegram-desktop): Update to 4.1.1. [snippet]: Don't keep SPMediaKeyTap and statusnotifieritem as they'd got removed from upstream. Keep rlottie, libtgvoip and dispatch. [#:configure-flags]: Comment out to default value Use API id from official Snap builds. Enable DESKTOP_APP_USE_PACKAGED_LAZY, which is suitable for default configuration as it'll bundle as many features as possible. [#:phases]: Copy dispatch, fcitx-qt5, fcitx5-qt, hime, nimf, rlottie and libtgvoip. Remove phase patch-cxx-flags, as that string's not there any more. Replace build and install phases with ones that use cmake tools. [native-inputs] Add variable external-sources for managing recursive checkouts. Bump cmake-helpers to source checkout-ed commit. Add ninja and clang-toolchain. [inputs] Add variable external-sources for managing recursive checkouts. Add dispatch, fcitx-qt5, fcitx5-qt, hime, nimf, rlottie, libtgvoip to external-sources. Bump codegen, lib_base, lib_crl, lib_lottie, lib_qr, lib_rpl, lib_spellcheck, lib_storage, lib_tl, lib_ui, lib_waylandshells, lib_webrtc, lib_webview and tgcalls to source checkout-ed commit. Add patch for lib_base to support musl compilation. Style adjustment. [license] Update with source tree changes. * gnu/packages/patches/lib-base-for-telegram-desktop-support-musl.patch: New file. * gnu/local.mk: Add patch.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/lib-base-for-telegram-desktop-support-musl.patch35
-rw-r--r--gnu/packages/telegram.scm735
3 files changed, 446 insertions, 325 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 5cf38c8126..818d7c6713 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1354,6 +1354,7 @@ dist_patch_DATA = \
%D%/packages/patches/julia-tracker-16-compat.patch \
%D%/packages/patches/julia-allow-parallel-build.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
+ %D%/packages/patches/lib-base-for-telegram-desktop-support-musl.patch \
%D%/packages/patches/libffi-3.3-powerpc-fixes.patch \
%D%/packages/patches/libffi-float128-powerpc64le.patch \
%D%/packages/patches/libobjc2-unbundle-robin-map.patch \
diff --git a/gnu/packages/patches/lib-base-for-telegram-desktop-support-musl.patch b/gnu/packages/patches/lib-base-for-telegram-desktop-support-musl.patch
new file mode 100644
index 0000000000..1a3a70286f
--- /dev/null
+++ b/gnu/packages/patches/lib-base-for-telegram-desktop-support-musl.patch
@@ -0,0 +1,35 @@
+Stub out some glibc-specific functions
+
+This allows support for alternative libcs like musl
+
+diff --git a/base/platform/linux/base_info_linux.cpp b/base/platform/linux/base_info_linux.cpp
+index 714d8dc..b70cc23 100644
+--- a/base/platform/linux/base_info_linux.cpp
++++ b/base/platform/linux/base_info_linux.cpp
+@@ -22,7 +22,7 @@
+
+ #include <sys/utsname.h>
+
+-#ifdef Q_OS_LINUX
++#if defined(Q_OS_LINUX) && defined(__GLIBC__)
+ #include <gnu/libc-version.h>
+ #endif // Q_OS_LINUX
+
+@@ -200,7 +200,7 @@ QString AutoUpdateKey() {
+ }
+
+ QString GetLibcName() {
+-#ifdef Q_OS_LINUX
++#if defined(Q_OS_LINUX) && defined(__GLIBC__)
+ return "glibc";
+ #endif // Q_OS_LINUX
+
+@@ -208,7 +208,7 @@ QString GetLibcName() {
+ }
+
+ QString GetLibcVersion() {
+-#ifdef Q_OS_LINUX
++#if defined(Q_OS_LINUX) && defined(__GLIBC__)
+ static const auto result = [&] {
+ const auto version = QString::fromLatin1(gnu_get_libc_version());
+ return QVersionNumber::fromString(version).isNull() ? QString() : version;
diff --git a/gnu/packages/telegram.scm b/gnu/packages/telegram.scm
index bd8b5b31a7..961cd32890 100644
--- a/gnu/packages/telegram.scm
+++ b/gnu/packages/telegram.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
+;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -28,8 +29,10 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages digest)
+ #:use-module (gnu packages enchant)
#:use-module (gnu packages fcitx)
#:use-module (gnu packages fcitx5)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
@@ -42,6 +45,7 @@
#:use-module (gnu packages libevent)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages llvm)
#:use-module (gnu packages lxqt)
#:use-module (gnu packages lua)
#:use-module (gnu packages ninja)
@@ -60,6 +64,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages web)
+ #:use-module (gnu packages webkit)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xorg)
@@ -227,339 +232,419 @@ Telegram project, for its use in telegram desktop client.")
(define-public telegram-desktop
(package
(name "telegram-desktop")
- (version "2.9.3")
- (source
- (origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/telegramdesktop/tdesktop.git")
- (commit
- (string-append "v" version))))
- (file-name
- (git-file-name name version))
- (sha256
- (base32 "0dzf1y3xhqvizg29bd1kya48cjbkq073d2x10ynwcmmx396l4nd8"))
- (modules '((guix build utils)
- (ice-9 ftw)
- (srfi srfi-1)))
- (snippet
- `(begin
- (let ((keep
- '( ;; Not available in Guix.
- "SPMediaKeyTap" "statusnotifieritem" "tgcalls")))
- (with-directory-excursion "Telegram/ThirdParty"
- (for-each delete-file-recursively
- (lset-difference string=?
- (scandir ".")
- (cons* "." ".." keep))))
- #t)))))
+ (version "4.1.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/telegramdesktop/tdesktop")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0zhwaql1fk0nqr1x2lchcswz61x7sb2297qdxiysgqamr0fk9ppn"))
+ (modules '((guix build utils)
+ (ice-9 ftw)
+ (srfi srfi-1)))
+ (snippet #~(begin
+ (let ((keep
+ '(;; Custom fork
+ "rlottie" "libtgvoip"
+ ;; Not available in Guix.
+ "dispatch" "tgcalls")))
+ (with-directory-excursion "Telegram/ThirdParty"
+ (for-each delete-file-recursively
+ (lset-difference string=?
+ (scandir ".")
+ (cons* "." ".." keep)))))))))
(build-system qt-build-system)
(arguments
- `(#:tests? #f ; No target
- #:imported-modules
- (,@%qt-build-system-modules
- (guix build glib-or-gtk-build-system))
- #:modules
- ((guix build qt-build-system)
- ((guix build glib-or-gtk-build-system)
- #:prefix glib-or-gtk:)
- (guix build utils)
- (ice-9 match))
- #:configure-flags
- (list
- ;; Client applications must provide their own API-ID and API-HASH,
- ;; see also <https://core.telegram.org/api/obtaining_api_id>.
- ;; In case, that the credentials below fail to work, contact
- ;; Raghav Gururajan <rg@raghavgururajan.name>
- "-DTDESKTOP_API_ID=2791056"
- "-DTDESKTOP_API_HASH=582d6d0b44f7a2de949e99271fd8b3f2"
- ;; Disable WebkitGTK support as it fails to link
- "-DDESKTOP_APP_DISABLE_WEBKITGTK=ON"
- ;; Use bundled fonts as fallback.
- "-DDESKTOP_APP_USE_PACKAGED_FONTS=OFF")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'make-writable
- (lambda _
- (for-each make-file-writable (find-files "."))
- #t))
- (add-after 'make-writable 'copy-inputs
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (for-each
- (match-lambda
- ((dst src)
- (copy-recursively src dst)
- (for-each make-file-writable (find-files dst))))
- `(("cmake" ,(assoc-ref inputs "cmake-helpers"))
- ("Telegram/codegen" ,(assoc-ref inputs "codegen-source"))
- ("Telegram/lib_base" ,(assoc-ref inputs "lib-base-source"))
- ("Telegram/lib_crl" ,(assoc-ref inputs "lib-crl-source"))
- ("Telegram/lib_lottie"
- ,(assoc-ref inputs "lib-lottie-source"))
- ("Telegram/lib_qr" ,(assoc-ref inputs "lib-qr-source"))
- ("Telegram/lib_rlottie"
- ,(assoc-ref inputs "lib-rlottie-source"))
- ("Telegram/lib_rpl" ,(assoc-ref inputs "lib-rpl-source"))
- ("Telegram/lib_spellcheck"
- ,(assoc-ref inputs "lib-spellcheck-source"))
- ("Telegram/lib_storage"
- ,(assoc-ref inputs "lib-storage-source"))
- ("Telegram/lib_tl" ,(assoc-ref inputs "lib-tl-source"))
- ("Telegram/lib_ui" ,(assoc-ref inputs "lib-ui-source"))
- ("Telegram/lib_waylandshells" ,(assoc-ref inputs "lib-waylandshells-source"))
- ("Telegram/lib_webrtc" ,(assoc-ref inputs "lib-webrtc-source"))
- ("Telegram/lib_webview" ,(assoc-ref inputs "lib-webview-source"))
- ("Telegram/ThirdParty/tgcalls"
- ,(assoc-ref inputs "tgcalls-source"))))
- #t))
- (add-before 'configure 'patch-cxx-flags
- (lambda _
- (substitute* "cmake/options_linux.cmake"
- (("class-memaccess") "all"))
- #t))
- (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
- (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
+ (list #:tests? #f ;No target
+ #:imported-modules
+ `(,@%qt-build-system-modules
+ (guix build glib-or-gtk-build-system))
+ #:modules
+ '((guix build qt-build-system)
+ ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
+ (guix build utils)
+ (ice-9 match))
+ #:configure-flags
+ #~`(;; https://github.com/telegramdesktop/tdesktop/blob/dev/snap/snapcraft.yaml
+ ;; see also <https://core.telegram.org/api/obtaining_api_id>.
+ "-DTDESKTOP_API_ID=611335"
+ "-DTDESKTOP_API_HASH=d524b414d21f4d37f08684c1df41ac9c"
+ ,(string-append "-DTDESKTOP_LAUTCHER_BASENAME=" #$name)
+
+ ;; NOTE: Options commented are default values.
+ ;; See also: comments in inputs.
+
+ ;; "-DDESKTOP_APP_USE_PACKAGED=ON"
+ ;; "-DDESKTOP_APP_DISABLE_DBUS_INTEGRATION=OFF"
+ ;; "-DDESKTOP_APP_DISABLE_WAYLAND_INTEGRATION=OFF"
+ ;; "-DDESKTOP_APP_DISABLE_X11_INTEGRATION=OFF"
+ ;; "-DDESKTOP_APP_DISABLE_SPELLCHECK=OFF"
+ ;; "-DDESKTOP_APP_USE_ENCHANT=OFF"
+ ;; "-DDESKTOP_APP_LOTTIE_USE_CACHE=ON"
+
+ ;; "-DLIBTGVOIP_DISABLE_ALSA=OFF"
+ ;; "-DLIBTGVOIP_DISABLE_PULSEAUDIO=OFF"
+
+ ;; Build all the available detected features in the build
+ ;; environment.
+ "-DDESKTOP_APP_USE_PACKAGED_LAZY=ON")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'make-writable
+ (lambda _
+ (for-each make-file-writable (find-files "."))))
+ (add-after 'make-writable 'copy-inputs
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (for-each
+ (match-lambda
+ ((dst src)
+ (copy-recursively src dst)
+ (for-each make-file-writable (find-files dst))))
+ `(("cmake" ,(assoc-ref inputs "cmake-helpers"))
+ ("Telegram/codegen" ,(assoc-ref inputs "codegen-source"))
+ ("Telegram/lib_base" ,(assoc-ref inputs "lib-base-source"))
+ ("Telegram/lib_crl" ,(assoc-ref inputs "lib-crl-source"))
+ ("Telegram/lib_lottie" ,(assoc-ref inputs "lib-lottie-source"))
+ ("Telegram/lib_qr" ,(assoc-ref inputs "lib-qr-source"))
+ ("Telegram/lib_rpl" ,(assoc-ref inputs "lib-rpl-source"))
+ ("Telegram/lib_spellcheck" ,(assoc-ref inputs "lib-spellcheck-source"))
+ ("Telegram/lib_storage" ,(assoc-ref inputs "lib-storage-source"))
+ ("Telegram/lib_tl" ,(assoc-ref inputs "lib-tl-source"))
+ ("Telegram/lib_ui" ,(assoc-ref inputs "lib-ui-source"))
+ ("Telegram/lib_waylandshells" ,(assoc-ref inputs "lib-waylandshells-source"))
+ ("Telegram/lib_webrtc" ,(assoc-ref inputs "lib-webrtc-source"))
+ ("Telegram/lib_webview" ,(assoc-ref inputs "lib-webview-source"))
+ ("Telegram/ThirdParty/dispatch" ,(assoc-ref inputs "dispatch-source"))
+ ("Telegram/ThirdParty/fcitx-qt5" ,(assoc-ref inputs "fcitx-qt5-source"))
+ ("Telegram/ThirdParty/fcitx5-qt" ,(assoc-ref inputs "fcitx5-qt-source"))
+ ("Telegram/ThirdParty/hime" ,(assoc-ref inputs "hime-source"))
+ ("Telegram/ThirdParty/nimf" ,(assoc-ref inputs "nimf-source"))
+ ("Telegram/ThirdParty/rlottie" ,(assoc-ref inputs "rlottie-source"))
+ ("Telegram/ThirdParty/tgcalls" ,(assoc-ref inputs "tgcalls-source"))
+ ("Telegram/ThirdParty/libtgvoip" ,(assoc-ref inputs "libtgvoip-source"))))))
+ (replace 'build
+ (lambda* (#:key (make-flags '())
+ (parallel-build? #t) #:allow-other-keys)
+ (apply invoke "cmake" "--build" "."
+ `(,@(if parallel-build?
+ `("-j" ,(number->string (parallel-job-count)))
+ '())
+ ,@make-flags))))
+ (replace 'install
+ (lambda* (#:key (make-flags '()) #:allow-other-keys)
+ (apply invoke "cmake" "--install" "." make-flags)))
+ (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
+ (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)))))
(native-inputs
- `(("cmake-helpers"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/cmake_helpers.git")
- (commit "4d44d822e01b3b5fbec3ce824e01f56aa35d7f72")))
- (file-name
- (git-file-name "cmake-helpers-for-telegram-desktop" version))
- (sha256
- (base32 "0h6cjiqy014h2mz90h1z5a7plb3ihbnds4bja8994ybr1dy3m7m5"))))
- ("cmake-shared" ,cmake-shared)
- ("extra-cmake-modules" ,extra-cmake-modules)
- ("glib:bin" ,glib "bin")
- ("gobject-introspection" ,gobject-introspection)
- ("gtk+:bin" ,gtk+ "bin")
- ("pkg-config" ,pkg-config)
- ("python" ,python-wrapper)
- ("qttools-5" ,qttools-5)))
+ (let ((external-sources
+ `(("cmake-helpers"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/cmake_helpers")
+ (commit "0702ef4cdd8ab888fdadaa4f5b2eb0c9d5844b69")))
+ (file-name
+ (git-file-name "cmake-helpers-for-telegram-desktop" version))
+ (sha256
+ (base32 "16lsm3pb8md4ksr2ps3bnkvr0jygdamkxyirxgz214n6wa281zk1")))))))
+ (modify-inputs external-sources
+ (append clang-toolchain ninja pkg-config python-wrapper))))
(inputs
- `(("alsa" ,alsa-lib)
- ("c++-gsl" ,c++-gsl)
- ("catch" ,catch-framework2)
- ("codegen-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/codegen.git")
- (commit "248614b49cd7d5aff69d75a737f2e35b79fbb119")))
- (file-name
- (git-file-name "codegen" version))
- (sha256
- (base32 "00f7g2z6xmkbkrmi3q27hscjl44mg66wf9q0mz3rhy3jaa6cfdrk"))))
- ("expected" ,libexpected)
- ("fcitx-qt5" ,fcitx-qt5)
- ("fcitx5-qt" ,fcitx5-qt)
- ("ffmpeg" ,ffmpeg)
- ("glib" ,glib)
- ("glibmm" ,glibmm-2.64)
- ("gtk+" ,gtk+)
- ("hime" ,hime)
- ("hunspell" ,hunspell)
- ("jemalloc" ,jemalloc)
- ("kwayland" ,kwayland)
- ("lib-base-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_base.git")
- (commit "a23c05c44e4f01dc4428f4d75d4db98c59d313a6")))
- (file-name
- (git-file-name "lib-base-for-telegram-desktop" version))
- (sha256
- (base32 "0vh5zgxwalmbnvz8lzlnba87ch8vnpmcz6nvf56w09f3nlxvvq78"))))
- ("lib-crl-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_crl.git")
- (commit "3ccf2ed5095442e5874bba8852cb7dc4efeae29f")))
- (file-name
- (git-file-name "lib-crl-for-telegram-desktop" version))
- (sha256
- (base32 "11my7q54m4lvvlgma6pbdyjxi1cv1adk1gph2j50mh18sqlm8myz"))))
- ("lib-lottie-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_lottie.git")
- (commit "0770df009db7928df1d0cad0900dc5110106d229")))
- (file-name
- (git-file-name "lib-lottie-for-telegram-desktop" version))
- (sha256
- (base32 "1gj56ymlbk5dnk82jw674808m511lv9dky8891a5wm4gp3pph5jb"))))
- ("lib-qr-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_qr.git")
- (commit "2b08c71c6edcfc3e31f7d7f518cc963493b6e189")))
- (file-name
- (git-file-name "lib-qr-for-telegram-desktop" version))
- (sha256
- (base32 "05hrkmwgrczyjv87r507i2r7m1zr6k2i43mq3my0s6j4szr1rjq0"))))
- ("lib-rlottie-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_rlottie.git")
- (commit "0671bf70547381effcf442ec9618e04502a8adbc")))
- (file-name
- (git-file-name "lib-rlottie-for-telegram-desktop" version))
- (sha256
- (base32 "05qnza7j15356s8jq16pkbyp4zr586lssmd86lz5jq23lcb3raxv"))))
- ("lib-rpl-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_rpl.git")
- (commit "df721be3fa14a27dfc230d2e3c42bb1a7c9d0617")))
- (file-name
- (git-file-name "lib-rpl-for-telegram-desktop" version))
- (sha256
- (base32 "15fnv3ssn7rn5d0j52gggdvyqc2wm464678dj7v2x9h8lka2jjxn"))))
- ("lib-spellcheck-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_spellcheck.git")
- (commit "68c9b788958904aea7de79f986a0f82ec8c5b094")))
- (file-name
- (git-file-name "lib-spellcheck-for-telegram-desktop" version))
- (sha256
- (base32 "0d8s4wwk6fxf536mhzq2vb9qw3j0m8nqia7ylvvpsbc4kh09dadn"))))
- ("lib-storage-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_storage.git")
- (commit "403df6c4a29562bd417c92d410e49819f5a48cc1")))
- (file-name
- (git-file-name "lib-storage-for-telegram-desktop" version))
- (sha256
- (base32 "1zxvzfrxbj4d395fzyb5pm9wn3n8jyimxx88cyqjcdd46sx4h7r5"))))
- ("lib-tl-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_tl.git")
- (commit "45faed44e7f4d11fec79b7a70e4a35dc91ef3fdb")))
- (file-name
- (git-file-name "lib-tl-for-telegram-desktop" version))
- (sha256
- (base32 "0h43xvzklda02494d466jp52hl8c1kmav9f12dyld10dpf1w6c7m"))))
- ("lib-ui-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_ui.git")
- (commit "1b590f9e16eb9571a039f072d6fea66c607e419f")))
- (file-name
- (git-file-name "lib-ui-for-telegram-desktop" version))
- (sha256
- (base32 "0ighyhfp29h9h8c7vr70pnhcv2xnsr9ln084pssn8hb5z4pmb62f"))))
- ("lib-waylandshells-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_waylandshells.git")
- (commit "59b0ee55a68976d27f1bf7cec0e11d5939e185e7")))
- (file-name
- (git-file-name "lib-waylandshells-for-telegram-desktop" version))
- (sha256
- (base32 "0l2xrpc5mvvdlsj333pmkgfvn9wi1ijfdaaz8skfnw9icw52faaf"))))
- ("lib-webrtc-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_webrtc.git")
- (commit "ef49f953f12b112008a094a719f40939aaf39db4")))
- (file-name
- (git-file-name "lib-webrtc-for-telegram-desktop" version))
- (sha256
- (base32 "15k4xs3462p3ddp5cn9im3nvdiaijmxir8wxsf5yrj70ghy26ibw"))))
- ("lib-webview-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/desktop-app/lib_webview.git")
- (commit "e06427c624515485774e2e2181d4afeb05ad5a67")))
- (file-name
- (git-file-name "lib-webview-for-telegram-desktop" version))
- (sha256
- (base32 "148z7xzfscynwwwqssdsd97npax6yn8zrd64xw8qzbwff2g2r7k4"))))
- ("libdbusmenu-qt" ,libdbusmenu-qt)
- ("libjpeg" ,libjpeg-turbo)
- ("libtgvoip" ,libtgvoip-for-telegram-desktop)
- ("lz4" ,lz4)
- ("materialdecoration" ,materialdecoration)
- ("minizip" ,minizip)
- ("nimf" ,nimf)
- ("openal" ,openal)
- ("openssl" ,openssl)
- ("opus" ,opus)
- ("pulseaudio" ,pulseaudio)
- ("qrcodegen" ,qrcodegen-cpp)
- ("qt" ,qtbase-5)
- ("qtsvg-5" ,qtsvg-5)
- ("qt5ct" ,qt5ct)
- ("qtimageformats" ,qtimageformats)
- ("qtwayland" ,qtwayland)
- ("range-v3" ,range-v3)
- ("rlottie" ,rlottie-for-telegram-desktop)
- ("rnnoise" ,rnnoise)
- ("tgcalls-source"
- ,(origin
- (method git-fetch)
- (uri
- (git-reference
- (url "https://github.com/TelegramMessenger/tgcalls.git")
- (commit "81e97fa52e25b7775b62ce07bb653533d81e91b3")))
- (file-name
- (git-file-name "tgcalls-for-telegram-desktop" version))
- (sha256
- (base32 "0fvad87hyxli83xn19mgf8jjrrh6y6iaig14pckpbkg33vf4wqkj"))))
- ("webrtc" ,webrtc-for-telegram-desktop)
- ("x11" ,libx11)
- ("xcb" ,libxcb)
- ("xcb-keysyms" ,xcb-util-keysyms)
- ("xxhash" ,xxhash)
- ("zlib" ,zlib)))
- (propagated-inputs
- (list dconf))
+ (let ((external-sources
+ `(("codegen-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/codegen")
+ (commit "8815d7aec9b901191d08445f29e2edd0aeba7b2c")))
+ (file-name
+ (git-file-name "codegen" version))
+ (sha256
+ (base32 "1ly958mjk25kfcpa174kvg134p9r751ixi275afj5kr57by9mbq2"))))
+ ("lib-base-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_base")
+ (commit "37fab6b4da32c91bc5d049baad2e9ad51cfcd195")))
+ (file-name
+ (git-file-name "lib-base-for-telegram-desktop" version))
+ (sha256
+ (base32 "1b2zc0ag5w46vwjz2240yj9aniyv09yjyrwif32994drfq6l10k5"))
+ (patches
+ (search-patches "lib-base-for-telegram-desktop-support-musl.patch"))))
+ ("lib-crl-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_crl")
+ (commit "4e620bc383d032aadea8e6af02661f8c76695cec")))
+ (file-name
+ (git-file-name "lib-crl-for-telegram-desktop" version))
+ (sha256
+ (base32 "17bngj247qwq0dg4h37xdi5v1mk22y4yp7sp6ph3irmnz4awah0x"))))
+ ("lib-lottie-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_lottie")
+ (commit "f3563bc6b0e042095d4d667d013f62cb8ae62b65")))
+ (file-name
+ (git-file-name "lib-lottie-for-telegram-desktop" version))
+ (sha256
+ (base32 "0i0w6lcrmqln7axnlazcqkaj4z0lzn0gl3z59hng40ard76cgvsg"))))
+ ("lib-qr-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_qr")
+ (commit "501f4c3502fd872ab4d777df8911bdac32de7c48")))
+ (file-name
+ (git-file-name "lib-qr-for-telegram-desktop" version))
+ (sha256
+ (base32 "05hrkmwgrczyjv87r507i2r7m1zr6k2i43mq3my0s6j4szr1rjq0"))))
+ ("lib-rpl-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_rpl")
+ (commit "fd31f5bf382d2679eccdb1abaf8240a56c6a7abe")))
+ (file-name
+ (git-file-name "lib-rpl-for-telegram-desktop" version))
+ (sha256
+ (base32 "1fpq8nyh8wx6zkb3sjjrx9ydqzyhw4483bdk1i9blp0ijn9xxdxf"))))
+ ("lib-spellcheck-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_spellcheck")
+ (commit "b2f2b7b6bce60bc1c6429a6b5ec4bc5891baa060")))
+ (file-name
+ (git-file-name "lib-spellcheck-for-telegram-desktop" version))
+ (sha256
+ (base32 "1v8xdbwza457wmjkfmpys46g5g1aw7yabjab6knxd4p4vhyjhbwh"))))
+ ("lib-storage-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_storage")
+ (commit "839609369d04615475cb1518636de3619106a917")))
+ (file-name
+ (git-file-name "lib-storage-for-telegram-desktop" version))
+ (sha256
+ (base32 "1l26h2fmqp9dcpr6pfvdd5sjb68j7yh0ms2lnr8na7jf5xqmkwwm"))))
+ ("lib-tl-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_tl")
+ (commit "0d234b5aabf43d598e0cb0867566ee570d9e2755")))
+ (file-name
+ (git-file-name "lib-tl-for-telegram-desktop" version))
+ (sha256
+ (base32 "1wc8d94h4ga36yl9g8h67j914xwpwv7rmkrrvvslgbgxb7sxcd96"))))
+ ("lib-ui-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_ui")
+ (commit "2f5d5e0e79bf52ab04047bc93a4b624d6d33d46a")))
+ (file-name
+ (git-file-name "lib-ui-for-telegram-desktop" version))
+ (sha256
+ (base32 "09kmc1igh37wafngwk6raqx2wrlxg10lf9p72j84sxs05hbybfcn"))))
+ ("lib-waylandshells-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_waylandshells")
+ (commit "271290b93c65b6fb634cb9c69bff97f51b74f3a7")))
+ (file-name
+ (git-file-name "lib-waylandshells-for-telegram-desktop" version))
+ (sha256
+ (base32 "02d966kbpqf029wwma17vicmc8n5iaksibaq6d81jmh770p2vsc9"))))
+ ("lib-webrtc-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_webrtc")
+ (commit "9b11599c3c56047cfa4c68b69f1fcc93b602c33a")))
+ (file-name
+ (git-file-name "lib-webrtc-for-telegram-desktop" version))
+ (sha256
+ (base32 "0158jx8hj4fv6qpw5pgcr2mdlihj0dxs060dg3iy61zz6q68z5dq"))))
+ ("lib-webview-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/lib_webview")
+ (commit "546df65eb2424550ed84ce14fc9c5d1bb3586f35")))
+ (file-name
+ (git-file-name "lib-webview-for-telegram-desktop" version))
+ (sha256
+ (base32 "0zzjwyw82bggncmmsw969lnjl04pklmqjqm77jjzadinivl52z0l"))))
+ ("tgcalls-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TelegramMessenger/tgcalls")
+ (commit "82c4921045c440b727c38e464f3a0539708423ff")))
+ (file-name
+ (git-file-name "tgcalls-for-telegram-desktop" version))
+ (sha256
+ (base32 "1109r17abh66yz91b65fn2g4ryfybnsr5g6075sjhbah1gccv9mk"))))
+ ("libtgvoip-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/telegramdesktop/libtgvoip")
+ (commit "78a8e22bedb0d06004da8bafeba88b7474cb89a4")))
+ (file-name
+ (git-file-name "libtgvoip-for-telegram-desktop" version))
+ (sha256
+ (base32 "1y1jvm4i0i4fkl6c0bgcv2cpzziyyn1pywxqz726q008hwki941h"))))
+ ("dispatch-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/apple/swift-corelibs-libdispatch")
+ (commit "ecc678d79f38cf63d24b6d16e18f69a9117d8d73")))
+ (file-name
+ (git-file-name "dispatch-for-telegram-desktop" version))
+ (sha256
+ (base32 "0hy4q6x3bgphazmpl3v62995abc9fpi8y7yg9aiblzsqkxmgjmqn"))))
+ ("fcitx-qt5-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fcitx/fcitx-qt5")
+ (commit "c2feea444ab79e6a8d6d205d4c7b13ab1db353c9")))
+ (file-name
+ (git-file-name "fcitx-qt5-for-telegram-desktop" version))
+ (sha256
+ (base32
+ "1y10n2l0rbzpvsryw0mikyv9hic8wxd8gwr0ax37niwjbkil2zv8"))))
+ ("fcitx5-qt-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fcitx/fcitx5-qt")
+ (commit "fd06094f48e8281b6dc3fd4aaadfcd216c426a5a")))
+ (file-name
+ (git-file-name "fcitx5-qt-for-telegram-desktop" version))
+ (sha256
+ (base32
+ "15mhcv3m39fi375ccd05hr8va4js9lkj0vllypnq90v43fcvawr1"))))
+ ("hime-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hime-ime/hime")
+ (commit "9b3e6f9ab59d1fe4d9de73d3bf0fed7789f921c5")))
+ (file-name
+ (git-file-name "hime-for-telegram-desktop" version))
+ (sha256
+ (base32
+ "1b98ql30ihbqz1zwlm0c3c1qmxp3gdz96wsic3h6ypqcr3xyj28f"))))
+ ("nimf-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hamonikr/nimf")
+ (commit "181f9467fc1883c228fc272330ab2f000bfae163")))
+ (file-name
+ (git-file-name "nimf-for-telegram-desktop" version))
+ (sha256
+ (base32
+ "0kk430bx3w9n8c1d42ng5gicx44gi9bsjd60n2927wdpm6jxm2yl"))))
+ ("rlottie-source"
+ ,(origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/desktop-app/rlottie")
+ (commit "8c69fc20cf2e150db304311f1233a4b55a8892d7")))
+ (file-name
+ (git-file-name "rlottie-for-telegram-desktop" version))
+ (sha256
+ (base32 "14gwg3sn6xdx9ymnx5r0vfm4pk8dwk92s10a1wdvfbjpyrxll64i")))))))
+ (modify-inputs external-sources
+ (append c++-gsl ;Required
+ jemalloc
+ libexpected
+ minizip
+ openal
+ qrcodegen-cpp
+ qt5compat
+ qtbase
+ qtimageformats
+ qtsvg-5
+ range-v3
+ rnnoise
+ webrtc-for-telegram-desktop
+ xxhash
+ zlib
+ ;; Has options
+ fcitx-qt5 ;DESKTOP_APP_USE_PACKAGED_LAZY
+ fcitx5-qt
+ hime
+ nimf
+ glibmm-2.64 ;DESKTOP_APP_DISABLE_DBUS_INTEGRATION
+ enchant ;DESKTOP_APP_USE_ENCHANT
+ hunspell ;DESKTOP_APP_DISABLE_SPELLCHECK
+ lz4 ;DESKTOP_APP_LOTTIE_USE_CACHE
+ alsa-lib ;LIBTGVOIP_DISABLE_ALSA
+ pulseaudio ;LIBTGVOIP_DISABLE_PULSEAUDIO
+ qtwayland ;DESKTOP_APP_DISABLE_WAYLAND_INTEGRATION
+ wayland
+ libxcb ;DESKTOP_APP_DISABLE_X11_INTEGRATION
+ xcb-util-keysyms
+ ;; Optional
+ webkitgtk))))
(synopsis "Telegram Desktop")
(description "Telegram desktop is the official desktop version of the
Telegram instant messenger.")
(home-page "https://desktop.telegram.org/")
- (license
- (list
- ;; ThirdParty
- license:lgpl2.1+
- ;; Others
- license:gpl3+))))
+ (license (list
+ ;; Telegram/ThirdParty/dispatch
+ license:asl2.0
+
+ ;; Telegram/ThirdParty/fcitx-qt5 (platform input context plugin)
+ ;; Telegram/ThirdParty/fcitx5-qt (Fcitx5Qt4DBusAddons library
+ ;; and input context plugin, Fcitx5Qt5DBusAddons library and Qt5
+ ;; platform input context plugin)
+ license:bsd-3
+
+ ;; Telegram/ThirdParty/rlottie/src/vector/pixman
+ ;; Telegram/ThirdParty/rlottie/src/vector/stb
+ ;; Telegram/ThirdParty/rlottie/src/vector/rapidjson
+ license:expat
+
+ ;; Telegram/ThirdParty/rlottie/src/vector/freetype
+ license:freetype
+
+ ;; Telegram/ThirdParty/hime (files not mentioned below)
+ license:lgpl2.1
+
+ ;; Telegram/ThirdParty/fcitx5-qt (files not mentioned above)
+ ;; Telegram/ThirdParty/rlottie
+ ;; Telegram/ThirdParty/rlottie/src/vector
+ license:lgpl2.1+
+
+ ;; Telegram/ThirdParty/nimf
+ ;; Telegram/ThirdParty/tgcalls
+ license:lgpl3
+
+ ;; Telegram/ThirdParty/fcitx-qt5 (files not mentioned above)
+ ;; Telegram/ThirdParty/hime (Qt immodules)
+ license:gpl2
+
+ ;; Others
+ license:gpl3+))))
(define-public tl-parser
(let ((commit "1933e76f8f4fb74311be723b432e4c56e3a5ec06")