Subject: [bug#41293] [PATCH 3/5] gnu: Add pantheon-videos.

From: altadil <[email-masked]>
Date: Sun, 01 Oct 2023 12:41:55 +0000

* gnu/packages/pantheon.scm (pantheon-videos): New variable.
---
guix build --rounds=2 was successfully run on a Zen4 CPU,
for the following --system= options:
- x86_64-linux
- i686-linux
- aarch64-linux.
This one is a work in progress, as there are at least two issues.
First, it is missing some video codecs and I do not know how to fix it.
Second, the trick used in other pantheon packages to prevent the
schemas generation after install won’t work here, as the step is not
made dependent on any condition (if I understand the meson.build file
correctly). Do we have to patch the source for that, or is there a
better way ?
 gnu/packages/pantheon.scm | 49 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 3465e5cb37..ca124f8939 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -35,6 +35,7 @@ (define-module (gnu packages pantheon)
   #:use-module (gnu packages python)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages xml)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages web)
   #:use-module (gnu packages webkit)
   #:use-module (gnu packages xorg)
@@ -264,6 +265,54 @@ (define-public pantheon-terminal
     (home-page "https://elementary.io/open-source")
     (license license:lgpl3)))
 
+(define-public pantheon-videos
+  (package
+    (name "pantheon-videos")
+    (version "3.0.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/elementary/videos")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0873g3mcrpgwmjamy8dhdya7fxki4qpwp8wa6lv5cdipq7pkiprv"))))
+    (build-system meson-build-system)
+    (arguments
+     `(#:glib-or-gtk? #t
+       #:phases (modify-phases %standard-phases
+                  (add-after 'install 'install-symlinks
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out"))
+                             (bin (string-append out
+                                                 "/bin/io.elementary.videos"))
+                             (link (string-append out "/bin/pantheon-videos")))
+                        (symlink bin link)))))))
+    (native-inputs (list gettext-minimal ;for msgfmt.
+                         `(,glib "bin") ;glib-compile-schemas.
+                         pkg-config
+                         vala))
+    (inputs (list flatpak
+                  ffmpeg
+                  granite-6
+                  gst-libav
+                  gst-plugins-bad
+                  gst-plugins-base
+                  gst-plugins-good
+                  gst-plugins-ugly
+                  gstreamer
+                  gtk+
+                  libgee
+                  libhandy))
+    (synopsis "Video player and library app designed for the Pantheon desktop")
+    (description
+     "Videos is a video player and video library application.  It
+originally comes from elementary OS and is designed for the Pantheon desktop
+environment (but can be used with others as well).")
+    (home-page "https://elementary.io/open-source")
+    (license license:gpl3+)))
+
 (define-public sideload
   (package
     (name "sideload")
-- 
2.41.0