From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 20EA71582EF for ; Sat, 08 Feb 2025 08:18:03 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id F34623430D5 for ; Sat, 08 Feb 2025 08:18:02 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id E7DE81103CB; Sat, 08 Feb 2025 08:18:01 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id DDE591103CB for ; Sat, 08 Feb 2025 08:18:01 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 797B23430A8 for ; Sat, 08 Feb 2025 08:18:01 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id D63562654 for ; Sat, 08 Feb 2025 08:17:59 +0000 (UTC) From: "Andreas Sturmlechner" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" Message-ID: <1739002659.2edede5d416650df9c28628d57246a6233d1051e.asturm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: media-sound/cantata/, media-sound/cantata/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: media-sound/cantata/Manifest media-sound/cantata/cantata-3.3.0.ebuild media-sound/cantata/files/cantata-3.3.0-cdparanoia.patch media-sound/cantata/files/cantata-3.3.0-rm-vendor.patch media-sound/cantata/metadata.xml X-VCS-Directories: media-sound/cantata/files/ media-sound/cantata/ X-VCS-Committer: asturm X-VCS-Committer-Name: Andreas Sturmlechner X-VCS-Revision: 2edede5d416650df9c28628d57246a6233d1051e X-VCS-Branch: master Date: Sat, 08 Feb 2025 08:17:59 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 408889b7-f245-4a27-9997-417614922000 X-Archives-Hash: a0943026c119ca712e2fe257165419f4 commit: 2edede5d416650df9c28628d57246a6233d1051e Author: Nicolas PARLANT parhuet fr> AuthorDate: Fri Dec 20 10:01:50 2024 +0000 Commit: Andreas Sturmlechner gentoo org> CommitDate: Sat Feb 8 08:17:39 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2edede5d media-sound/cantata: add 3.3.0, qt6 fork switch to gh-fork nullobsi as initial CDrummond is archived plocales removed patches : * use KF6::solid instead of 'lite-vendored' (so unkeyword ~ppc) * fix cdparanoia detection useflags : * rm cdio. As upstream, use cdda for cdioparanoia with cdparanoia as fallback * add +taglib as it's required for almost all other useflags mentions : * taglib-2.0 is required by upstream, but package may still be built with taglib-1.13. Nonetheless, I don't see the real issue as there is no obstacle to taglib2's stabilization. * libvlc has been removed from useflags in the past. I didn’t add it as an alternative of qtmultimedia for playing stream. * breeze or oxygen icons are not strictly required. removed from rdep. Bug: https://bugs.gentoo.org/927073 Signed-off-by: Nicolas PARLANT parhuet.fr> Closes: https://github.com/gentoo/gentoo/pull/40475 Signed-off-by: Andreas Sturmlechner gentoo.org> media-sound/cantata/Manifest | 1 + media-sound/cantata/cantata-3.3.0.ebuild | 105 ++++++++++ .../cantata/files/cantata-3.3.0-cdparanoia.patch | 29 +++ .../cantata/files/cantata-3.3.0-rm-vendor.patch | 217 +++++++++++++++++++++ media-sound/cantata/metadata.xml | 4 +- 5 files changed, 354 insertions(+), 2 deletions(-) diff --git a/media-sound/cantata/Manifest b/media-sound/cantata/Manifest index b546787031ac..4000e6fa53d0 100644 --- a/media-sound/cantata/Manifest +++ b/media-sound/cantata/Manifest @@ -1 +1,2 @@ DIST cantata-2.5.0.tar.bz2 2487031 BLAKE2B ad77987aae205695393a4fc782dc442a467ca392ce60251efdc68d12d29b3d2f24270f462a0dbfe0c375905f9356b8c649ff139021629ba58fd7de80819fdba0 SHA512 42f28321d01e0bc3a315030066b738dead8f8f8caed8c1115729a3d370d68d9d845f00576fc81ddba694bba6a4ae57c3f7de714b2e39874458548c3e5bb8b2d2 +DIST cantata-3.3.0.tar.gz 4783803 BLAKE2B 78995492080cacf4d5f01e923a71edb2208baa9238d269679f6ea0112cf06066295bbeb40b18439bcd45fea8079ea6c52422f5515ed6f0c1511f7942f3b96f15 SHA512 ec011a2e544a882c68a808d27752457e4702f20b0ed66124dcc10586c8f5cc975690a4fc7368abc2747fd4f603f19b787a45f5a664f3ace8bcc9f1f86369253e diff --git a/media-sound/cantata/cantata-3.3.0.ebuild b/media-sound/cantata/cantata-3.3.0.ebuild new file mode 100644 index 000000000000..5d5530e4499d --- /dev/null +++ b/media-sound/cantata/cantata-3.3.0.ebuild @@ -0,0 +1,105 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +DESCRIPTION="Featureful and configurable Qt client for the music player daemon (MPD)" +HOMEPAGE="https://github.com/nullobsi/cantata" +SRC_URI="https://github.com/nullobsi/cantata/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc64 ~x86" +IUSE="cdda cddb http-server mtp musicbrainz replaygain streaming +taglib udisks zeroconf" +REQUIRED_USE=" + cdda? ( taglib udisks || ( cddb musicbrainz ) ) + cddb? ( cdda taglib ) + mtp? ( taglib udisks ) + musicbrainz? ( cdda taglib ) + replaygain? ( taglib ) + udisks? ( taglib ) +" + +COMMON_DEPEND=" + dev-qt/qtbase:6[dbus,gui,network,sql,sqlite,widgets,xml] + dev-qt/qtsvg:6 + sys-libs/zlib + cdda? ( || ( + dev-libs/libcdio-paranoia + media-sound/cdparanoia + ) ) + cddb? ( media-libs/libcddb ) + mtp? ( media-libs/libmtp:= ) + musicbrainz? ( media-libs/musicbrainz:5= ) + replaygain? ( + media-libs/libebur128:= + media-sound/mpg123-base + media-video/ffmpeg:0= + ) + streaming? ( dev-qt/qtmultimedia:6 ) + taglib? ( >=media-libs/taglib-2:= ) + udisks? ( kde-frameworks/solid:6 ) + zeroconf? ( net-dns/avahi ) +" +RDEPEND="${COMMON_DEPEND} + dev-lang/perl[perl_features_ithreads] +" +DEPEND="${COMMON_DEPEND} + dev-qt/qtbase:6[concurrent] +" +BDEPEND=" + dev-qt/qttools:6[linguist] + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.3.0-rm-vendor.patch + # https://github.com/nullobsi/cantata/pull/51.patch + "${FILESDIR}"/${PN}-3.3.0-cdparanoia.patch +) + +src_prepare() { + cmake_src_prepare + + # Unbundle 3rd party libs + # keep knotifications : https://github.com/nullobsi/cantata/commit/719adb5 + rm -r 3rdparty/{ebur128,kcategorizedview,qtsingleapplication,qxt,solid-lite} || die +} + +src_configure() { + local mycmakeargs=( + # Buggy https://github.com/nullobsi/cantata/commit/18236 + -DENABLE_CATEGORIZED_VIEW=OFF + -DENABLE_CDPARANOIA=$(usex cdda) + -DENABLE_CDDB=$(usex cddb) + -DENABLE_CDIOPARANOIA=$(usex cdda) + -DENABLE_HTTP_SERVER=$(usex http-server) + -DENABLE_MTP=$(usex mtp) + -DENABLE_MUSICBRAINZ=$(usex musicbrainz) + -DENABLE_FFMPEG=$(usex replaygain) + -DENABLE_MPG123=$(usex replaygain) + -DENABLE_HTTP_STREAM_PLAYBACK=$(usex streaming) + -DENABLE_TAGLIB=$(usex taglib) + -DENABLE_DEVICES_SUPPORT=$(usex udisks) + -DENABLE_AVAHI=$(usex zeroconf) + -DENABLE_REMOTE_DEVICES=OFF + # use solid/udisks2 instead of udisks + -DENABLE_UDISKS2=ON + ) + + cmake_src_configure +} + +pkg_postinst() { + xdg_pkg_postinst + + has_version media-sound/mpd || \ + elog "An instance of media-sound/mpd, local or remote, is required to set up Cantata." + + if ! has_version app-misc/media-player-info; then + elog "Install app-misc/media-player-info to enable identification" + elog "and querying of portable media players" + fi +} diff --git a/media-sound/cantata/files/cantata-3.3.0-cdparanoia.patch b/media-sound/cantata/files/cantata-3.3.0-cdparanoia.patch new file mode 100644 index 000000000000..a06cc79310ff --- /dev/null +++ b/media-sound/cantata/files/cantata-3.3.0-cdparanoia.patch @@ -0,0 +1,29 @@ +https://github.com/nullobsi/cantata/pull/51.patch +diff --git a/cmake/FindCDParanoia.cmake b/cmake/FindCDParanoia.cmake +index c5eaf4a7..d145d78c 100644 +--- a/cmake/FindCDParanoia.cmake ++++ b/cmake/FindCDParanoia.cmake +@@ -43,6 +43,8 @@ The following cache variables may also be set: + The directory containing ``cdda_interface.h``. + #]===] + ++include(CheckCSourceCompiles) ++ + # First use PKG-Config as a starting point. + find_package(PkgConfig) + if(PKG_CONFIG_FOUND) +@@ -96,6 +98,7 @@ if(CDParanoia_FOUND) + ) + endif () + if(NOT TARGET CDDA::Interface) ++ add_library(CDDA::Interface UNKNOWN IMPORTED) + set_target_properties(CDDA::Interface PROPERTIES + IMPORTED_LOCATION "${CDParanoia_INTERFACE_LIBRARY}" + INTERFACE_COMPILE_OPTIONS "${PC_CDParanoia_CFLAGS_OTHER}" +@@ -118,4 +121,4 @@ mark_as_advanced( + CDParanoia_INTERFACE_INCLUDE_DIR + CDParanoia_PARANOIA_LIBRARY + CDParanoia_INTERFACE_LIBRARY +-) +\ No newline at end of file ++) diff --git a/media-sound/cantata/files/cantata-3.3.0-rm-vendor.patch b/media-sound/cantata/files/cantata-3.3.0-rm-vendor.patch new file mode 100644 index 000000000000..28f09623f38c --- /dev/null +++ b/media-sound/cantata/files/cantata-3.3.0-rm-vendor.patch @@ -0,0 +1,217 @@ +diff '--color=auto' -uNr a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2024-12-16 12:38:42.412438061 -0000 ++++ b/CMakeLists.txt 2024-12-16 12:42:48.608780120 -0000 +@@ -532,6 +532,9 @@ + ) + + if(ENABLE_CATEGORIZED_VIEW) ++ find_package(KF6ItemViews REQUIRED) ++ ADD_COMPILE_DEFINITIONS(cantata CAT_VIEW) ++ target_link_libraries(cantata PRIVATE KF6::ItemViews) + target_sources(cantata PRIVATE widgets/categorizedview.cpp) + endif() + if(ENABLE_SIMPLE_MPD_SUPPORT) +@@ -628,7 +630,8 @@ + # Cantata still links to taglib, even if external tag reader/writer is used, because JamendoService uses taglib for ID3 genres. + target_link_libraries(cantata PRIVATE TagLib::TagLib) + if(ENABLE_DEVICES_SUPPORT) +- target_link_libraries(cantata PRIVATE solidlite) ++ find_package(KF6Solid REQUIRED) ++ target_link_libraries(cantata PRIVATE KF6::Solid) + endif() + + if(FFMPEG_FOUND OR MPG123_FOUND) +@@ -646,7 +649,6 @@ + add_subdirectory(tags) + + if(ENABLE_DEVICES_SUPPORT) +- add_subdirectory(3rdparty/solid-lite) + if(MTP_FOUND) + target_sources(cantata PRIVATE devices/mtpdevice.cpp) + target_link_libraries(cantata PRIVATE MTP::MTP) +@@ -797,11 +799,6 @@ + install(TARGETS cantata) + endif() + +-if(ENABLE_CATEGORIZED_VIEW) +- add_subdirectory(3rdparty/kcategorizedview) +- target_link_libraries(cantata PRIVATE kcategorizedview) +-endif() +- + if(WIN32 OR APPLE OR HAIKU) + add_subdirectory(3rdparty/qtsingleapplication) + target_link_libraries(cantata PRIVATE qtsingleapplication) +diff '--color=auto' -uNr a/devices/audiocddevice.cpp b/devices/audiocddevice.cpp +--- a/devices/audiocddevice.cpp 2024-12-16 12:38:42.416438001 -0000 ++++ b/devices/audiocddevice.cpp 2024-12-16 12:39:03.128130278 -0000 +@@ -35,7 +35,7 @@ + #include "models/musiclibraryitemsong.h" + #include "models/playqueuemodel.h" + #include "mpd-interface/mpdconnection.h" +-#include "solid-lite/block.h" ++#include + #include "support/utils.h" + #include "widgets/icons.h" + #include +diff '--color=auto' -uNr a/devices/audiocddevice.h b/devices/audiocddevice.h +--- a/devices/audiocddevice.h 2024-12-16 12:38:42.416438001 -0000 ++++ b/devices/audiocddevice.h 2024-12-16 12:39:03.128130278 -0000 +@@ -27,7 +27,7 @@ + #include "device.h" + #include "gui/covers.h" + #include "http/httpserver.h" +-#include "solid-lite/opticaldrive.h" ++#include + #include + + class CddbInterface; +diff '--color=auto' -uNr a/devices/device.cpp b/devices/device.cpp +--- a/devices/device.cpp 2024-12-16 12:38:42.416438001 -0000 ++++ b/devices/device.cpp 2024-12-16 12:39:03.128130278 -0000 +@@ -46,11 +46,11 @@ + #include "models/musiclibrarymodel.h" + #include "mpd-interface/mpdparseutils.h" + #include "mpd-interface/song.h" +-#include "solid-lite/genericinterface.h" +-#include "solid-lite/opticaldisc.h" +-#include "solid-lite/portablemediaplayer.h" +-#include "solid-lite/storageaccess.h" +-#include "solid-lite/storagedrive.h" ++#include ++#include ++#include ++#include ++#include + #include "tags/tags.h" + #include "widgets/icons.h" + #endif// ENABLE_DEVICES_SUPPORT +diff '--color=auto' -uNr a/devices/device.h b/devices/device.h +--- a/devices/device.h 2024-12-16 12:38:42.416438001 -0000 ++++ b/devices/device.h 2024-12-16 12:39:03.128130278 -0000 +@@ -30,7 +30,7 @@ + #include "mpd-interface/song.h" + #ifdef ENABLE_DEVICES_SUPPORT + #include "deviceoptions.h" +-#include "solid-lite/device.h" ++#include + #endif + + class QWidget; +diff '--color=auto' -uNr a/devices/mtpdevice.h b/devices/mtpdevice.h +--- a/devices/mtpdevice.h 2024-12-16 12:38:42.416438001 -0000 ++++ b/devices/mtpdevice.h 2024-12-16 12:39:03.128130278 -0000 +@@ -27,7 +27,7 @@ + #include "config.h" + #include "fsdevice.h" + #include "mpd-interface/song.h" +-#include "solid-lite/portablemediaplayer.h" ++#include + #include + + class MusicLibraryItemRoot; +diff '--color=auto' -uNr a/devices/umsdevice.cpp b/devices/umsdevice.cpp +--- a/devices/umsdevice.cpp 2024-12-16 12:38:42.420437942 -0000 ++++ b/devices/umsdevice.cpp 2024-12-16 12:39:03.128130278 -0000 +@@ -25,7 +25,7 @@ + #include "actiondialog.h" + #include "devicepropertiesdialog.h" + #include "devicepropertieswidget.h" +-#include "solid-lite/storagedrive.h" ++#include + #include "support/icon.h" + #include "support/utils.h" + #include +diff '--color=auto' -uNr a/devices/umsdevice.h b/devices/umsdevice.h +--- a/devices/umsdevice.h 2024-12-16 12:38:42.420437942 -0000 ++++ b/devices/umsdevice.h 2024-12-16 12:39:03.128130278 -0000 +@@ -25,7 +25,7 @@ + #define UMSDEVICE_H + + #include "fsdevice.h" +-#include "solid-lite/storageaccess.h" ++#include + + class UmsDevice : public FsDevice { + Q_OBJECT +diff '--color=auto' -uNr a/models/devicesmodel.cpp b/models/devicesmodel.cpp +--- a/models/devicesmodel.cpp 2024-12-16 12:38:42.424437883 -0000 ++++ b/models/devicesmodel.cpp 2024-12-16 12:39:03.128130278 -0000 +@@ -42,14 +42,14 @@ + #if defined CDDB_FOUND || defined MusicBrainz5_FOUND + #include "devices/audiocddevice.h" + #endif +-#include "solid-lite/device.h" +-#include "solid-lite/deviceinterface.h" +-#include "solid-lite/devicenotifier.h" +-#include "solid-lite/opticaldisc.h" +-#include "solid-lite/portablemediaplayer.h" +-#include "solid-lite/storageaccess.h" +-#include "solid-lite/storagedrive.h" +-#include "solid-lite/storagevolume.h" ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include + #include "support/globalstatic.h" + #include "support/utils.h" + #include +diff '--color=auto' -uNr a/models/mpdlibrarymodel.cpp b/models/mpdlibrarymodel.cpp +--- a/models/mpdlibrarymodel.cpp 2024-12-16 12:38:42.424437883 -0000 ++++ b/models/mpdlibrarymodel.cpp 2024-12-16 12:48:07.420043294 -0000 +@@ -25,7 +25,9 @@ + #include "db/mpdlibrarydb.h" + #include "gui/covers.h" + #include "gui/settings.h" +-#include "kcategorizedview/kcategorizedsortfilterproxymodel.h" ++#ifdef CAT_VIEW ++#include ++#endif + #include "roles.h" + #include "support/configuration.h" + #include "support/globalstatic.h" +@@ -110,6 +112,7 @@ + } + return v; + } ++ #ifdef CAT_VIEW + case KCategorizedSortFilterProxyModel::CategoryDisplayRole: { + Item* item = static_cast(index.internalPointer()); + if (T_Album == item->getType()) { +@@ -125,6 +128,7 @@ + } + break; + } ++ #endif + } + return SqlLibraryModel::data(index, role); + } +diff '--color=auto' -uNr a/widgets/categorizedview.cpp b/widgets/categorizedview.cpp +--- a/widgets/categorizedview.cpp 2024-12-16 12:38:42.436437705 -0000 ++++ b/widgets/categorizedview.cpp 2024-12-16 12:39:03.132130217 -0000 +@@ -24,8 +24,8 @@ + #include "categorizedview.h" + #include "config.h" + #include "icons.h" +-#include "kcategorizedview/kcategorizedsortfilterproxymodel.h" +-#include "kcategorizedview/kcategorydrawer.h" ++#include ++#include + #include "support/utils.h" + #include + #include +diff '--color=auto' -uNr a/widgets/categorizedview.h b/widgets/categorizedview.h +--- a/widgets/categorizedview.h 2024-12-16 12:38:42.436437705 -0000 ++++ b/widgets/categorizedview.h 2024-12-16 12:39:03.132130217 -0000 +@@ -24,7 +24,7 @@ + #ifndef CATEGORIZEDVIEW_H + #define CATEGORIZEDVIEW_H + +-#include "kcategorizedview/kcategorizedview.h" ++#include + #include "treeview.h" + + class QIcon; diff --git a/media-sound/cantata/metadata.xml b/media-sound/cantata/metadata.xml index a6c3a69db3a1..4c29857ebbda 100644 --- a/media-sound/cantata/metadata.xml +++ b/media-sound/cantata/metadata.xml @@ -9,9 +9,9 @@ Use dev-libs/libcdio-paranoia for CD support (instead of cdparanoia) Enable internal HTTP server to play non-MPD files Enable ReplayGain support, for relative volume adjustments - Enable playback of MPD HTTP streams using LibVLC (media-video/vlc) + Enable playback of MPD HTTP streams using (dev-qt/qtmultimedia) - cdrummond/cantata + nullobsi/cantata