This is an automated email from the git hooks/post-receive script.

guix_mirror_bot pushed a commit to branch master
in repository guix.

The following commit(s) were added to refs/heads/master by this push:
     new 0e47deee68 gnu: Add cuttlefish.
0e47deee68 is described below

commit 0e47deee689cad234d47764fbbad1ce159740b81
Author: Herman Rimm <[email protected]>
AuthorDate: Sun Mar 2 19:40:29 2025 +0100

    gnu: Add cuttlefish.
    
    * gnu/packages/fediverse.scm (cuttlefish): Add variable.
    
    Change-Id: I600f105862495a23e3d821b71b61582a442cb2f1
    Signed-off-by: Maxim Cournoyer <[email protected]>
    Modified-by: Maxim Cournoyer <[email protected]>
---
 gnu/packages/fediverse.scm | 60 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/gnu/packages/fediverse.scm b/gnu/packages/fediverse.scm
index 2a0068d012..5378c9437e 100644
--- a/gnu/packages/fediverse.scm
+++ b/gnu/packages/fediverse.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2021 Taiju HIGASHI <[email protected]>
 ;;; Copyright © 2024 Sergio Durigan Junior <[email protected]>
 ;;; Copyright © 2025 Ashish SHUKLA <[email protected]>
+;;; Copyright © 2025 Herman Rimm <[email protected]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -49,10 +50,69 @@
   #:use-module (gnu packages python-crypto)
   #:use-module (gnu packages python-web)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages xml))
 
+(define-public cuttlefish
+  (package
+    (name "cuttlefish")
+    (version "0.1.0")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+              (url "https://gitlab.shinice.net/artectrex/Cuttlefish";)
+              (commit "9e9b97ccbb27562c86637e5b413c28beacd8cd4d")))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0fdkag4j66zaf2shbw4j6hspk6bw6b0kbd5l6wzvh3p7id7yj6qi"))
+       (modules '((guix build utils)))
+       (snippet
+        #~(begin (substitute* "data/ch.cuttlefish.app.gschema.xml"
+                   ;; Instance does not work properly.
+                   (("https://video.blender.org";)
+                    "https://tilvids.com";))
+                 (substitute* "src/video-view.cpp"
+                   ;; Top-level "files" key has an empty list.
+                   (("\\[\"files\"\\]")
+                    "[\"streamingPlaylists\"][0][\"files\"]"))))))
+    (build-system meson-build-system)
+    (arguments
+     (list #:glib-or-gtk? #t
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'glib-or-gtk-wrap 'wrap-gst-plugins
+                 (lambda _
+                   (wrap-program (string-append #$output "/bin/cuttlefish")
+                     `("GST_PLUGIN_SYSTEM_PATH" ":" prefix
+                               (,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
+    (native-inputs
+     (list desktop-file-utils
+           gettext-minimal              ;msgfmt
+           (list glib "bin")            ;glib-compile-resources
+           gsettings-desktop-schemas    ;org.gnome.system.proxy schema
+           pkg-config))
+    (inputs (list bash-minimal
+                  gst-plugins-bad
+                  gst-plugins-good      ;playbin plugin
+                  gstreamer
+                  gtk
+                  jsoncpp
+                  libadwaita
+                  libsoup-minimal-2))
+    (home-page "https://cuttlefish.ch";)
+    (synopsis "GTK client for PeerTube")
+    (description
+     "Cuttlefish is a desktop client for PeerTube, but will work on
+GNU/Linux-based phones (like the Librem 5 or Pinephone) as well.  Cuttlefish
+aims to provide a better experience of watching PeerTube videos and using
+PeerTube in general, via an efficient native application that can hook into
+the federation of interconnected video hosting services.")
+    ;; Logo distributed under the Creative Commons CCBY license.
+    (license license:gpl3+)))
+
 (define-public toot
   (package
     (name "toot")

Reply via email to