From patchwork Wed Jan 22 03:48:04 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sughosha X-Patchwork-Id: 37522 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 2A42627BBEA; Wed, 22 Jan 2025 03:50:39 +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,URIBL_BLOCKED autolearn=ham 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 3EFA027BBE2 for ; Wed, 22 Jan 2025 03:50:38 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1taRku-0006SJ-9l; Tue, 21 Jan 2025 22:50:16 -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 1taRkk-0006PS-56 for guix-patches@gnu.org; Tue, 21 Jan 2025 22:50:06 -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 1taRkj-0003D1-SL for guix-patches@gnu.org; Tue, 21 Jan 2025 22:50:05 -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=kUgwXPplpB1BRw0cJt+Ql7+ipib4+RsmW1yOBeZcuPw=; b=Vk2lk4pBq1aQu5GyrzwL5SY7zokCh0DYYzI7B79Pje6cxJc4XPM7+1bdjTR340atFC02WWn63FxYMvbBwzNa4s2cEvQfSysOZXH5BJSpF3kkDLnclvS+pxSXpJetO/CWvfMw2e5VJREuUfNLMZV5axD5i0IIadIbctc3KKr3pEChAsEQbLPb8+zdsoiNKBRhcRzs5U3CObrk3BXZXkLgzDrjus5g9/XQzReOglZs+smTbwZ+lwRGWU+MB+IC0zN77d+R47ur30+oC0fGOFJkgooDoeOjaVep8VvDe5HJX6cHQ8k9ok32J9ubAphA2d5ig0hVnKHmJTPkmp+AHP5wiQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1taRkj-00041D-Kk for guix-patches@gnu.org; Tue, 21 Jan 2025 22:50:05 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75720] [PATCH v2 5/5] gnu: Add amarok. Resent-From: Sughosha Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 22 Jan 2025 03:50:05 +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.173751778015366 (code B ref 75720); Wed, 22 Jan 2025 03:50:05 +0000 Received: (at 75720) by debbugs.gnu.org; 22 Jan 2025 03:49:40 +0000 Received: from localhost ([127.0.0.1]:58883 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1taRkG-0003zi-HG for submit@debbugs.gnu.org; Tue, 21 Jan 2025 22:49:40 -0500 Received: from layka.disroot.org ([178.21.23.139]:36288) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1taRjy-0003yZ-3q for 75720@debbugs.gnu.org; Tue, 21 Jan 2025 22:49:22 -0500 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id 39F3B25A3E; Wed, 22 Jan 2025 04:49:17 +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 4J2iXQ0-E_7Y; Wed, 22 Jan 2025 04:49:12 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1737517752; bh=WQI5V4Ig0dZP1qjPGcD3yR4njMcgUvAK9kk2fuTlJzo=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=ENcBK5uA9REtJEHNUpUJTexw+UHx8Ci11NC+8jZ4IozTOtz1Kyi9SYhS41P71lakd 5Lv6pcqRv8uROo16NbpsGiT55iPaTcTfSo7+fupJhQx9AgQoZdjDVSkVD3kkw0K62m buKHuMLPmeDgvJ1rnHq1V8/ATwkDOKJ8S6lV/2IGCAmeh8IwEz9nFPZjS397gMR0R1 BZOkGz9VM3MMGHJLciOAUbK0V8oGOSWF5OmrzdkTAFgFJrC7fBZ/V27VSUHCoBtMvL turzwLN4fJ24xoojHI2bRZZvMiT4oqS/Q/5mm0zayk3Ghrn8qZmpwxn2tUE8c/emRK Fm4eH4otngvoQ== Date: Wed, 22 Jan 2025 09:18:04 +0530 Message-ID: <1b332885f07bbbb7a79cb10adee0eaa65429e013.1737511788.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: I2d89102a7bb8448464e6def9f052a70b45ac1624 --- 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 ccfd860b17..faa0e29b16 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -980,6 +980,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 4b0e170b79..2e93e3483f 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 + {