From patchwork Sun Feb 2 17:40:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sughosha X-Patchwork-Id: 38181 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id DE1A027BBE9; Sun, 2 Feb 2025 17:42:32 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 3FFCD27BBE2 for ; Sun, 2 Feb 2025 17:42:31 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tedyw-0004Ac-Ky; Sun, 02 Feb 2025 12:42:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tedyu-00049P-Ps for guix-patches@gnu.org; Sun, 02 Feb 2025 12:42:04 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tedyu-0004pD-3W for guix-patches@gnu.org; Sun, 02 Feb 2025 12:42:04 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=KN0blDz0iCXEPjcoxzyJQ3aOgCRMKq/byopoVQ1x85o=; b=hePFIEPWkUGiCkoBLShxNoA+GcVX63BvHUfRnQKkYLdsQILBPT2TJ8meLnPsN0Yfb464/o/8/H8eh0mlPtVNP7bC/6fF7KLeCbA00ONqpGriQAf2drLdCp1nFs4EGSmkPUI95hbHO9JhyGZfHJ53DGTEm590ExFBcKSfjR5msjPfZA6lDIihhDq9tGJiXccUjQM3FMQoEsnbw20e9vqTyeijeY6UhnZb5YXj04v511shsXAqA0GBa08isqlrR46FQYp3u4e8za6gD6wZsTmGuK4d1tUg/pyrtp+sM1JBY1ELCAe7AL4pA8td29CMxMqB5WlMRQxPOLJAVQDe0JitSA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tedyt-0002Ds-VQ for guix-patches@gnu.org; Sun, 02 Feb 2025 12:42:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75720] [PATCH v4 5/5] gnu: Add amarok. Resent-From: Sughosha Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 02 Feb 2025 17:42:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75720 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75720@debbugs.gnu.org Cc: Sughosha Received: via spool by 75720-submit@debbugs.gnu.org id=B75720.17385180878451 (code B ref 75720); Sun, 02 Feb 2025 17:42:03 +0000 Received: (at 75720) by debbugs.gnu.org; 2 Feb 2025 17:41:27 +0000 Received: from localhost ([127.0.0.1]:36142 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tedyI-0002C8-4F for submit@debbugs.gnu.org; Sun, 02 Feb 2025 12:41:26 -0500 Received: from layka.disroot.org ([178.21.23.139]:59436) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tedyF-0002Bm-T6 for 75720@debbugs.gnu.org; Sun, 02 Feb 2025 12:41:24 -0500 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 0A0CA25632; Sun, 2 Feb 2025 18:41:23 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id mK9yVATeP3Za; Sun, 2 Feb 2025 18:41:18 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1738518076; bh=T1yBa3HfUKq1TI2fjymLWrjo74NTlqxDPKSl9H7UMyY=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=csH4zciSEHXlfM1yzbeEdwNr8IPvK2+/WAEwLQnqROmjuMnw5QRekRXDOWOWbytJh gkAz9SShHnjUo60I/df6z7/wLX9pT5+kMKR1yICLrugvwHQq8N6JGsAomwHBv25Udo Tku0eroHZGJDza6zzepVRJyplVM3S5cxqGPAkQ+GsMK3TErFs55QAAQKCGahSZqWPF KdWSALDGsimfWoMmUG2ZXUXSc3FMuK6bxam3LtwjUmrZaLYmX+xrsliShnzCSGrAhY Do8xERkJEqwSOz1P2vB7dpoeYqalUz9VHpTx45rVs765tsloGTr+a7E6GROsRWMhRy K5o5t1hgz44cg== Date: Sun, 2 Feb 2025 23:10:51 +0530 Message-ID: <7f028da14db2e6d26fe62c6c6843119dc890edbc.1738518051.git.sughosha@disroot.org> In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Sughosha X-ACL-Warn: , Sughosha via Guix-patches X-Patchwork-Original-From: Sughosha via Guix-patches via From: Sughosha Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde-multimedia.scm (amarok): New variable. * gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch: New file * gnu/local.mk: Register the new file. Change-Id: Iff82b2128b231070e6452a8f86a4349f614235b4 --- gnu/local.mk | 1 + gnu/packages/kde-multimedia.scm | 109 +++++++++++++ ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 ++++++++++++++++++ 3 files changed, 258 insertions(+) create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch diff --git a/gnu/local.mk b/gnu/local.mk index b6f62568bf..a6803c26e0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -982,6 +982,7 @@ dist_patch_DATA = \ %D%/packages/patches/ibus-anthy-fix-tests.patch \ %D%/packages/patches/ibus-table-paths.patch \ %D%/packages/patches/anki-mpv-args.patch \ + %D%/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \ %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \ diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index ad0b504268..8390f29f6f 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -31,14 +31,19 @@ (define-module (gnu packages kde-multimedia) #:use-module (guix utils) #:use-module (guix gexp) #:use-module (gnu packages) + #:use-module (gnu packages algebra) #:use-module (gnu packages audio) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages cdrom) + #:use-module (gnu packages check) + #:use-module (gnu packages crypto) + #:use-module (gnu packages databases) #:use-module (gnu packages docbook) #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) + #:use-module (gnu packages gpodder) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages gstreamer) @@ -46,6 +51,7 @@ (define-module (gnu packages kde-multimedia) #:use-module (gnu packages kde-frameworks) #:use-module (gnu packages kde-plasma) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages music) @@ -54,6 +60,7 @@ (define-module (gnu packages kde-multimedia) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages qt) #:use-module (gnu packages readline) + #:use-module (gnu packages tls) #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) @@ -98,6 +105,108 @@ (define-public audiocd-kio (license ;; GPL for programs, FDL for documentation (list license:gpl2+ license:fdl1.2+)))) +(define-public amarok + (package + (name "amarok") + (version "3.2.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/amarok/" version + "/amarok-" version ".tar.xz")) + (sha256 + (base32 + "14r7iismx28nnh3jhkhczhrsmsap9by8p3kfhkp7d5678c7l62g4")) + (patches + (search-patches "amarok-3.2.1-fix-including-mygpo-qt6.patch")))) + (build-system qt-build-system) + (arguments + (list #:qtbase qtbase + #:configure-flags + #~(list "-DBUILD_WITH_QT6=ON") + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'check-setup + (lambda _ + ;; Set home directory. + (setenv "HOME" "/tmp") + ;; testplaylistlayout looks for "amarok/data" directory in + ;; $XDG_DATA_DIRS. Maybe it is for testing after installing. + ;; As a workaround, set XDG_DATA_DIRS pointing to $TMPDIR + ;; which contains "amarok/data" directory. + (let ((linktarget (string-append (dirname (getcwd)) + "/amarok"))) + (if (not (equal? (basename (getcwd)) "amarok")) + (symlink (getcwd) linktarget)) + (setenv "XDG_DATA_DIRS" + (string-append (getenv "XDG_DATA_DIRS") ":" + (dirname linktarget)))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; testsqlscanmanager fails, even when run manually. + (invoke "ctest" "-E" "testsqlscanmanager"))))))) + (native-inputs + (list extra-cmake-modules googletest kdoctools pkg-config qttools)) + (inputs + (list ffmpeg + fftw + glib + karchive + kcodecs + kcolorscheme + kconfig + kconfigwidgets + kcoreaddons + kcmutils + kcrash + kdbusaddons + kdnssd + kglobalaccel + kguiaddons + ki18n + kiconthemes + kio + kirigami + knotifications + kpackage + kstatusnotifieritem + ktexteditor + ktextwidgets + kwallet + kwidgetsaddons + kwindowsystem + libofa + libmtp + libmygpo-qt6 + libxcrypt + `(,mariadb "dev") + `(,mariadb "lib") + openssl + phonon + phonon-backend-vlc + python + qt5compat + qtsvg + qtwebengine + solid + taglib + taglib-extras + threadweaver)) + (home-page "https://amarok.kde.org/") + (synopsis "Audio player for KDE") + (description + "Amarok is a music player and collection manager. It features: +@itemize +@item dynamic playlists matching different criteria, +@item collection managing with rating support, +@item support for basic MTP and UMS music player devices, +@item integrated internet services such as Magnatune, Ampache and more, +@item scripting support, +@item cover manager and +@item replay gain support +@end itemize") + (license license:gpl2+))) + (define-public dragon (package (name "dragon") diff --git a/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch new file mode 100644 index 0000000000..d23954cf80 --- /dev/null +++ b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch @@ -0,0 +1,148 @@ +This patch fixes including headers of libmygpo-qt6 when built with qt6. + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h 2025-01-21 06:40:56.069282183 +0530 +@@ -22,7 +22,14 @@ + + #include "core/playlists/PlaylistProvider.h" + #include "core/podcasts/PodcastMeta.h" ++ ++#include ++ ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include ++#else ++#include ++#endif + + namespace Podcasts { + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h 2025-01-21 05:22:06.974221089 +0530 +@@ -20,7 +20,12 @@ + #define GPODDERPODCASTREQUESTHANDLER_H_ + + #include "GpodderServiceModel.h" ++ ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include ++#else ++#include ++#endif + + #include + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h 2025-01-21 05:16:21.674470671 +0530 +@@ -20,7 +20,11 @@ + #define GPODDERPODCASTTREEITEM_H_ + + #include "GpodderTreeItem.h" ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include ++#else ++#include ++#endif + + class GpodderPodcastTreeItem: public GpodderTreeItem + { +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h 2025-01-21 05:21:29.153812018 +0530 +@@ -23,8 +23,15 @@ + #include "core/podcasts/PodcastProvider.h" + #include "core/podcasts/PodcastReader.h" + #include "GpodderPodcastMeta.h" ++ ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include + #include ++#else ++#include ++#include ++#endif ++ + #include "playlistmanager/file/KConfigSyncRelStore.h" + #include "playlistmanager/PlaylistManager.h" + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp +--- amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp 2025-01-21 05:17:27.675190295 +0530 +@@ -27,8 +27,15 @@ + #include "GpodderServiceModel.h" + #include "GpodderServiceView.h" + #include "GpodderSortFilterProxyModel.h" ++ ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include + #include ++#else ++#include ++#include ++#endif ++ + #include "playlistmanager/PlaylistManager.h" + #include "widgets/SearchWidget.h" + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h 2025-01-21 05:20:32.517198664 +0530 +@@ -20,8 +20,15 @@ + #define GPODDERSERVICEMODEL_H_ + + #include "GpodderTreeItem.h" ++ ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include + #include ++#else ++#include ++#include ++#endif ++ + #include "NetworkAccessManagerProxy.h" + + #include +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h 2025-01-21 05:18:10.983661774 +0530 +@@ -20,7 +20,11 @@ + #define GPODDERTAGTREEITEM_H_ + + #include "GpodderTreeItem.h" ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) + #include ++#else ++#include ++#endif + + #include + +diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h +--- amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h 2025-01-11 23:47:50.000000000 +0530 ++++ amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h 2025-01-21 06:33:35.948536483 +0530 +@@ -19,13 +19,18 @@ + #ifndef GPODDERTREEITEM_H_ + #define GPODDERTREEITEM_H_ + +-#include +-#include +- + #include + #include + #include + ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0) ++#include ++#include ++#else ++#include ++#include ++#endif ++ + + class GpodderTreeItem : public QObject + {