Subject: [PATCH gnome-team v3] 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
---
 gnu/packages/gnome.scm | 57 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 194a443484..a9ff217380 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -13624,3 +13624,60 @@ (define-public calls
 backends, such as ModemManager for phones and @acronym{SIP, Session Initiation
 Protocol} for @acronym{VoIP, Voice over @acronym{IP, Internet Protocol}}.")
     (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}.")
+    (license license:gpl3+)))

base-commit: 60db3a6b3f6e4d1bd751d04b7d9ad1e894febf93
-- 
2.41.0