Subject: [PATCH gnome-team v2 2/2] gnu: Add gnome-connections.

From: Vivien Kraus <[email-masked]>
Date: Mon, 20 Nov 2023 20:25:45 +0100

* gnu/packages/gnome.scm (gnome-connections): New variable.

Change-Id: I4c026ab3aae07a73fcbc9b4b0612538455fe126a
---
I kept the support-related sentence in the description because I think it is
important to put this application in the search results for “support” and
“help”.  But feel free to kill the last sentence if you don’t think so.

 gnu/packages/gnome.scm | 58 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 6ace6d2f90..441eab6f4d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -13621,3 +13621,61 @@ (define-public gtk-frdp
 This library provides a widget to view @acronym{RDP,Remote Desktop Protocol}
 sessions.")
     (license license:gpl3+)))
+
+(define-public gnome-connections
+  (package
+    (name "gnome-connections")
+    (version "44.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://gnome/sources/" name "/"
+                                  (version-major version) "/"
+                                  name "-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0sv238bq0dhi68ksr3bcl4q44i3ishk5i10c2325qz879f92sshk"))
+              (snippet
+               #~(begin
+                   (use-modules (guix build utils))
+                   (delete-file-recursively "subprojects")))))
+    (build-system meson-build-system)
+    (arguments
+     (list
+      #:glib-or-gtk? #t
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'patch-meson
+            (lambda _
+              (substitute* "meson.build"
+                (("gtk_update_icon_cache: true")
+                 "gtk_update_icon_cache: false")
+                (("update_desktop_database: true")
+                 "update_desktop_database: false"))))
+          (add-after 'unpack 'disable-nonfree-advertisement
+            (lambda _
+              (substitute* "src/ui/assistant.ui"
+                (("\\(standard for connecting to Linux\\)")
+                 "(standard for connecting to GNU/Linux)"))
+              (substitute* "src/ui/onboarding-dialog.ui"
+                (("Access [a-zA-Z ,]* desktops")
+                 "Access desktops with different operating systems")
+                ;; Replace the logos of non-free operating systems with the
+                ;; default image: the project metaphor for connecting to a
+                ;; remote desktop.
+                (("multiplatform.svg")
+                 "welcome.svg")))))))
+    (inputs
+     (list gtk+ gtk-frdp gtk-vnc libhandy libsecret libxml2))
+    (native-inputs
+     (list gettext-minimal
+           `(,glib "bin")
+           itstool
+           pkg-config
+           vala))
+    (home-page "https://apps.gnome.org/Connections")
+    (synopsis "View and use other desktops")
+    (description "Connections allows the user to connect to different
+real or virtual machines, using @acronym{VNC,Virtual Network Computing}
+or @acronym{RDP,Remote Desktop Protocol}.  It can be used to provide support
+for other users who need help.")
+    (license license:gpl3+)))
-- 
2.41.0