Subject: [PATCH v2] gnu: Add kasts.

From: Sergio Pastor Pérez <[email-masked]>
Date: Thu, 1 May 2025 19:53:29 +0200

* gnu/packages/kde.scm (kasts): New variable.

Change-Id: I2ae98c73b91bbdd34a60f2180c59257f26728321
---
 gnu/packages/kde.scm | 69 +++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 68 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm
index cf9b0a5298..5e46e322e1 100644
--- a/gnu/packages/kde.scm
+++ b/gnu/packages/kde.scm
@@ -80,7 +80,7 @@ (define-module (gnu packages kde)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gperf)
   #:use-module (gnu packages gps)
-  #:use-module (gnu packages graphics)
+  #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages image-processing)
@@ -115,6 +115,7 @@ (define-module (gnu packages kde)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages unicode)
   #:use-module (gnu packages version-control)
+  #:use-module (gnu packages vulkan)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xml)
@@ -572,6 +573,72 @@ (define-public kapptemplate
 @end itemize")
     (license license:gpl2+)))
 
+(define-public kasts
+  (package
+    (name "kasts")
+    (version "25.03.90")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://invent.kde.org/multimedia/kasts")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "094q0yc8ljpkryd0vwwh4ljvk101qr63siwxacm1dgmhyi95262k"))))
+    (build-system qt-build-system)
+    (native-inputs (list pkg-config extra-cmake-modules))
+    (inputs (list bash-minimal
+                  breeze-icons
+                  gstreamer
+                  kcolorscheme
+                  kcoreaddons
+                  kcrash
+                  kdbusaddons
+                  ki18n
+                  kiconthemes
+                  kirigami
+                  kirigami-addons
+                  kwindowsystem
+                  libxkbcommon
+                  python
+                  qqc2-desktop-style
+                  qtdeclarative
+                  qtkeychain-qt6
+                  qtmultimedia
+                  qtsvg
+                  sonnet
+                  syndication
+                  taglib
+                  threadweaver
+                  vlc
+                  vulkan-headers
+                  vulkan-loader))
+    (arguments
+     (list
+      #:qtbase qtbase
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'install 'wrap-program
+            (lambda _
+              (wrap-program (string-append #$output "/bin/kasts")
+                `("QML_IMPORT_PATH" ":" prefix
+                  ,(list (string-append #$output "/lib/qt6/qml")))))))))
+    (home-page "https://apps.kde.org/kasts")
+    (synopsis "Convergent podcast client")
+    (description
+     "Kasts is a convergent podcast application that looks good on
+desktop and mobile.
+
+Its main features are:
+- Episode management through play queue
+- Sync playback positions with other clients through gpodder.net or
+  gpodder-nextcloud
+- Variable playback speed
+- Search for podcasts
+- Full system integration: e.g. inhibit system suspend while listening")
+    (license license:gpl2)))
+
 (define-public kdevelop
   (package
     (name "kdevelop")
-- 
2.49.0