[bug#75524] gnu: Add confy.

Message ID dbaf99e7fe6bb0b3b413a0e05359e27084fa409a.1736711544.git.liliana.prikler@gmail.com
State New
Headers
Series [bug#75524] gnu: Add confy. |

Commit Message

Liliana Marie Prikler Jan. 12, 2025, 7:50 p.m. UTC
  * gnu/packages/gnome.scm (confy): New variable.
---
 gnu/packages/gnome.scm | 57 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 57 insertions(+)


base-commit: 5e4cc506c71d04f7886e351be4266aa9d692b76f
  

Comments

Maxim Cournoyer Jan. 13, 2025, 3:31 p.m. UTC | #1
Hi Liliana,

Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

> * gnu/packages/gnome.scm (confy): New variable.
> ---
>  gnu/packages/gnome.scm | 57 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 57 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 78c276a991..b1652bb643 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -14236,6 +14236,63 @@ (define-public calls
>  Protocol} for @acronym{VoIP, Voice over @acronym{IP, Internet Protocol}}.")
>      (license license:gpl3+)))
>  
> +(define-public confy
> +  (package
> +    (name "confy")
> +    (version "0.8.0")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference

[...]

> +    (synopsis "Conference Schedule Viewer")
> +    (description "Confy is a conference schedule viewer for GNOME.  It allows
> +you to mark favourite talks and highlights conflicts between favourited talks.")
> +    (license license:gpl3+)))

I seem to recall the GNU standards recommending the use of US English as
a convention, for uniformity.  That'd make it favourite -> favorite.

Otherwise, LGTM.
  

Patch

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 78c276a991..b1652bb643 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -14236,6 +14236,63 @@  (define-public calls
 Protocol} for @acronym{VoIP, Voice over @acronym{IP, Internet Protocol}}.")
     (license license:gpl3+)))
 
+(define-public confy
+  (package
+    (name "confy")
+    (version "0.8.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://git.sr.ht/~fabrixxm/confy")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "0hjj1klndhjmy02lxn15cnid0ydnxi0ki59h4an0zsyaha77s1lm"))))
+    (build-system meson-build-system)
+    (arguments
+     (list #:glib-or-gtk? #t
+           #:imported-modules `(,@%meson-build-system-modules
+                                (guix build python-build-system))
+           #:modules '((guix build meson-build-system)
+                       ((guix build python-build-system) #:prefix python:)
+                       (guix build utils))
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'unpack 'disable-post-install
+                 (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 'patch-for-compatibility
+                 (lambda _
+                   ;; TODO: Remove when Python is updated to >= 3.11.
+                   (substitute* (find-files "." "\\.py$")
+                     (("import Self") "import Any as Self"))))
+               (add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
+                 (lambda* (#:key inputs outputs #:allow-other-keys)
+                   (wrap-program (search-input-file outputs "bin/confy")
+                     `("GUIX_PYTHONPATH" =
+                       (,(getenv "GUIX_PYTHONPATH")
+                        ,(python:site-packages inputs outputs)))
+                     `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))
+    (inputs (list gtk
+                  libadwaita
+                  libnotify
+                  python
+                  python-icalendar
+                  python-pygobject))
+    (native-inputs (list blueprint-compiler
+                         gettext-minimal
+                         `(,glib "bin")
+                         pkg-config))
+    (home-page "https://confy.kirgroup.net")
+    (synopsis "Conference Schedule Viewer")
+    (description "Confy is a conference schedule viewer for GNOME.  It allows
+you to mark favourite talks and highlights conflicts between favourited talks.")
+    (license license:gpl3+)))
+
 (define-public gtk-frdp
   (package
     (name "gtk-frdp")