[bug#78197,v2] gnu: Add kasts.

Message ID 40aa3082dadcc063421171eb6048544023b8568f.1746122009.git.sergio.pastorperez@gmail.com
State New
Headers
Series [bug#78197,v2] gnu: Add kasts. |

Commit Message

Sergio Pastor Pérez May 1, 2025, 5:53 p.m. UTC
  * gnu/packages/kde.scm (kasts): New variable.

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

Comments

Zheng Junjie May 1, 2025, 6:12 p.m. UTC | #1
Sergio Pastor Pérez <sergio.pastorperez@gmail.com> writes:

> * 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")

Between multimedia/kasts
I think it might be better to put it in (gnu packages kde-multimedia)

> +             (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")))))))))
why need it? I remember qt-wrap phase will do this.

> +    (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)))

It seems to be lgpl2.1+ and gpl2+. 

Haven't tested, but the others look good.

> +
>  (define-public kdevelop
>    (package
>      (name "kdevelop")
  
Sergio Pastor Pérez May 2, 2025, 7 a.m. UTC | #2
Z572 <z572@z572.online> writes:
> Between multimedia/kasts
> I think it might be better to put it in (gnu packages kde-multimedia)

Sure, I've moved it there in v3 of the patch series.

> why need it? I remember qt-wrap phase will do this.

Seems you are right, I've removed it now.

>> +    (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)))
>
> It seems to be lgpl2.1+ and gpl2+. 

Added.

I've already sent v3 of the patch series, thanks for the review!


Best regards,
Sergio.
  

Patch

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")