summaryrefslogtreecommitdiff
path: root/media-sound
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/Manifest.gzbin57386 -> 57394 bytes
-rw-r--r--media-sound/ardour/Manifest4
-rw-r--r--media-sound/ardour/ardour-8.10-r4.ebuild (renamed from media-sound/ardour/ardour-8.10-r3.ebuild)10
-rw-r--r--media-sound/ardour/ardour-9999.ebuild10
-rw-r--r--media-sound/ario/Manifest1
-rw-r--r--media-sound/ario/ario-1.6-r1.ebuild61
-rw-r--r--media-sound/bpmdetect/Manifest3
-rw-r--r--media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r2.ebuild (renamed from media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r1.ebuild)9
-rw-r--r--media-sound/bpmdetect/files/bpmdetect-0.7.0_pre20170810-fix-build-taglib2.patch23
-rw-r--r--media-sound/cantata/Manifest2
-rw-r--r--media-sound/cantata/cantata-2.5.0-r3.ebuild117
-rw-r--r--media-sound/cantata/files/cantata-2.5.0-fix-build-taglib2.patch42
-rw-r--r--media-sound/clementine/Manifest4
-rw-r--r--media-sound/clementine/clementine-1.4.0_rc2-r6.ebuild171
-rw-r--r--media-sound/clementine/clementine-9999.ebuild3
-rw-r--r--media-sound/clementine/files/clementine-1.4.0_rc2-fix-build-taglib2.patch188
-rw-r--r--media-sound/coquillo/Manifest3
-rw-r--r--media-sound/coquillo/coquillo-2.0.1-r1.ebuild (renamed from media-sound/coquillo/coquillo-2.0.1.ebuild)6
-rw-r--r--media-sound/coquillo/files/coquillo-2.0.1-fix-build-taglib2.patch9
-rw-r--r--media-sound/easytag/Manifest2
-rw-r--r--media-sound/easytag/easytag-2.4.3-r7.ebuild85
-rw-r--r--media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch202
-rw-r--r--media-sound/ezstream/Manifest2
-rw-r--r--media-sound/ezstream/ezstream-0.6.0-r3.ebuild (renamed from media-sound/ezstream/ezstream-0.6.0-r2.ebuild)4
-rw-r--r--media-sound/flacon/Manifest3
-rw-r--r--media-sound/flacon/files/flacon-9.0.0-no-man-compress.patch21
-rw-r--r--media-sound/flacon/flacon-10.0.0-r1.ebuild91
-rw-r--r--media-sound/gnomad/Manifest2
-rw-r--r--media-sound/gnomad/gnomad-2.9.6-r3.ebuild (renamed from media-sound/gnomad/gnomad-2.9.6-r2.ebuild)2
-rw-r--r--media-sound/gogglesmm/Manifest2
-rw-r--r--media-sound/gogglesmm/files/gogglesmm-1.2.1-fix-build-taglib2.patch357
-rw-r--r--media-sound/gogglesmm/gogglesmm-1.2.1-r3.ebuild53
-rw-r--r--media-sound/id3ted/Manifest2
-rw-r--r--media-sound/id3ted/files/id3ted-1.0-fix-build-taglib2.patch47
-rw-r--r--media-sound/id3ted/id3ted-1.0-r1.ebuild29
-rw-r--r--media-sound/mixxx/Manifest6
-rw-r--r--media-sound/mixxx/files/mixxx-2.3.6-fix-build-taglib2.patch14
-rw-r--r--media-sound/mixxx/mixxx-2.3.6-r1.ebuild162
-rw-r--r--media-sound/mixxx/mixxx-2.3.9999.ebuild5
-rw-r--r--media-sound/mixxx/mixxx-9999.ebuild4
-rw-r--r--media-sound/moc/Manifest2
-rw-r--r--media-sound/moc/moc-2.6_alpha3-r7.ebuild (renamed from media-sound/moc/moc-2.6_alpha3-r6.ebuild)4
-rw-r--r--media-sound/mp3unicode/Manifest3
-rw-r--r--media-sound/mp3unicode/files/mp3unicode-1.2.1-fix-build-taglib2.patch14
-rw-r--r--media-sound/mp3unicode/mp3unicode-1.2.1-r1.ebuild (renamed from media-sound/mp3unicode/mp3unicode-1.2.1.ebuild)12
-rw-r--r--media-sound/music-file-organizer/Manifest2
-rw-r--r--media-sound/music-file-organizer/music-file-organizer-1.0.3-r1.ebuild (renamed from media-sound/music-file-organizer/music-file-organizer-1.0.3.ebuild)6
-rw-r--r--media-sound/musique/Manifest2
-rw-r--r--media-sound/musique/files/musique-1.5-fix-build-taglib2.patch40
-rw-r--r--media-sound/musique/musique-1.5-r2.ebuild57
-rw-r--r--media-sound/ncmpcpp/Manifest8
-rw-r--r--media-sound/ncmpcpp/ncmpcpp-0.10.1-r1.ebuild (renamed from media-sound/ncmpcpp/ncmpcpp-0.10.1.ebuild)2
-rw-r--r--media-sound/ncmpcpp/ncmpcpp-0.9.2_p20221231.ebuild72
-rw-r--r--media-sound/ncmpcpp/ncmpcpp-0.9.2_p20240724.ebuild74
-rw-r--r--media-sound/ncmpcpp/ncmpcpp-9999.ebuild2
-rw-r--r--media-sound/nickvision-tagger/Manifest2
-rw-r--r--media-sound/nickvision-tagger/nickvision-tagger-2022.11.2-r1.ebuild (renamed from media-sound/nickvision-tagger/nickvision-tagger-2022.11.2.ebuild)4
-rw-r--r--media-sound/qmmp/Manifest6
-rw-r--r--media-sound/qmmp/metadata.xml3
-rw-r--r--media-sound/qmmp/qmmp-1.6.4-r1.ebuild (renamed from media-sound/qmmp/qmmp-1.6.4.ebuild)2
-rw-r--r--media-sound/qmmp/qmmp-9999.ebuild2
-rw-r--r--media-sound/qtagger/Manifest2
-rw-r--r--media-sound/qtagger/qtagger-1.0.1_p20150402-r1.ebuild (renamed from media-sound/qtagger/qtagger-1.0.1_p20150402.ebuild)4
-rw-r--r--media-sound/quimup/Manifest4
-rw-r--r--media-sound/quimup/files/quimup-1.4.4-fix-build-taglib2.patch50
-rw-r--r--media-sound/quimup/quimup-1.4.4-r1.ebuild42
-rw-r--r--media-sound/quimup/quimup-2.1.0.ebuild39
-rw-r--r--media-sound/strawberry/Manifest4
-rw-r--r--media-sound/strawberry/strawberry-1.2.3-r1.ebuild (renamed from media-sound/strawberry/strawberry-1.2.3.ebuild)2
-rw-r--r--media-sound/strawberry/strawberry-9999.ebuild2
-rw-r--r--media-sound/taginfo/Manifest1
-rw-r--r--media-sound/taginfo/taginfo-1.2-r3.ebuild26
-rw-r--r--media-sound/vimpc/Manifest4
-rw-r--r--media-sound/vimpc/vimpc-0.09.2-r3.ebuild (renamed from media-sound/vimpc/vimpc-0.09.2-r2.ebuild)4
-rw-r--r--media-sound/vimpc/vimpc-9999.ebuild2
-rw-r--r--media-sound/yarock/Manifest3
-rw-r--r--media-sound/yarock/files/yarock-1.4.0-fix-build-taglib2.patch44
-rw-r--r--media-sound/yarock/yarock-1.4.0-r4.ebuild (renamed from media-sound/yarock/yarock-1.4.0-r3.ebuild)8
78 files changed, 1983 insertions, 338 deletions
diff --git a/media-sound/Manifest.gz b/media-sound/Manifest.gz
index 11dfb887c60f..5e83c152d43e 100644
--- a/media-sound/Manifest.gz
+++ b/media-sound/Manifest.gz
Binary files differ
diff --git a/media-sound/ardour/Manifest b/media-sound/ardour/Manifest
index a6dc0e42efee..99513b6e169b 100644
--- a/media-sound/ardour/Manifest
+++ b/media-sound/ardour/Manifest
@@ -3,6 +3,6 @@ AUX ardour-9.0.0-fix-clang-crash.patch 4511 BLAKE2B ad67f040fbb51f18f7feca562c6a
AUX ardour-9.0.0-fix-unlikely-buffer-overflow.patch 877 BLAKE2B 0bfe3d663bbf9d70b2616984913b3772a1adf168a1579a78f3e4fc6ac2ac27ab8b70dde7092ed4d250b9c7d65ff2771b19f14d4fc7d490ebde7e994aa4decf95 SHA512 7e03399a63ca95577a32f644406573145e8c88c7b39fe26b2aa106b5bc180dccc815252d3c9c2a623544e96b0046e18b38a5ea7fe3c6fe7edaa0dd9a5cb643eb
AUX ardour-9.0.0-properly-check-for-syscall.patch 709 BLAKE2B 628af149268643b0f46628367296bc28bdd80b59ffabcfe6584dfb811ab931a01d2b0207821ab0277a04170a2eb3728ef21e830a822ec02ce45a157b497b2906 SHA512 15afc522495ef7ce3678de4955091500dd7bc7ef87ffda02afc58235083e55cef058a54847fd7aac89d1217e2216c951dc31a1e50b829ee4e8f6ecc6cf4793fe
DIST Ardour-8.10.0.tar.bz2 17811275 BLAKE2B 5a0edc68c707ae1659b080cf543a4a3dc3397c91366e5c5e3084fe0095d983ba1170acc1fde49dbd6abd1b05325e2117b79fcf96c1d5c84b24d5ecc76a39cd64 SHA512 744e4bc73e35a758fce46c0035a11b430b70aa77503446a0118aba62b86b62fb293be1418ec8cfc0e1495a3a005bb71445f48661d9302a3b5bacc1a7f6c2874b
-EBUILD ardour-8.10-r3.ebuild 5318 BLAKE2B 633e55ab7f87025f64af52c97ae2bc098053c6aa921fecd39d1fdc69bc8a934a262032e1ab03f8c47649cc78a820bbdadcbd3ac649a20c9f68da51f7d39b529b SHA512 6a1973bb83fed5537fb7d4ce0620fe266fc24ec7154a04c2eb5f9f086f568984492b3739b710605766e411d89ea28e93c35c24cba8e80486ca29039e3b3d34d3
-EBUILD ardour-9999.ebuild 5150 BLAKE2B dc3d456ef39ed244244ceeafea10a6e6c841638f3c1b8a8608990f69d6e96fe10d822a3e59edb00d743090471d4c78461250189bac4838ac8144862a977090a9 SHA512 aed242f55912801b1ded17e06fd1c2666d11d2254c1d142bb8d8fd861742176922e391b095d063701fc26e0a76315d42913656832fa4a3e91d844625f786a1e5
+EBUILD ardour-8.10-r4.ebuild 5329 BLAKE2B c15a037e91904fb1d9f02fc9c3d4089cdbf55c8c9e2dee81f2afdb078e13ca8884380b833cfc01f396cba949fbba381d001674559f1d2e296c0e5bb43674a45e SHA512 5cdb04b34515406a613fe48d595bed6f76c5e134ec34eec51f01bf8b84227ebc4689720ec7b25e510bbf3f72ffac109f32a948ecdc6676af26840863ac1c4f4a
+EBUILD ardour-9999.ebuild 5161 BLAKE2B c2424dcf49e79e50eb125a84a4ecc6cdee73b47dfe0998bad6026e81e201ad294f2d38d7c807b9b2250cc89a5734dff2c25409f42db0548f393b3c69864031c3 SHA512 f6e255376e0ec52f705fb7012fb93c4ca6931d198a1724ee5aa7df326f16d5169aa3ef69c296ce53bc01f0cc21225b70406d6e91d938d2c509f9aabe5da1c7a6
MISC metadata.xml 451 BLAKE2B 0ed571ca79f0d4b92239239982f04abf725365df169290e4a02f6d8f580cf801f70d8bc93414b4549c8172ff43864d5c49fa987caeec58e1b2331ffe01a69ae6 SHA512 504bd817356c7ee57c64193584b3fc5b3bc70f5224d5a531ac5ecf8fb974728639e75b77bb9e7c5ad77cf6099123361b9ec6211b855edb4761acd95b8cb7abcb
diff --git a/media-sound/ardour/ardour-8.10-r3.ebuild b/media-sound/ardour/ardour-8.10-r4.ebuild
index 40c4702cd588..b6e3201bbb13 100644
--- a/media-sound/ardour/ardour-8.10-r3.ebuild
+++ b/media-sound/ardour/ardour-8.10-r4.ebuild
@@ -15,9 +15,9 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://git.ardour.org/ardour/ardour.git"
inherit git-r3
else
- KEYWORDS="amd64 ~loong ~x86"
SRC_URI="https://dev.gentoo.org/~fordfrog/distfiles/Ardour-${PV}.0.tar.bz2"
S="${WORKDIR}/Ardour-${PV}.0"
+ KEYWORDS="amd64 ~loong ~x86"
fi
LICENSE="GPL-2"
@@ -43,7 +43,7 @@ RDEPEND="
media-libs/libsoundtouch
media-libs/raptor:2
media-libs/rubberband
- media-libs/taglib
+ media-libs/taglib:=
media-libs/vamp-plugin-sdk
net-libs/libwebsockets
net-misc/curl
@@ -62,12 +62,12 @@ RDEPEND="
# !bundled-libs? ( media-sound/fluidsynth ) at least libltc is missing to be able to unbundle...
DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
+ jack? ( virtual/jack )"
+BDEPEND="${PYTHON_DEPS}
dev-util/itstool
sys-devel/gettext
virtual/pkgconfig
- doc? ( app-text/doxygen[dot] )
- jack? ( virtual/jack )"
+ doc? ( app-text/doxygen[dot] )"
PATCHES=(
"${FILESDIR}/${PN}-6.8-metadata.patch"
diff --git a/media-sound/ardour/ardour-9999.ebuild b/media-sound/ardour/ardour-9999.ebuild
index 86fc01e0c354..bbfe10e43adb 100644
--- a/media-sound/ardour/ardour-9999.ebuild
+++ b/media-sound/ardour/ardour-9999.ebuild
@@ -15,9 +15,9 @@ if [[ ${PV} == *9999* ]]; then
EGIT_REPO_URI="https://git.ardour.org/ardour/ardour.git"
inherit git-r3
else
- KEYWORDS="~amd64 ~loong ~x86"
SRC_URI="https://dev.gentoo.org/~fordfrog/distfiles/Ardour-${PV}.0.tar.bz2"
S="${WORKDIR}/Ardour-${PV}.0"
+ KEYWORDS="~amd64 ~loong ~x86"
fi
LICENSE="GPL-2"
@@ -43,7 +43,7 @@ RDEPEND="
media-libs/libsoundtouch
media-libs/raptor:2
media-libs/rubberband
- media-libs/taglib
+ media-libs/taglib:=
media-libs/vamp-plugin-sdk
net-libs/libwebsockets
net-misc/curl
@@ -62,12 +62,12 @@ RDEPEND="
# !bundled-libs? ( media-sound/fluidsynth ) at least libltc is missing to be able to unbundle...
DEPEND="${RDEPEND}
- ${PYTHON_DEPS}
+ jack? ( virtual/jack )"
+BDEPEND="${PYTHON_DEPS}
dev-util/itstool
sys-devel/gettext
virtual/pkgconfig
- doc? ( app-text/doxygen[dot] )
- jack? ( virtual/jack )"
+ doc? ( app-text/doxygen[dot] )"
PATCHES=(
"${FILESDIR}/${PN}-6.8-metadata.patch"
diff --git a/media-sound/ario/Manifest b/media-sound/ario/Manifest
index 38b7614b4c77..308e791d6720 100644
--- a/media-sound/ario/Manifest
+++ b/media-sound/ario/Manifest
@@ -1,3 +1,4 @@
DIST ario-1.6.tar.gz 1151747 BLAKE2B 2a9a5d9c9e528f92a198270a4715a225d254a8fd6800004928ef39c4ed792bda2a82eefaa45824d5422598f9fe242b6b621768780655b009043cc3447d8d5643 SHA512 93057da62616e79f6ba6f7204fabac37417fb34c350b53eeea61508f4c65322fabaef7a9fdbe7beb8dcbf92c8f86f0d33caf1ffa0ad76de8050fe72d57408ec0
+EBUILD ario-1.6-r1.ebuild 1221 BLAKE2B 0ec34d27c9d98df76f93b3f516e319a86235cbed763846dfb8b3e86a26f81edb7da7aec4d44b163087e9de225195f57469cc893cc79842283ecbb4d2cdd501dd SHA512 c9ed7cd1972275937905095943a2daf9d3d265d756b1e576d93a11c49ffed953bddb830a20d199cbf7ec190e43d914eba67959f3ce916449e72397dead7c2263
EBUILD ario-1.6.ebuild 1216 BLAKE2B a13c47e2753bce97b3dab888d51a8b44ce84bb402edbc760e28877f764fb7125ff5df0d4d7f71aeacd7f4cd5e834814455edd7b71bb07f73fab4968003f0d141 SHA512 a1e2f10ee06b89f30dc4c0d0540a7731c02f68edae83daf5b83ae6bdebd24d4cdbde7e6b6c488034cf2f2a191224cf323337a2ed0f11e100bfc22c71659e56b0
MISC metadata.xml 627 BLAKE2B c3bbbbaca12fcf216017c364a570f4a4adcc819f8c5fdf306591b0a0ddc7864ece4459becd0c0b5f3ccec9fde03f9630805470abb20f01aa7d750d336f64ac44 SHA512 1ebb1f829840e6e72bae47046a042f18ce742ee72536a2b3d2a28a902c4e4055108bae5cb6d5186b76a9eca7fc6dc2b517dd4bffda6db7b25200dbee63600f4e
diff --git a/media-sound/ario/ario-1.6-r1.ebuild b/media-sound/ario/ario-1.6-r1.ebuild
new file mode 100644
index 000000000000..be5056026f4c
--- /dev/null
+++ b/media-sound/ario/ario-1.6-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit xdg-utils
+
+DESCRIPTION="GTK client for MPD inspired by Rhythmbox but much lighter and faster"
+HOMEPAGE="https://ario-player.sourceforge.net"
+SRC_URI="https://downloads.sourceforge.net/${PN}-player/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="dbus debug +idle nls taglib zeroconf"
+
+RDEPEND="dev-libs/glib:2
+ dev-libs/libxml2:2
+ media-libs/libmpdclient
+ net-misc/curl
+ x11-libs/gtk+:3
+ dbus? ( dev-libs/dbus-glib )
+ taglib? ( media-libs/taglib:= )
+ zeroconf? ( net-dns/avahi )"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-util/intltool
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+DOCS=( AUTHORS )
+
+src_configure() {
+ local myconf=(
+ --disable-static
+ --disable-xmms2
+ --enable-libmpdclient2
+ --enable-search
+ --enable-playlists
+ --disable-deprecations
+ $(use_enable dbus)
+ $(use_enable debug)
+ $(use_enable idle mpdidle)
+ $(use_enable nls)
+ $(use_enable taglib)
+ $(use_enable zeroconf avahi)
+ )
+ econf "${myconf[@]}"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
diff --git a/media-sound/bpmdetect/Manifest b/media-sound/bpmdetect/Manifest
index 220922d407e0..4052c60509cf 100644
--- a/media-sound/bpmdetect/Manifest
+++ b/media-sound/bpmdetect/Manifest
@@ -1,4 +1,5 @@
+AUX bpmdetect-0.7.0_pre20170810-fix-build-taglib2.patch 614 BLAKE2B c853399c225c126897267caf204a8038f03a7ec1782cac760e4e49e6d0c7e65c9ce50bbd0d098a888011a64e3a18f9970460a8ec2c7cff356948e821b66e074d SHA512 10c9c4b18fa9967eb45314c5afebeca19be20ae0ef02ba92caf4fc7abd0b55bddf9bbb07918c4ccd2c174ff26eec6ba42203c92aa46f4e333d3b6730887c633f
AUX bpmdetect-0.7.0_pre20170810-gcc-11.patch 1088 BLAKE2B d904b707ab056ce4aed215746111793b066e00805dd3ed112987427f0b19cd418f2e95977ea6f8b3abe1fd22fb0d8c53dddf69677ef0de3f06da4ae09340dd04 SHA512 69fe2da55b51ef3d2f6b8e9f2b969e931ced80967db880b270fc6e27a02ed5c26ae13062fc6889574b59687ee1c4ae852df641d6cc29cc0537c8ec198ddce852
DIST bpmdetect-0.7.0_pre20170810.tar.gz 257777 BLAKE2B 8a6cfa43b70883d3bf03328c9e52a642140c5a25cd72ea5a9515394551e2ae108135b284b788e12a53e79cb0e2fd916d35a27d743558abb996ad5eb5db7beb45 SHA512 a2bbb67c2e5c46b08396e85fd4b91a5fa8622222929a4a67abdcb4587f04f1d8f40414800cb476f7aaa66d95571dd2d65332e48ed639b621a4351f70ab545779
-EBUILD bpmdetect-0.7.0_pre20170810-r1.ebuild 780 BLAKE2B 0d383b0340481dd2164ad080f6d2e1b8d5b031f39a610e5401a2138af31265f806295cf04f9ad139c68e53d47aafb0032689b95c8266e2d2aaecffe6adb2364b SHA512 7373012579b93f7a978785ec4add60b8047fc1d54724a6dc523e699e5dae9e480503efa6dba4ca4fadb21dd9ba59329e3423f61fc57c097ced35d4244d32f7f0
+EBUILD bpmdetect-0.7.0_pre20170810-r2.ebuild 827 BLAKE2B 81059e2771e2ff663e048764d81ccecaf1b9d4bb5ccb02ace55c255bc4e3fdd8e2f4306d7825c32e7677cb63930a502da5d86f9070a5b972c56880d4041a7bbb SHA512 8e20e02e063b0f3ecb3299855b52491eccd2a64741ef7aea8856d2bead65690c4250af135a9ec8aadfce95602e71f01c152829bd8d4cdf75f4331961550336ad
MISC metadata.xml 388 BLAKE2B eba55c1d468c10c246bd0fcc3a8fbfb2cfda2cc967570fe76f85448893ecbd2e5dc08e45615f78cf12c66dbba8d3e5018ea768d13d03c6d7f56e30c599152438 SHA512 c8ce9ce101789001aeb472a97e1544e59a115da123f2dca7c1e7579766718700dbc0807b49677dce94be4fbd2d96a28d8a6754567d8c826ce911d5604809a23d
diff --git a/media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r1.ebuild b/media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r2.ebuild
index 529bd2033449..603560c53402 100644
--- a/media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r1.ebuild
+++ b/media-sound/bpmdetect/bpmdetect-0.7.0_pre20170810-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,14 +24,17 @@ RDEPEND="
media-libs/libmad
media-libs/libvorbis
media-libs/portaudio
- media-libs/taglib
+ media-libs/taglib:=
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
"
-PATCHES=( "${FILESDIR}"/${P}-gcc-11.patch )
+PATCHES=(
+ "${FILESDIR}"/${P}-gcc-11.patch
+ "${FILESDIR}"/${P}-fix-build-taglib2.patch
+)
src_install() {
einstalldocs
diff --git a/media-sound/bpmdetect/files/bpmdetect-0.7.0_pre20170810-fix-build-taglib2.patch b/media-sound/bpmdetect/files/bpmdetect-0.7.0_pre20170810-fix-build-taglib2.patch
new file mode 100644
index 000000000000..fb40c7b2a938
--- /dev/null
+++ b/media-sound/bpmdetect/files/bpmdetect-0.7.0_pre20170810-fix-build-taglib2.patch
@@ -0,0 +1,23 @@
+https://github.com/Tatsh/bpmdetect/pull/4.patch
+--- a/src/trackoggvorbis.cpp
++++ b/src/trackoggvorbis.cpp
+@@ -223,7 +223,7 @@
+ if (tag == NULL) {
+ return;
+ }
+- tag->removeField("TBPM");
++ tag->removeFields("TBPM");
+ f.save();
+ //open();
+ #endif
+--- a/src/trackflac.cpp
++++ b/src/trackflac.cpp
+@@ -239,7 +239,7 @@
+ TagLib::FLAC::File f ( fname.c_str(), false );
+ TagLib::Ogg::XiphComment* xiph = f.xiphComment (true);
+ if (xiph != NULL) {
+- xiph->removeField ("TBPM");
++ xiph->removeFields ("TBPM");
+ }
+
+ TagLib::ID3v2::Tag* tag = f.ID3v2Tag (true);
diff --git a/media-sound/cantata/Manifest b/media-sound/cantata/Manifest
index a4bcbd3f7e04..13a130e1ee15 100644
--- a/media-sound/cantata/Manifest
+++ b/media-sound/cantata/Manifest
@@ -1,4 +1,6 @@
AUX cantata-2.2.0-headers.patch 1345 BLAKE2B b11ef0fa85f0e851a812ba2b106a854f7c429ac9f757bb0b33edeab9db8f05779815ca22918811852ba895529eb7e38466057215c124c3889b97a55752ad6428 SHA512 e9c1a3fc756bd3ed37bd8729433d48d4bb652d3fd7d95b3a6024b4b1d6cda72205d1326214b283377a1ee0b376fe1199c351006e8e640ed6ca9ed98f74c1b7df
+AUX cantata-2.5.0-fix-build-taglib2.patch 2182 BLAKE2B 053d5e8e2a111b0944732e8cc5240f78763b8bdeec0544e5e806ec10876eef608875f77264837cc83a6418fa2a397d46e4396f8bee8fd94c3e080594c963a68b SHA512 bb5c2a712c3bf5cdb1e274470b184b66e243debf768f7286d636b9556991a973c718e8cda693ae8a308d95c0d006dbffbfc13f34a6e8b83f25282aae150dff1b
DIST cantata-2.5.0.tar.bz2 2487031 BLAKE2B ad77987aae205695393a4fc782dc442a467ca392ce60251efdc68d12d29b3d2f24270f462a0dbfe0c375905f9356b8c649ff139021629ba58fd7de80819fdba0 SHA512 42f28321d01e0bc3a315030066b738dead8f8f8caed8c1115729a3d370d68d9d845f00576fc81ddba694bba6a4ae57c3f7de714b2e39874458548c3e5bb8b2d2
EBUILD cantata-2.5.0-r2.ebuild 3027 BLAKE2B 991603af35e393ce1c18cd05ae56877eb5427892ca5c32df9c4de59e9d53f7c3b92ac9eea482bc56096d8e37071896434f54d855613194581ad186d88ed2f650 SHA512 8c5d32d685400a295cbd290e142197f73b9471d44a2a8451a91736094227df6a66468016a6aa709a271006091cfebe6bde49976b88fd97d1819b1a62b5758d2b
+EBUILD cantata-2.5.0-r3.ebuild 3029 BLAKE2B b602e63e269cf030e5530e8dc1b7d9d8fe55174918b2f23ce2cadf5cd588b9ccaa0f9342eeed20e07a3a35e72279e23947d6e870d948e7f8893e87a46ae59f39 SHA512 77bc72e443b67c56a88da45df3baf7641a6ed99b159a617c763ee02eb8488ab92086d756e784675178a22647a744963d1b82527d2e3d00e87aa01bace9ceeaac
MISC metadata.xml 740 BLAKE2B 20184d3cb15c328f809d6d182cd2a9c93df568e0cdcdd74aec83e0a2d66424da412d7b1432212e70857af62c49da2ca390070b452d34e50ecf7f91d2ab782582 SHA512 f9d6d49ab1977f21a8014acc34cab6334c9e3e7d9524d021f821ee20ad38d55dc47274986759f458d1f495b91b4dce0a95e6ff4b23ddf8375514e8b7e8e0165c
diff --git a/media-sound/cantata/cantata-2.5.0-r3.ebuild b/media-sound/cantata/cantata-2.5.0-r3.ebuild
new file mode 100644
index 000000000000..139eb5c102bd
--- /dev/null
+++ b/media-sound/cantata/cantata-2.5.0-r3.ebuild
@@ -0,0 +1,117 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PLOCALES="cs da de en_GB es fi fr hu it ja ko nl pl pt_BR ru zh_CN"
+inherit cmake plocale xdg
+
+DESCRIPTION="Featureful and configurable Qt client for the music player daemon (MPD)"
+HOMEPAGE="https://github.com/CDrummond/cantata"
+SRC_URI="https://github.com/CDrummond/${PN}/releases/download/v${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
+IUSE="cdda cddb cdio http-server mtp musicbrainz replaygain streaming taglib udisks zeroconf"
+REQUIRED_USE="
+ ?? ( cdda cdio )
+ cdda? ( udisks || ( cddb musicbrainz ) )
+ cddb? ( || ( cdio cdda ) taglib )
+ cdio? ( udisks || ( cddb musicbrainz ) )
+ mtp? ( taglib udisks )
+ musicbrainz? ( || ( cdio cdda ) taglib )
+ replaygain? ( taglib )
+"
+# cantata has no tests
+RESTRICT="test"
+
+COMMON_DEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ sys-libs/zlib
+ virtual/libudev:=
+ cdda? ( media-sound/cdparanoia )
+ cddb? ( media-libs/libcddb )
+ cdio? ( dev-libs/libcdio-paranoia:= )
+ mtp? ( media-libs/libmtp:= )
+ musicbrainz? ( media-libs/musicbrainz:5= )
+ replaygain? (
+ media-libs/libebur128:=
+ media-sound/mpg123
+ media-video/ffmpeg:0=
+ )
+ streaming? ( dev-qt/qtmultimedia:5 )
+ taglib? (
+ media-libs/taglib:=[asf(+),mp4(+)]
+ udisks? ( sys-fs/udisks:2 )
+ )
+ zeroconf? ( net-dns/avahi )
+"
+RDEPEND="${COMMON_DEPEND}
+ dev-lang/perl[perl_features_ithreads]
+ || ( kde-frameworks/breeze-icons:* kde-frameworks/oxygen-icons:* )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-qt/qtconcurrent:5
+"
+BDEPEND="dev-qt/linguist-tools:5"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.2.0-headers.patch"
+ "${FILESDIR}/${PN}-2.5.0-fix-build-taglib2.patch"
+)
+
+src_prepare() {
+ remove_locale() {
+ rm "translations/${PN}_${1}".ts || die
+ }
+
+ cmake_src_prepare
+
+ # Unbundle 3rd party libs
+ rm -r 3rdparty/{ebur128,qtsingleapplication} || die
+
+ plocale_find_changes "translations" "${PN}_" ".ts"
+ plocale_for_each_disabled_locale remove_locale
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCANTATA_HELPERS_LIB_DIR="$(get_libdir)"
+ -DENABLE_CDPARANOIA=$(usex cdda)
+ -DENABLE_CDDB=$(usex cddb)
+ -DENABLE_CDIOPARANOIA=$(usex cdio)
+ -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
+ -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-2.5.0-fix-build-taglib2.patch b/media-sound/cantata/files/cantata-2.5.0-fix-build-taglib2.patch
new file mode 100644
index 000000000000..c0cc7490b18d
--- /dev/null
+++ b/media-sound/cantata/files/cantata-2.5.0-fix-build-taglib2.patch
@@ -0,0 +1,42 @@
+patch from fork as official is archived
+https://github.com/nullobsi/cantata/commit/45bac9eb3e99ed75b6539f92418556dac1c0193d.patch
+diff --git a/tags/tags.cpp b/tags/tags.cpp
+index ce86a1e8..5817dc1b 100644
+--- a/tags/tags.cpp
++++ b/tags/tags.cpp
+@@ -619,7 +619,7 @@ static void readAPETags(TagLib::APE::Tag *tag, Song *song, ReplayGain *rg, QImag
+ if (map.contains("COVER ART (FRONT)")) {
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+
+- TagLib::ByteVector item = map["COVER ART (FRONT)"].value();
++ TagLib::ByteVector item = map["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // Skip the filename
+
+ if (++pos > 0) {
+@@ -1301,7 +1301,7 @@ static void readTags(const TagLib::FileRef fileref, Song *song, ReplayGain *rg,
+ }
+ } else if (TagLib::RIFF::WAV::File *file = dynamic_cast< TagLib::RIFF::WAV::File * >(fileref.file())) {
+ if (file->tag()) {
+- readID3v2Tags(file->tag(), song, rg, img, lyrics, rating);
++ readID3v2Tags(file->ID3v2Tag(), song, rg, img, lyrics, rating);
+ }
+ #ifdef TAGLIB_ASF_FOUND
+ } else if (TagLib::ASF::File *file = dynamic_cast< TagLib::ASF::File * >(fileref.file())) {
+@@ -1419,7 +1419,7 @@ static bool writeTags(const TagLib::FileRef fileref, const Song &from, const Son
+ }
+ } else if (TagLib::RIFF::WAV::File *file = dynamic_cast< TagLib::RIFF::WAV::File * >(fileref.file())) {
+ if (file->tag()) {
+- changed=writeID3v2Tags(file->tag(), from, to, rg, img, rating) || changed;
++ changed=writeID3v2Tags(file->ID3v2Tag(), from, to, rg, img, rating) || changed;
+ }
+ #ifdef TAGLIB_ASF_FOUND
+ } else if (TagLib::ASF::File *file = dynamic_cast< TagLib::ASF::File * >(fileref.file())) {
+@@ -1455,7 +1455,7 @@ Song read(const QString &fileName)
+
+ readTags(fileref, &song, nullptr, nullptr, nullptr, nullptr);
+ song.file=fileName;
+- song.time=fileref.audioProperties() ? fileref.audioProperties()->length() : 0;
++ song.time=fileref.audioProperties() ? fileref.audioProperties()->lengthInSeconds() : 0;
+ return song;
+ }
+
diff --git a/media-sound/clementine/Manifest b/media-sound/clementine/Manifest
index 8507573f10c0..fafc27cd6d85 100644
--- a/media-sound/clementine/Manifest
+++ b/media-sound/clementine/Manifest
@@ -1,8 +1,10 @@
AUX clementine-1.4.0_rc2-absl.patch 353 BLAKE2B 8e33c6d539a60294186a674dade27f8220c197e85302ae026ecf54392a4a0ad4ff17f84ba2ef5e5e715bc12913f5dccc2e7b97d911865896c818c9b7bcf69d6f SHA512 b60721a347cd9fd703e1550e39552f0f0d9927130f4abe13122ca760aef78a9b0fcf242178e91f2fca809e98b95f0584095b010283d9e28d4a3b8b6c87cac6dc
AUX clementine-1.4.0_rc2-c17.patch 2261 BLAKE2B e66117f376b440d359eb40c3247c28ed662b4924e066385792cc3638ae2d0296b52b3c4dc5185507f21c51baac78e063ab79d72bbb7ce2df76e82f5ebffe10c0 SHA512 8a68a23956a08c08a4d7ee030606512f375c2039314268f6f615c424a1b3ab46b643af3afdf221a2d827f03962a1644bd5b1de5d4d70c53b1fd02625fc1026ea
+AUX clementine-1.4.0_rc2-fix-build-taglib2.patch 6949 BLAKE2B 748bae24f6cb7912cdab00766ab57b31a430401cd97d81f53aaeffe85ce060f1482604fa8b4bb36c915ef68c18b7acdde734fc490f7279bf7e5e5c92f81bc5d1 SHA512 7e6a62f10c5342bd0b7623ed4d464198ee14cf43241dd4598e4b5b0373d8fe4b7f9a0c1fb67fddb00d93ec0fce63da87208bf4a154cc3a1eb68d9453f5781663
AUX clementine-1.4.0_rc2-lz.patch 889 BLAKE2B ce04feb2b14c4b1e2e994672c0196100b35672da8b830c3ad1b8103f11327aefbccce97c5ad4253227b88939e16d6a6a88c8b3e3530e8589b1b9e28eb524361c SHA512 4bd24c05dd3d748d6b5f66070900fcef841144baaa8557bdc05a6128ee7b64f7b222344447944ef41d83694ec3f7618fd744d8e6053ec34f35b923b0a3db02a7
AUX clementine-1.4.0_rc2-projectm-dir.patch 1879 BLAKE2B dc2d19a17b6c255360ae961ff55c6598eae51f0b5b1f4147c8b13541121f8c6dd03d864ba04dbc594ec670c5872e356e3522aaef4f67804b6e7aeb438ec0bb9c SHA512 7d891b9c26dd62b1fdad5548de0976192934aa1a28d25501fb5ba896a81d663243196e076054de6678b69cae3b05df16209c0cfd9ee3b652fe051c7ad4f17a2e
DIST clementine-1.4.0_rc2.tar.gz 9073685 BLAKE2B a2376f1a895c651c2eb089419e20b9ce6050739f1342a6fdf1ebad0a14b65a08f56cc846eb79ad7facb77d6ee2cac74f9e374bd8e284a2a7f87d7c117779a08d SHA512 403093386efabd52e649c0e379abbf4873c4b2f8d0af72cda2b7e0255f90c60259f961045e7b51d0e5bf35425d678ff6b018c9191845ebbd156d9216d8bd7722
EBUILD clementine-1.4.0_rc2-r5.ebuild 4780 BLAKE2B 0adc837a75b8244f34ea2574b232f892832958e0f66428fd19a08ab0adc3a534a2d96fff6e80e25d7a0ae3c7e8813d75de6dd19830e2df511e4219c4a6d744f0 SHA512 b9f41774dc627b9f7bd57b66bcc1655c8b538da13bc1d9c69a56e423d2335d835de019d19efaab92e94d9df296e9f994eedf09bf644abe68b3cc29034aacf109
-EBUILD clementine-9999.ebuild 4645 BLAKE2B 547b791615201118087778002302d3c4758d20e4daa17cf659b6757c32638011ac3dbe4df87cc4ba9b71386914cf2da62eeb6ace82116f30b3216ea98f2395e2 SHA512 5a6e5e9378d7590118f87d265018d389d5dc266bf4d386d8c307c9e1002e41a7d516211063057f191a52b8bb1f07b33158bb8888772255a91c07d0909f264403
+EBUILD clementine-1.4.0_rc2-r6.ebuild 4825 BLAKE2B ab5b7a6a837dcd9970ca5f1e8d93c1be16affb42c51b8a1483745118be17a654b3048ec61c8e8a95b69fc8406e5ff960e50c4553f185e454d4a943c0d6ff4d58 SHA512 776d0e42549041f2b74b4155143b49ca2950075370add7f60438cc2d8efa5da2c2ccf6c0729ac37deffaff15f855b9e8a15bed1f04829b929bbda2ececdb0f02
+EBUILD clementine-9999.ebuild 4688 BLAKE2B 07e07c6db5c58a3c2a5019b0057943b6c1bd5c6db297f38d6142b1f8988c474bfd0e74af0f5b822f4831a36bdaf486d097001b5b93814e2c309342e0fe2e8bba SHA512 8778e2362bf0e9f7b86353c7ba8ad24190fac131df43e215f9688c7e04ac1a634d005137335bedef91527b90ba84ede920988cff5e931190565be49c154d76bc
MISC metadata.xml 1205 BLAKE2B 385d0f742772f036d1d0e03913aa1e38fe165dfeec7a6773fa5685992f9bbc348437bd759c24c54686d19f8dfbadc8bf208909788bc1e0dd957e47bb659fb832 SHA512 58d908699a52724401f167ae20fa05327aa4fd5b705856a43292c98e898b2f13d11c9db6fac6def35eede0c356071ff38e22883ca233a1005173ded18e69ca92
diff --git a/media-sound/clementine/clementine-1.4.0_rc2-r6.ebuild b/media-sound/clementine/clementine-1.4.0_rc2-r6.ebuild
new file mode 100644
index 000000000000..cdaced76e890
--- /dev/null
+++ b/media-sound/clementine/clementine-1.4.0_rc2-r6.ebuild
@@ -0,0 +1,171 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DESCRIPTION="Modern music player and library organizer based on Amarok 1.4 and Qt"
+HOMEPAGE="https://www.clementine-player.org https://github.com/clementine-player/Clementine"
+
+PLOCALES="af ar be bg bn br bs ca cs cy da de el en en_CA en_GB eo es et eu fa fi fr ga gl he he_IL hi hr hu hy ia id is it ja ka kk ko lt lv mk_MK mr ms my nb nl oc pa pl pt pt_BR ro ru si_LK sk sl sr sr@latin sv te tr tr_TR uk uz vi zh_CN zh_TW"
+
+inherit cmake flag-o-matic plocale virtualx xdg
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/clementine-player/Clementine.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/clementine-player/Clementine/archive/refs/tags/${PV/_}.tar.gz -> ${P}.tar.gz"
+ S="${WORKDIR}/Clementine-${PV/_}"
+ KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+fi
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="alsa box cdda +dbus debug dropbox googledrive ipod lastfm moodbar mtp projectm pulseaudio seafile skydrive test +udisks wiimote"
+RESTRICT="!test? ( test )"
+
+REQUIRED_USE="
+ udisks? ( dbus )
+ wiimote? ( dbus )
+"
+
+COMMON_DEPEND="
+ dev-cpp/abseil-cpp:=
+ dev-db/sqlite:3
+ dev-libs/glib:2
+ dev-libs/protobuf:=
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5[ssl]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ media-libs/chromaprint:=
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ >=media-libs/libmygpo-qt-1.0.9[qt5(+)]
+ media-libs/taglib:=
+ sys-libs/zlib
+ x11-libs/libX11
+ alsa? ( media-libs/alsa-lib )
+ cdda? ( dev-libs/libcdio:= )
+ dbus? ( dev-qt/qtdbus:5 )
+ ipod? ( >=media-libs/libgpod-0.8.0 )
+ lastfm? ( >=media-libs/liblastfm-1.1.0_pre20150206 )
+ moodbar? ( sci-libs/fftw:3.0= )
+ mtp? ( >=media-libs/libmtp-1.0.0:= )
+ projectm? (
+ media-libs/glew:=
+ >=media-libs/libprojectm-3.1.12:0=
+ virtual/opengl
+ )
+ pulseaudio? ( media-libs/libpulse )
+"
+RDEPEND="${COMMON_DEPEND}
+ media-plugins/gst-plugins-meta:1.0
+ media-plugins/gst-plugins-soup:1.0
+ media-plugins/gst-plugins-taglib:1.0
+ mtp? ( gnome-base/gvfs[mtp] )
+ udisks? ( sys-fs/udisks:2 )
+"
+DEPEND="${COMMON_DEPEND}
+ dev-libs/boost
+ dev-libs/libxml2
+ dev-qt/qtopengl:5
+ dev-qt/qtxml:5
+ virtual/glu
+ box? ( dev-cpp/sparsehash )
+ dropbox? ( dev-cpp/sparsehash )
+ googledrive? ( dev-cpp/sparsehash )
+ seafile? ( dev-cpp/sparsehash )
+ skydrive? ( dev-cpp/sparsehash )
+"
+BDEPEND="
+ >=dev-cpp/gtest-1.8.0
+ dev-qt/linguist-tools:5
+ sys-devel/gettext
+ virtual/pkgconfig
+ test? (
+ dev-qt/qttest:5
+ gnome-base/gsettings-desktop-schemas
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/clementine-1.4.0_rc2-lz.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-c17.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-absl.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-projectm-dir.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-fix-build-taglib2.patch"
+)
+
+DOCS=( Changelog README.md )
+
+src_prepare() {
+ plocale_find_changes "src/translations" "" ".po"
+
+ cmake_src_prepare
+ # some tests fail or hang
+ sed -i \
+ -e '/add_test_file(translations_test.cpp/d' \
+ tests/CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/find_package.*Qt5/s:\ Test::" -i CMakeLists.txt || die
+ cmake_comment_add_subdirectory tests
+ fi
+
+ rm -r 3rdparty/{libmygpo-qt,libmygpo-qt5,taglib} || die
+}
+
+src_configure() {
+ # spotify is not in portage
+ local mycmakeargs=(
+ -DBUILD_WERROR=OFF
+ # avoid automagically enabling of ccache (bug #611010)
+ -DCCACHE_EXECUTABLE=OFF
+ -DENABLE_BREAKPAD=OFF #< disable crash reporting
+ -DENABLE_GIO=ON
+ -DENABLE_SPOTIFY=OFF
+ -DENABLE_SPOTIFY_BLOB=OFF
+ -DUSE_SYSTEM_GMOCK=ON
+ -DUSE_SYSTEM_PROJECTM=ON
+ -DBUNDLE_PROJECTM_PRESETS=OFF
+ -DLINGUAS="$(plocale_get_locales)"
+ -DENABLE_BOX="$(usex box)"
+ -DENABLE_AUDIOCD="$(usex cdda)"
+ -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=$(usex !dbus)
+ -DENABLE_DROPBOX="$(usex dropbox)"
+ -DENABLE_GOOGLE_DRIVE="$(usex googledrive)"
+ -DENABLE_LIBGPOD="$(usex ipod)"
+ -DENABLE_LIBLASTFM="$(usex lastfm)"
+ -DENABLE_MOODBAR="$(usex moodbar)"
+ -DENABLE_LIBMTP="$(usex mtp)"
+ -DENABLE_VISUALISATIONS="$(usex projectm)"
+ -DENABLE_SEAFILE="$(usex seafile)"
+ -DENABLE_SKYDRIVE="$(usex skydrive)"
+ -DENABLE_LIBPULSE="$(usex pulseaudio)"
+ -DENABLE_UDISKS2="$(usex udisks)"
+ -DENABLE_WIIMOTEDEV="$(usex wiimote)"
+ "$(cmake_use_find_package alsa ALSA)"
+ -DGENTOO_FIX_ABSL_LIBS="$(test-flags-CCLD -labsl_log_internal_check_op -labsl_log_internal_message)"
+ )
+
+ use !debug && append-cppflags -DQT_NO_DEBUG_OUTPUT
+
+ cmake_src_configure
+}
+
+src_test() {
+ cd "${CMAKE_BUILD_DIR}" || die
+ virtx cmake_build clementine_test
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+
+ elog "Note that list of supported formats is controlled by media-plugins/gst-plugins-meta "
+ elog "USE flags. You may be interested in setting aac, flac, mp3, ogg or wavpack USE flags "
+ elog "depending on your preferences"
+}
diff --git a/media-sound/clementine/clementine-9999.ebuild b/media-sound/clementine/clementine-9999.ebuild
index 0636103d29fd..a09833cc5cc0 100644
--- a/media-sound/clementine/clementine-9999.ebuild
+++ b/media-sound/clementine/clementine-9999.ebuild
@@ -45,7 +45,7 @@ COMMON_DEPEND="
media-libs/gstreamer:1.0
media-libs/gst-plugins-base:1.0
>=media-libs/libmygpo-qt-1.0.9[qt5(+)]
- >=media-libs/taglib-1.11.1_p20181028
+ media-libs/taglib:=
sys-libs/zlib
x11-libs/libX11
alsa? ( media-libs/alsa-lib )
@@ -96,6 +96,7 @@ PATCHES=(
"${FILESDIR}/clementine-1.4.0_rc2-c17.patch"
"${FILESDIR}/clementine-1.4.0_rc2-absl.patch"
"${FILESDIR}/clementine-1.4.0_rc2-projectm-dir.patch"
+ "${FILESDIR}/clementine-1.4.0_rc2-fix-build-taglib2.patch"
)
DOCS=( Changelog README.md )
diff --git a/media-sound/clementine/files/clementine-1.4.0_rc2-fix-build-taglib2.patch b/media-sound/clementine/files/clementine-1.4.0_rc2-fix-build-taglib2.patch
new file mode 100644
index 000000000000..0c26343c7bf0
--- /dev/null
+++ b/media-sound/clementine/files/clementine-1.4.0_rc2-fix-build-taglib2.patch
@@ -0,0 +1,188 @@
+https://github.com/clementine-player/Clementine/commit/e9c09b1c4054925fa6366233cb44d4d0a543258f.patch
+compatibility added with taglib1
+--- a/ext/libclementine-tagreader/cloudstream.cpp
++++ b/ext/libclementine-tagreader/cloudstream.cpp
+@@ -91,7 +91,11 @@
+ clear();
+ }
+
++#if (TAGLIB_MAJOR_VERSION == 2)
++TagLib::ByteVector CloudStream::readBlock(size_t length) {
++#else
+ TagLib::ByteVector CloudStream::readBlock(ulong length) {
++#endif
+ const uint start = cursor_;
+ const uint end = qMin(cursor_ + length - 1, length_ - 1);
+
+@@ -144,11 +148,19 @@
+ qLog(Debug) << Q_FUNC_INFO << "not implemented";
+ }
+
++#if (TAGLIB_MAJOR_VERSION == 2)
++void CloudStream::insert(const TagLib::ByteVector&, TagLib::offset_t, size_t) {
++#else
+ void CloudStream::insert(const TagLib::ByteVector&, ulong, ulong) {
++#endif
+ qLog(Debug) << Q_FUNC_INFO << "not implemented";
+ }
+
++#if (TAGLIB_MAJOR_VERSION == 2)
++void CloudStream::removeBlock(TagLib::offset_t, size_t) {
++#else
+ void CloudStream::removeBlock(ulong, ulong) {
++#endif
+ qLog(Debug) << Q_FUNC_INFO << "not implemented";
+ }
+
+@@ -159,7 +171,11 @@
+
+ bool CloudStream::isOpen() const { return true; }
+
++#if (TAGLIB_MAJOR_VERSION == 2)
++void CloudStream::seek(TagLib::offset_t offset, TagLib::IOStream::Position p) {
++#else
+ void CloudStream::seek(long offset, TagLib::IOStream::Position p) {
++#endif
+ switch (p) {
+ case TagLib::IOStream::Beginning:
+ cursor_ = offset;
+@@ -178,11 +194,19 @@
+
+ void CloudStream::clear() { cursor_ = 0; }
+
++#if (TAGLIB_MAJOR_VERSION == 2)
++TagLib::offset_t CloudStream::tell() const { return cursor_; }
++
++TagLib::offset_t CloudStream::length() { return length_; }
++
++void CloudStream::truncate(TagLib::offset_t) {
++#else
+ long CloudStream::tell() const { return cursor_; }
+
+ long CloudStream::length() { return length_; }
+
+ void CloudStream::truncate(long) {
++#endif
+ qLog(Debug) << Q_FUNC_INFO << "not implemented";
+ }
+
+--- a/ext/libclementine-tagreader/cloudstream.h
++++ b/ext/libclementine-tagreader/cloudstream.h
+@@ -35,6 +35,19 @@
+
+ // Taglib::IOStream
+ virtual TagLib::FileName name() const;
++#if (TAGLIB_MAJOR_VERSION == 2)
++ virtual TagLib::ByteVector readBlock(size_t length);
++ virtual void writeBlock(const TagLib::ByteVector&);
++ virtual void insert(const TagLib::ByteVector&, TagLib::offset_t, size_t);
++ virtual void removeBlock(TagLib::offset_t, size_t);
++ virtual bool readOnly() const;
++ virtual bool isOpen() const;
++ virtual void seek(TagLib::offset_t offset, TagLib::IOStream::Position p);
++ virtual void clear();
++ virtual TagLib::offset_t tell() const;
++ virtual TagLib::offset_t length();
++ virtual void truncate(TagLib::offset_t);
++#else
+ virtual TagLib::ByteVector readBlock(ulong length);
+ virtual void writeBlock(const TagLib::ByteVector&);
+ virtual void insert(const TagLib::ByteVector&, ulong, ulong);
+@@ -46,6 +59,7 @@
+ virtual long tell() const;
+ virtual long length();
+ virtual void truncate(long);
++#endif
+
+ google::sparsetable<char>::size_type cached_bytes() const {
+ return cache_.num_nonempty();
+--- a/ext/libclementine-tagreader/tagreader.cpp
++++ b/ext/libclementine-tagreader/tagreader.cpp
+@@ -198,7 +198,7 @@
+ // Find album artists
+ TagLib::APE::ItemListMap::ConstIterator it = items.find("ALBUM ARTIST");
+ if (it != items.end()) {
+- TagLib::StringList album_artists = it->second.toStringList();
++ TagLib::StringList album_artists = it->second.values();
+ if (!album_artists.isEmpty()) {
+ Decode(album_artists.front(), nullptr, song->mutable_albumartist());
+ }
+@@ -243,22 +243,22 @@
+ }
+
+ if (items.contains("BPM")) {
+- Decode(items["BPM"].toStringList().toString(", "), nullptr,
++ Decode(items["BPM"].values().toString(", "), nullptr,
+ song->mutable_performer());
+ }
+
+ if (items.contains("PERFORMER")) {
+- Decode(items["PERFORMER"].toStringList().toString(", "), nullptr,
++ Decode(items["PERFORMER"].values().toString(", "), nullptr,
+ song->mutable_performer());
+ }
+
+ if (items.contains("COMPOSER")) {
+- Decode(items["COMPOSER"].toStringList().toString(", "), nullptr,
++ Decode(items["COMPOSER"].values().toString(", "), nullptr,
+ song->mutable_composer());
+ }
+
+ if (items.contains("GROUPING")) {
+- Decode(items["GROUPING"].toStringList().toString(" "), nullptr,
++ Decode(items["GROUPING"].values().toString(" "), nullptr,
+ song->mutable_grouping());
+ }
+
+@@ -565,8 +565,8 @@
+ if (fileref->audioProperties()) {
+ song->set_bitrate(fileref->audioProperties()->bitrate());
+ song->set_samplerate(fileref->audioProperties()->sampleRate());
+- song->set_length_nanosec(fileref->audioProperties()->length() *
+- kNsecPerSec);
++ song->set_length_nanosec(fileref->audioProperties()->lengthInMilliseconds() *
++ kNsecPerMsec);
+ }
+
+ // Get the filetype if we can
+@@ -1376,9 +1376,15 @@
+ std::unique_ptr<TagLib::File> tag;
+ if (mime_type == "audio/mpeg" &&
+ title.endsWith(".mp3", Qt::CaseInsensitive)) {
++#if (TAGLIB_MAJOR_VERSION == 2)
++ tag.reset(new TagLib::MPEG::File(stream.get(), true,
++ TagLib::AudioProperties::Accurate,
++ TagLib::ID3v2::FrameFactory::instance()));
++#else
+ tag.reset(new TagLib::MPEG::File(stream.get(),
+ TagLib::ID3v2::FrameFactory::instance(),
+ TagLib::AudioProperties::Accurate));
++#endif
+ } else if (mime_type == "audio/mp4" ||
+ (mime_type == "audio/mpeg" &&
+ title.endsWith(".m4a", Qt::CaseInsensitive))) {
+@@ -1398,9 +1398,15 @@
+ TagLib::AudioProperties::Accurate));
+ } else if (mime_type == "application/x-flac" || mime_type == "audio/flac" ||
+ mime_type == "audio/x-flac") {
++#if (TAGLIB_MAJOR_VERSION == 2)
++ tag.reset(new TagLib::FLAC::File(stream.get(), true,
++ TagLib::AudioProperties::Accurate,
++ TagLib::ID3v2::FrameFactory::instance()));
++#else
+ tag.reset(new TagLib::FLAC::File(stream.get(),
+ TagLib::ID3v2::FrameFactory::instance(),
+ true, TagLib::AudioProperties::Accurate));
++#endif
+ } else if (mime_type == "audio/x-ms-wma") {
+ tag.reset(new TagLib::ASF::File(stream.get(), true,
+ TagLib::AudioProperties::Accurate));
+@@ -1431,7 +1431,7 @@
+ song->set_type(cpb::tagreader::SongMetadata_Type_STREAM);
+
+ if (tag->audioProperties()) {
+- song->set_length_nanosec(tag->audioProperties()->length() * kNsecPerSec);
++ song->set_length_nanosec(tag->audioProperties()->lengthInMilliseconds() * kNsecPerMsec);
+ }
+ return true;
+ }
diff --git a/media-sound/coquillo/Manifest b/media-sound/coquillo/Manifest
index 8865590b0eee..9e7eb726ba5e 100644
--- a/media-sound/coquillo/Manifest
+++ b/media-sound/coquillo/Manifest
@@ -1,3 +1,4 @@
+AUX coquillo-2.0.1-fix-build-taglib2.patch 253 BLAKE2B 4827e8f69e10825d2a2a268efff848c59cc982893d45d4d4acf786bd7756788c6c091f43c81e8349d018cc408999538f752b8a9ef7b7774713249ef1c9175e7a SHA512 c3a7f982e2b0e6002290a38e1bfaf2a93880caacaf288474d985116dfca558128e4377388a5b1cb732e8addf4358a5bb7740950b5d1404c0b7120af3420f32fc
DIST coquillo-2.0.1.tar.gz 76376 BLAKE2B a2f4742eefb8e09203106aa57257ebed343371c3276cab5b49f277d8f9ffd0f5aa242ac9337341dfdb798213604790c3891b403cfe8589902956b365c0ddde2c SHA512 6aeeca674180038089d3f1104cfe9d8d662ed88a6168b20c18932c4329ccfa895508c2e593cab274b51251e2b6b45ca5482c2385ce0e0ddc2b5b1859ee8a3eb5
-EBUILD coquillo-2.0.1.ebuild 731 BLAKE2B a55de8a3e70a8b87733911201e16eb13660c254279a5b4d764bb3b8b4311d56442523fe31d57bd20d49fd3c2cf38be252cacb55494adac57d6c1ae2eb75e57f7 SHA512 598e8ecbf02416f6da2e374c1137f94047d271e9c42ee2201cb40572ec5cd717f75546750f3a78a78df27dcd02e7fd752ad2f9af0266884f41b0e5af74db3216
+EBUILD coquillo-2.0.1-r1.ebuild 796 BLAKE2B b1798ef99251ba17a50fe242f9ff797156740b09110a584b6f8b630ebd03daeb61c89c0dbc1d2c172b68c3a65b88d37d659261ecded1a411b6bed64a3b4b8369 SHA512 eb1dd11d5e03767d0d080bc9b99d68b5c5922886cb7909b5ffaad629bbce1be3908c6ee5644931e34f1188227e3497af8d2ec47d156c19054e8f0024fc18387f
MISC metadata.xml 260 BLAKE2B 9945ac40ee60ce67adf51840c3cc2d6d2743dffe4fd2ec965d300c709323f80eb5d35eaeb804414eebb2da1e954ee688067c05093b26499678de524b414ac4ec SHA512 e5b6a2a44cd2a4ea4fb1267eb8f635c079c022853443ad180ca12f2df84492f3ba34db45e4ff5e7e09262a74745f5c0aa04ebccd6f998cf19a6ea2ccd0627701
diff --git a/media-sound/coquillo/coquillo-2.0.1.ebuild b/media-sound/coquillo/coquillo-2.0.1-r1.ebuild
index 58e806189020..d638dd4c1613 100644
--- a/media-sound/coquillo/coquillo-2.0.1.ebuild
+++ b/media-sound/coquillo/coquillo-2.0.1-r1.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
inherit desktop qmake-utils
@@ -21,10 +21,12 @@ DEPEND="
dev-qt/qtnetwork:5
dev-qt/qtwidgets:5
media-libs/musicbrainz:5=
- media-libs/taglib
+ media-libs/taglib:=
"
RDEPEND="${DEPEND}"
+PATCHES=( "${FILESDIR}"/${PN}-2.0.1-fix-build-taglib2.patch )
+
src_configure() {
eqmake5
}
diff --git a/media-sound/coquillo/files/coquillo-2.0.1-fix-build-taglib2.patch b/media-sound/coquillo/files/coquillo-2.0.1-fix-build-taglib2.patch
new file mode 100644
index 000000000000..62303e0919b8
--- /dev/null
+++ b/media-sound/coquillo/files/coquillo-2.0.1-fix-build-taglib2.patch
@@ -0,0 +1,9 @@
+https://github.com/sjuvonen/coquillo/pull/12.patch
+--- a/src/crawler/tag/xiphcomment.cpp
++++ b/src/crawler/tag/xiphcomment.cpp
+@@ -1,4 +1,5 @@
+
++#include <taglib/taglib.h>
+ #include <taglib/xiphcomment.h>
+ #include <QImage>
+ #include "xiphcomment.hpp"
diff --git a/media-sound/easytag/Manifest b/media-sound/easytag/Manifest
index bfd86c65326a..606f01e14837 100644
--- a/media-sound/easytag/Manifest
+++ b/media-sound/easytag/Manifest
@@ -1,4 +1,6 @@
+AUX easytag-2.4.3-fix-build-taglib2.patch 6569 BLAKE2B a1486a91e418ca3701a4bd25c57979c07f5bf0fce69e2c4abeb72c1bf8654667cc64cc3d3920470aca2ae4ad7a37fbcb0bd8cb7ac53ed893c149ac923e940bdb SHA512 ad08cf0ed12ffecce4fe67eed05cb7850f984c7c5d66954d518f7cdb2ab0a3716d896b0fa01bd273fe92a5abe97f01d71eba17dabbae867501a7534c9150dbff
AUX easytag-2.4.3-ogg-corruption.patch 7233 BLAKE2B e0123a9d195a85d80136fc831cdfe1a870346a2f0cf0213a53e0ef51bc82e72db390898df0c8d02ba8865c3571e5d2f8b8faafe0b3750b6cd123e3fe065cc65f SHA512 f25cedb0f09edf987317f395133195f115549503a6c02edfce7e49f1f24d2e5d01920c9b48f41addb2b632d68bb329cbdefc25aec4e56239daa4f7980d33bd10
DIST easytag-2.4.3.tar.xz 1381084 BLAKE2B 22358cd15e53a51f2786ad2a62e5d9eea78e9c8b8127d2820dbd5657d734a9a0e694a6d180ad730b87c8c236e3d3396c9ea4c651df4080d0f4b4dc0e212b945c SHA512 ef596341772ce7da3b7feec2c82a20ca29d25c2496074c469be5b8dd75d2b2718e689310e0d61de53bc29a4f54ce9f853a336e1a35076046fd107afd28699087
EBUILD easytag-2.4.3-r6.ebuild 1971 BLAKE2B cc41ea0cdb02a1cf520f4cdf669189c8e693c3c4f65c6954534d43a0c941e76e9b48989c96a273ed5c320aaa2b9b0e435a086606bde7036dda925308ad8ece45 SHA512 835083104b3ada76d5b62ca026407c7f35210e0ccd8980f84475446740915c98934b240ea99877bfa48365ad46ee77f83eef1b6952560ff575d765e3d4634a7c
+EBUILD easytag-2.4.3-r7.ebuild 2021 BLAKE2B 768aad5ef327739c7115f11daa009368bc84a211c3ee09d8e53d7edcc6bab94cc4f7692ecf7379cf3511e4e90f00de9a07851d51e68c43965c59c6a8ccae0f3c SHA512 45eb6fc7bf802c40a7d7eaccbcb532ae9b67a11931666c00620af7db4d1f504baf1270772b6d895490151e4fbb12e9cc8adae9ca375f120232a34603638dc1b5
MISC metadata.xml 422 BLAKE2B d1415eb185e22013f0567c5553c886558d812f8edaa2c817f684d6f0c1bb04d8a7fa8fd63abf929d07e9d9f181d0dd64af3c2c2c77f5769e3a718530598d9529 SHA512 438a22ec60b4e7b2061fd6d7645b4a31b537c06fec22968b86496e85f98306227ff6025eb2afd8a0dbaa57929aa78b3f7bc4631f9232f1204e8efa3d6f16e238
diff --git a/media-sound/easytag/easytag-2.4.3-r7.ebuild b/media-sound/easytag/easytag-2.4.3-r7.ebuild
new file mode 100644
index 000000000000..594ad5101f03
--- /dev/null
+++ b/media-sound/easytag/easytag-2.4.3-r7.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit gnome2
+
+DESCRIPTION="GTK+ utility for editing MP2, MP3, MP4, FLAC, Ogg and other media tags"
+HOMEPAGE="https://wiki.gnome.org/Apps/EasyTAG"
+
+LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="flac mp3 mp4 opus speex test vorbis wavpack"
+# Disable nautilus support until https://gitlab.gnome.org/GNOME/easytag/-/issues/78
+# is solved
+RESTRICT="!test? ( test )"
+REQUIRED_USE="
+ opus? ( vorbis )
+ speex? ( vorbis )"
+
+RDEPEND="
+ >=dev-libs/glib-2.38:2
+ || (
+ media-libs/libcanberra-gtk3
+ media-libs/libcanberra[gtk3(-)]
+ )
+ >=x11-libs/gtk+-3.10:3
+ flac? ( >=media-libs/flac-1.3:= )
+ mp3? (
+ >=media-libs/id3lib-3.8.3-r8
+ >=media-libs/libid3tag-0.15.1b-r4:=
+ )
+ mp4? ( media-libs/taglib:=[mp4(+)] )
+ opus? (
+ >=media-libs/opus-1.1
+ >=media-libs/opusfile-0.4
+ )
+ speex? ( >=media-libs/speex-1.2_rc1 )
+ vorbis? (
+ >=media-libs/libogg-1.3.1
+ >=media-libs/libvorbis-1.3.4
+ )
+ wavpack? ( >=media-sound/wavpack-4.70 )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ app-text/docbook-xml-dtd:4.4
+ app-text/yelp-tools
+ dev-util/glib-utils
+ dev-libs/libxml2
+ dev-libs/libxslt
+ >=dev-util/intltool-0.50
+ >=sys-devel/gettext-0.18.3.2
+ virtual/pkgconfig
+ test? (
+ dev-libs/appstream-glib
+ >=dev-util/desktop-file-utils-0.22
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-ogg-corruption.patch
+ "${FILESDIR}"/${P}-fix-build-taglib2.patch
+)
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-Werror \
+ --disable-nautilus-actions \
+ $(use_enable test appdata-validate) \
+ $(use_enable test tests) \
+ $(use_enable mp3) \
+ $(use_enable mp3 id3v23) \
+ $(use_enable vorbis ogg) \
+ $(use_enable opus) \
+ $(use_enable speex) \
+ $(use_enable flac) \
+ $(use_enable mp4) \
+ $(use_enable wavpack)
+}
+
+src_install() {
+ gnome2_src_install
+ # https://gitlab.gnome.org/GNOME/easytag/-/issues/82
+ mv "${ED}"/usr/share/{appdata,metainfo} || die
+}
diff --git a/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch b/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch
new file mode 100644
index 000000000000..d27e5cdc9fe7
--- /dev/null
+++ b/media-sound/easytag/files/easytag-2.4.3-fix-build-taglib2.patch
@@ -0,0 +1,202 @@
+from https://gitlab.gnome.org/GNOME/easytag/-/merge_requests/16.patch
+compatibility added with taglib1
+
+diff '--color=auto' -uNr a/src/tags/gio_wrapper.cc b/src/tags/gio_wrapper.cc
+--- a/src/tags/gio_wrapper.cc
++++ b/src/tags/gio_wrapper.cc
+@@ -47,11 +47,15 @@
+ }
+
+ TagLib::ByteVector
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_InputStream::readBlock (ulong len)
++#else
+ GIO_InputStream::readBlock (TagLib::ulong len)
++#endif
+ {
+ if (error)
+ {
+- return TagLib::ByteVector::null;
++ return TagLib::ByteVector();
+ }
+
+ TagLib::ByteVector rv (len, 0);
+@@ -69,15 +73,25 @@
+ }
+
+ void
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_InputStream::insert (TagLib::ByteVector const &data,
++ TagLib::offset_t start,
++ size_t replace)
++#else
+ GIO_InputStream::insert (TagLib::ByteVector const &data,
+ TagLib::ulong start,
+ TagLib::ulong replace)
++#endif
+ {
+ g_warning ("%s", "Trying to write to read-only file!");
+ }
+
+ void
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_InputStream::removeBlock (TagLib::offset_t start, size_t len)
++#else
+ GIO_InputStream::removeBlock (TagLib::ulong start, TagLib::ulong len)
++#endif
+ {
+ g_warning ("%s", "Trying to write to read-only file!");
+ }
+@@ -200,11 +214,15 @@
+ }
+
+ TagLib::ByteVector
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_IOStream::readBlock (ulong len)
++#else
+ GIO_IOStream::readBlock (TagLib::ulong len)
++#endif
+ {
+ if (error)
+ {
+- return TagLib::ByteVector::null;
++ return TagLib::ByteVector();
+ }
+
+ gsize bytes = 0;
+@@ -238,9 +256,15 @@
+ }
+
+ void
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_IOStream::insert (TagLib::ByteVector const &data,
++ TagLib::offset_t start,
++ size_t replace)
++#else
+ GIO_IOStream::insert (TagLib::ByteVector const &data,
+ TagLib::ulong start,
+ TagLib::ulong replace)
++#endif
+ {
+ if (error)
+ {
+@@ -351,9 +375,15 @@
+ }
+
+ void
++#if (TAGLIB_MAJOR_VERSION == 2)
++GIO_IOStream::removeBlock (TagLib::offset_t start, size_t len)
++{
++ if (start + len >= (ulong)length ())
++#else
+ GIO_IOStream::removeBlock (TagLib::ulong start, TagLib::ulong len)
+ {
+ if (start + len >= (TagLib::ulong)length ())
++#endif
+ {
+ truncate (start);
+ return;
+diff '--color=auto' -uNr a/src/tags/gio_wrapper.h b/src/tags/gio_wrapper.h
+--- a/src/tags/gio_wrapper.h
++++ b/src/tags/gio_wrapper.h
+@@ -33,10 +33,17 @@
+ GIO_InputStream (GFile *file_);
+ virtual ~GIO_InputStream ();
+ virtual TagLib::FileName name () const;
++#if (TAGLIB_MAJOR_VERSION == 2)
++ virtual TagLib::ByteVector readBlock (ulong length);
++ virtual void writeBlock (TagLib::ByteVector const &data);
++ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0);
++ virtual void removeBlock (TagLib::offset_t start = 0, size_t length = 0);
++#else
+ virtual TagLib::ByteVector readBlock (TagLib::ulong length);
+ virtual void writeBlock (TagLib::ByteVector const &data);
+ virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0);
+ virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong length = 0);
++#endif
+ virtual bool readOnly () const;
+ virtual bool isOpen () const;
+ virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning);
+@@ -61,10 +68,17 @@
+ GIO_IOStream (GFile *file_);
+ virtual ~GIO_IOStream ();
+ virtual TagLib::FileName name () const;
++#if (TAGLIB_MAJOR_VERSION == 2)
++ virtual TagLib::ByteVector readBlock (ulong length);
++ virtual void writeBlock (TagLib::ByteVector const &data);
++ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0);
++ virtual void removeBlock (TagLib::offset_t start = 0, size_t len = 0);
++#else
+ virtual TagLib::ByteVector readBlock (TagLib::ulong length);
+ virtual void writeBlock (TagLib::ByteVector const &data);
+ virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0);
+ virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong len = 0);
++#endif
+ virtual bool readOnly () const;
+ virtual bool isOpen () const;
+ virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning);
+diff '--color=auto' -uNr a/src/tags/mp4_header.cc b/src/tags/mp4_header.cc
+--- a/src/tags/mp4_header.cc
++++ b/src/tags/mp4_header.cc
+@@ -105,7 +105,7 @@
+ ETFileInfo->bitrate = properties->bitrate ();
+ ETFileInfo->samplerate = properties->sampleRate ();
+ ETFileInfo->mode = properties->channels ();
+- ETFileInfo->duration = properties->length ();
++ ETFileInfo->duration = properties->lengthInSeconds ();
+
+ return TRUE;
+ }
+diff '--color=auto' -uNr a/src/tags/mp4_tag.cc b/src/tags/mp4_tag.cc
+--- a/src/tags/mp4_tag.cc
++++ b/src/tags/mp4_tag.cc
+@@ -222,7 +222,7 @@
+ FileTag->encoded_by = g_strdup (encodedbys.front ().toCString (true));
+ }
+
+- const TagLib::MP4::ItemListMap &extra_items = tag->itemListMap ();
++ const TagLib::MP4::ItemMap &extra_items = tag->itemMap ();
+
+ /* Album Artist */
+ #if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
+@@ -437,25 +437,12 @@
+ fields.insert ("ENCODEDBY", string);
+ }
+
+- TagLib::MP4::ItemListMap &extra_items = tag->itemListMap ();
+-
+ /* Album artist. */
+ if (!et_str_empty (FileTag->album_artist))
+ {
+ TagLib::String string (FileTag->album_artist, TagLib::String::UTF8);
+-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
+- /* No "ALBUMARTIST" support in TagLib until 1.10; use atom directly. */
+- extra_items.insert ("aART", TagLib::MP4::Item (string));
+-#else
+ fields.insert ("ALBUMARTIST", string);
+-#endif
+ }
+-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
+- else
+- {
+- extra_items.erase ("aART");
+- }
+-#endif
+
+ /***********
+ * Picture *
+@@ -491,12 +478,12 @@
+ TagLib::MP4::CoverArt art (f, TagLib::ByteVector((char *)data,
+ data_size));
+
+- extra_items.insert ("covr",
++ tag->setItem("covr",
+ TagLib::MP4::Item (TagLib::MP4::CoverArtList ().append (art)));
+ }
+ else
+ {
+- extra_items.erase ("covr");
++ tag->removeItem("covr");
+ }
+
+ tag->setProperties (fields);
diff --git a/media-sound/ezstream/Manifest b/media-sound/ezstream/Manifest
index 9081aa669c2d..0a0eba662ef0 100644
--- a/media-sound/ezstream/Manifest
+++ b/media-sound/ezstream/Manifest
@@ -1,5 +1,5 @@
AUX ezstream.confd 60 BLAKE2B 2b2d8a1bbfd6fbd4a196dc8eecc07939b9c85b6a6ffa0f138a51e6cab1a29080aae7a91bcbf4b628c6786612ea87da20fac01f1c118e965ef672f845b19372b9 SHA512 09f178f665d8677e3c75055028f975b98310fb2017ac0d69ae40b6417134ecec40ac90493fb861e1c46a2473fdd87bc088955032e62ddfbb8e201b306066d9c3
AUX ezstream.initd 633 BLAKE2B 32536c9fd48d9d1a77c8ba829b9aba135ca3339aed91f36f6bc90d2e89610a4d1eba0588d5dd90f7aa7b83f8f4737276178fc8cbae3b7db0cab4141e46106ea6 SHA512 684b56d3f828ce518d5fa1d5d9be64ef4b1d591fd0bed75d9842cc8d2ed79c8aab500d22465e02c60b8be5f1662462ff3a4b19a789ac807d290113cf29f6efd3
DIST ezstream-0.6.0.tar.gz 250448 BLAKE2B 18449d90e51a6880c6acf3d99fd449f666de811dec5dc964102d87b7d1d08dab01e3d9d8d959f4a456ba695464693fec3d990115cc6b6513fcde02c937dab1c1 SHA512 d6b621db85a0d56dcc54a8b7a0136c25342ec507f04ab397a53f46a74e85e94806e17d0a0a59e66096b5c0d97b7f98eaba95a50c1ca6c8d82aed11b854d0d33d
-EBUILD ezstream-0.6.0-r2.ebuild 844 BLAKE2B 110f6ba39753601b78b74ea487a340c13c197feeabeeed8eafbdd31e320dd2a802d9e92842fcf1cefa0a3d0d32becece7c761f094fdf3302314d8c9e33667056 SHA512 3ff1dc9f7465c1a172069aebec66581a5684bc72a95f3912eccad472e858ad168f5f24692c1f14eacebaf858b9410854605be895a91643a9c617e1cde3ce1fbd
+EBUILD ezstream-0.6.0-r3.ebuild 846 BLAKE2B e93acdfd30aa52d8498aba76a513ff0dd4c8670d91e20f40cb3519248a0016bd1ab673f0d8e92f5af1f9b9833b7230e3bb50d701a8ea5e740df33df808ee2bbb SHA512 2bbdf741deb24f14aa5165215fa98a373aae8a5c87ad6250dda046a57ea6e5ba513dba912933e3b3ea9663fb4b4bb0ade6409e7c89c80e09615bc939529c7195
MISC metadata.xml 250 BLAKE2B 3e6dae5d5f3b3ac412806dd8615a1975c7ea8a64bfd72ad54f2c93a9b24c19c620ac3e8b26e1f6cadec899443e138ee4fb7a82ecb83c784d0c03ee91854d8622 SHA512 2bfce2cf73aefce6dda06ea351cb93b2990b9543f48be1ae5406a5a5acf2c34faed1eb2ce715eb689eb50a9a1add5576b39232eb818c233f5a5589e16032aca8
diff --git a/media-sound/ezstream/ezstream-0.6.0-r2.ebuild b/media-sound/ezstream/ezstream-0.6.0-r3.ebuild
index d9cb6fb09888..deeabd1c31dd 100644
--- a/media-sound/ezstream/ezstream-0.6.0-r2.ebuild
+++ b/media-sound/ezstream/ezstream-0.6.0-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,7 @@ DEPEND="
dev-libs/libxml2
>=media-libs/libshout-2.2
!taglib? ( media-libs/libvorbis )
- taglib? ( media-libs/taglib )"
+ taglib? ( media-libs/taglib:= )"
RDEPEND="
${DEPEND}
net-misc/icecast"
diff --git a/media-sound/flacon/Manifest b/media-sound/flacon/Manifest
index d37003a0eebe..d848d540e8ea 100644
--- a/media-sound/flacon/Manifest
+++ b/media-sound/flacon/Manifest
@@ -1,9 +1,6 @@
AUX flacon-11.3.0-no-man-compress.patch 1401 BLAKE2B 29b6454a0e34e031c0bbd36990ea11cc37bc8e4923a26c3edb587a78ccdb969ff6577490bd01756d6b9e198bac833a2f6e949aef9f76e0f3e4070db066365763 SHA512 9b966f1abd557f5b2f02c198963f79d83ab8592e40ff9c30e3a45f5b46beade43afde2fcf617cba50f3bdea8a1971c80f3960bc3de8c37062667d56a328579cd
-AUX flacon-9.0.0-no-man-compress.patch 1425 BLAKE2B 9f21a5b8a8b2ec0986b0d5902b15ecfa5214ce1471f4a851e88feb07ef80e8d89617173c587128b6340d349afa087c46e6b787f6cc297a7c594d787b19a060f0 SHA512 7b80c99514bdd540737a773182e9213ef4027c529a6fdd3808c4d35baeec9c5ebb67d15f550cb8a38e37764f19e2a4b7d1cfba0cc0c3872dc4658b7158c9239a
-DIST flacon-10.0.0.tar.gz 3802889 BLAKE2B e99be9ad2da98e84455426df853bb38cecb91a6c66cb3f532459637adee97078fb034d3c5b5cc905b74756adbf6c11276f589d450c1506fba2dace264efe8b9c SHA512 55744b3ef46f298e8082ab172b8e0b5ad428ec3c965ae69befe7f9abb4e87417cf2373385240000471c92391d243ef3b33f25ae565c8e9497021d3b619a5ac1a
DIST flacon-11.3.0.tar.gz 4081613 BLAKE2B 791628fe40f49548d65b2a49f259d4ffaf42ba97f9674649669ceded7073fb805f277fefca1d3fffaae86438f9d7cff443dccbb6c8bef5e40f0eb60554c11db9 SHA512 e4b4f3876f4f647dafa21118c13482678c2766dce94b650142d7b2b21897d6e8f1f85601877b388c7f8554d5e57778de9a6db82ae38c1f089e7c2f88b1c497b8
DIST flacon-11.4.0.tar.gz 4095740 BLAKE2B 078bded28f114939ee2a003885e85a6259122ae0de95265a52de525202645d872550a773b49b7d37e3b479912bc6b31245532f71bd2020a954b227082c856589 SHA512 321f80c40b61e60e91b32d19a1f14dbdc9738aacd54e7ea8bf0a969daeeec3f663b119fd3973a2722b14b836bc8d6c16cd3f4b831c003a906f1d110db5caaeee
-EBUILD flacon-10.0.0-r1.ebuild 1975 BLAKE2B afc43cd1707b5de23f7e767db5471e82ab0a2ef09ce000a3573a80f0e479053e5de528a86abea6f4832a628e66c6f2f11507cc944bf9b33fb7c9745073800396 SHA512 0738a2bcb6067b26a54d7ff47a85a37107ce438176a022b14db1607d1bbf53ff10c15c417a643c7fde29cfe6dd62f904075afc060264390b04a4444a95b61d9a
EBUILD flacon-11.3.0.ebuild 2301 BLAKE2B 37abcf7220382bec39ec60ce157e2d89a4db6c413afd7cd16ac52214fd98492f0021ba8939dff0aad4ce9637253fbd9e1003ae4e13ab773bf100c6a86786b192 SHA512 16cfd59d37263b244bf990c15fffe4bfc374ff1f5f424ad7a8d48ea40d9af9b87e6c7f16fc4773d4910f624ceb660108d0a40dcc7fa8ee00dc115412e60d6f92
EBUILD flacon-11.4.0.ebuild 2280 BLAKE2B 23e239adfc37bb2aa2c92035d48ac4838c3ad5f7c6fc10efc499b0c1f2538e2f2a86e8d216dfeb980c4e85a4e30d0b4302a1aaa2d09acc7ffe58cf1bb184ef68 SHA512 41b8b12f83a3fac779eb83852c2187b0a2dca3dcc0f57ca8ce1ab22e511030cf5547f0c6b1990a4afb0f9e5b548ddd84318980b8eaa73e8693b1f0322feb0ec4
MISC metadata.xml 483 BLAKE2B 795d557d1298374afb1a7b7e944258091e5a1a33cbba44ffb89d2b41545a13bc079ea406012351256e9aa3be08aa0277adb6757e68ac5d55e3fd636bce5efca9 SHA512 3d744c253befad102285251d40d891aef8ddab615f095a717951706fd64ac12f4fc7191d1b5ce0c4e9c3870eec5b427fcf5158771349a4a8c5219f7b797386ac
diff --git a/media-sound/flacon/files/flacon-9.0.0-no-man-compress.patch b/media-sound/flacon/files/flacon-9.0.0-no-man-compress.patch
deleted file mode 100644
index 6ceff9bda276..000000000000
--- a/media-sound/flacon/files/flacon-9.0.0-no-man-compress.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/CMakeLists.txt.oirg b/CMakeLists.txt
-index f143d91..fd16a9b 100644
---- a/CMakeLists.txt.oirg
-+++ b/CMakeLists.txt
-@@ -302,14 +302,14 @@ if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
- set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME "Flacon")
- install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION Flacon.app/Contents/MacOS)
- install(FILES ${QM_FILES} DESTINATION Flacon.app/Contents/translations)
-- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/flacon.1.gz DESTINATION Flacon.app/Contents/Resources)
-+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/flacon.1 DESTINATION Flacon.app/Contents/Resources)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/Info.plist DESTINATION Flacon.app/Contents)
- install(FILES images/mainicon/Flacon.icns DESTINATION Flacon.app/Contents/Resources)
-
- else()
- install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin)
- install(FILES ${QM_FILES} DESTINATION ${TRANSLATIONS_DIR})
-- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/flacon.1.gz DESTINATION share/man/man1)
-+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/flacon.1 DESTINATION share/man/man1)
-
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.desktop DESTINATION "share/applications")
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/com.github.Flacon.metainfo.xml DESTINATION "share/metainfo")
diff --git a/media-sound/flacon/flacon-10.0.0-r1.ebuild b/media-sound/flacon/flacon-10.0.0-r1.ebuild
deleted file mode 100644
index 654d494065c9..000000000000
--- a/media-sound/flacon/flacon-10.0.0-r1.ebuild
+++ /dev/null
@@ -1,91 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-# Tests require lots of disk space
-CHECKREQS_DISK_BUILD=10G
-inherit check-reqs cmake optfeature virtualx xdg-utils
-
-DESCRIPTION="Extracts audio tracks from an audio CD image to separate tracks"
-HOMEPAGE="https://flacon.github.io/"
-SRC_URI="https://github.com/flacon/flacon/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 x86"
-IUSE="test"
-
-BDEPEND="
- dev-qt/linguist-tools:5
- virtual/pkgconfig
-"
-RDEPEND="
- app-i18n/uchardet
- dev-qt/qtcore:5
- dev-qt/qtgui:5
- dev-qt/qtnetwork:5
- dev-qt/qtwidgets:5
- media-libs/taglib
-"
-DEPEND="${RDEPEND}
- dev-qt/qtconcurrent:5
- test? (
- dev-qt/qttest:5
- media-libs/flac
- <=media-sound/mac-4.12
- media-sound/shntool
- media-sound/ttaenc
- media-sound/wavpack
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-9.0.0-no-man-compress.patch
-)
-
-RESTRICT="!test? ( test )"
-
-pkg_pretend() {
- use test && check-reqs_pkg_pretend
-}
-
-pkg_setup() {
- use test && check-reqs_pkg_setup
-}
-
-src_configure() {
- local mycmakeargs=(
- -DBUILD_TESTS="$(usex test)"
- )
- cmake_src_configure
-}
-
-src_test() {
- # All tests fail with enabled sandbox
- # TODO: Get all tests to pass
- # See bug: #831592
- local -x SANDBOX_ON=0
-
- virtx "${BUILD_DIR}/tests/${PN}_test" || die
-}
-
-pkg_postinst() {
- optfeature_header "${PN} optionally supports formats listed below."
- optfeature 'FLAC input and output support' media-libs/flac
- optfeature 'WavPack input and output support' media-sound/wavpack
- optfeature 'APE input support' media-sound/mac
- optfeature 'ALAC output support' media-sound/alac_decoder
- optfeature 'TTA input support' media-sound/ttaenc
- optfeature 'AAC output support' media-libs/faac
- optfeature 'MP3 output support' media-sound/lame
- optfeature 'Vorbis output support' media-sound/vorbis-tools
-
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
diff --git a/media-sound/gnomad/Manifest b/media-sound/gnomad/Manifest
index 83878f70d9cc..057c0fdb26a1 100644
--- a/media-sound/gnomad/Manifest
+++ b/media-sound/gnomad/Manifest
@@ -1,5 +1,5 @@
AUX gnomad-2.9.6-c99.patch 763 BLAKE2B e7859fad9f2bea1fa3ebc707c804ab5978bcd260b89f236a948a855a82560f9d26b0347443b833ca4ba82fb3995b291cdce19762f9dfd8250c857aac6ac23731 SHA512 e1b084318cf2647416730cadc6f16c7dad6185fa50fabd9d38bb7829d6627e104703336aca50b3ea6144b3bb8112f0ab0912e77bd28c581a9ebebdf96d8bf373
AUX gnomad-2.9.6-fno-common.patch 1621 BLAKE2B 7e5cffd644026bca5fe84090930535e2129be9135c1e5e97e5e4f92132026cc210321da7e0e300655c14906559888e15e4a1a13598b32831cfeeb262c199706c SHA512 97d9e3d08808a81c206ffa39bc914bc152fde781ede811ecdde3ab2257442466f4f5f792dfec6d65b9e78ed66cb07574bb036ece8895f68097e7f518b5060288
DIST gnomad2-2.9.6.tar.gz 318431 BLAKE2B 756345c1b27da5f41d46aaf2862d94a2a94cc91fece77eb5cd8428581773867a85e120e09e83337ddbf8d77a91bd7db09d50584190d9929be45bb3d94393b9eb SHA512 10f025ac38089ebc4a063ac25a262d3e2f6b72336c4566877fae311a873923b55d532d210fd2ec8a29013c06c806ddacc50f042546e4aaa5cf23228d09d854a1
-EBUILD gnomad-2.9.6-r2.ebuild 905 BLAKE2B 457358ca0c8147f4b926894f1d1af5b87a88e2f4f25794822d30c2396d822afade8fc458dd25ad691023eb10b4d23054c9e43a7c9734c516633f0f46d8ad1be9 SHA512 ad6f1757a853983e8c59beeddceb2ea4beb5ebae1c30fc491f1f70aa34a53e69cba2f405d9a2879baf7cee20cb1beef488a6bcc9072f2bc4e27f96f3c35969bf
+EBUILD gnomad-2.9.6-r3.ebuild 907 BLAKE2B e152359879900734e777ccb70c78d596270e410b096c667ddce1005667bd6ff2dc34557b1ae2194798dddcd99e5c8895caaa619fb83012c04e5c337bdab744e6 SHA512 f78eb18df5057ec614501cc10a1e67f58fcfeee7b7df182a0c7fdc6f887a345558faf6871c2319e8c62f182426694d93656b19e33a61f55ddc543e54970add6c
MISC metadata.xml 331 BLAKE2B 6a590bf39117d4d22c241ab1671c423d2645a964bed4cd727e3bd8f2a89044a82eaf9abc56340855ccae254d43480ecd555f55b3c7abc34ce7d3f151c93c6f44 SHA512 db770a086fa8f722dfe0ee7ae0f8dfe09b5495a96e5afa53cee917f56d5dce0498d36b0ee61b4f289a0f99884100aa6326c270dbe1494be6de55ecd1bfe488f1
diff --git a/media-sound/gnomad/gnomad-2.9.6-r2.ebuild b/media-sound/gnomad/gnomad-2.9.6-r3.ebuild
index 5c7490e2adeb..e1777ee9b71d 100644
--- a/media-sound/gnomad/gnomad-2.9.6-r2.ebuild
+++ b/media-sound/gnomad/gnomad-2.9.6-r3.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
media-libs/libid3tag:=
media-libs/libmtp:=
media-libs/libnjb
- media-libs/taglib
+ media-libs/taglib:=
>=x11-libs/gtk+-2.24:2
"
DEPEND="${RDEPEND}"
diff --git a/media-sound/gogglesmm/Manifest b/media-sound/gogglesmm/Manifest
index cb51565bbc8f..9f8082ae00fe 100644
--- a/media-sound/gogglesmm/Manifest
+++ b/media-sound/gogglesmm/Manifest
@@ -1,4 +1,6 @@
+AUX gogglesmm-1.2.1-fix-build-taglib2.patch 11093 BLAKE2B db9efa55420f3594d78f66de4e212e4a2b77f7d2f4fea8b2f91df413ba13fb568ff8657aa3f150d47334662b5c3d8cdd7ab444edd59c7e0c14d23137dbda1e6a SHA512 898d26784cd35e100f7f3f465ac26ae46e4a33f03919a7728d75ea8c05f07435f854a45e7c53d308eeab1fea2cf9d2c11ceb592d38d4ea03c61b45163ed83277
AUX gogglesmm-1.2.1-use-fox-1.7.67.patch 3708 BLAKE2B 6a19c7ca433f726b1fb06bb24c892571215760479d35f46905c0235940e47cbc7b55945ff01dbc73a0bd7aef836871a807a7eff93410e538da7a596a9b1c6848 SHA512 55c97f9cb3126bb641c4ef38cb27adaeb8d0711646374c4aa797230df7d50d692f2299db3f2123fac6595f163c75811d4f5b71be349701f0befb921897dc2288
DIST gogglesmm-1.2.1.tar.gz 3015072 BLAKE2B 6a33ba6b678bc23e449898e4f492064301ca9c37239d713fa5ccb857d51bb4c4cf5dc1d4576f2f6dc745eaff607f4400e5600f45c4cbdde8c43cee5ca1fc34f4 SHA512 c165ddde463afcf863b74f00dfa1566077007f51617fa00a95dfcdeeab49da9ee87406f6bdc7779c597002d1e587886c7992e9e892ce4988f3bb14f015336547
EBUILD gogglesmm-1.2.1-r2.ebuild 1127 BLAKE2B 078c99b843a7225edac9512709b02c8bb93ebfbbc409071cd442fdd68996790a829ddb4b00b695a5d6da7ad2f77a3ade61279025d612c20b152151966657a415 SHA512 c23eb70c6261da550b3c55b322893d55b73c23fe462c0e72335e9c416e00fda6d8cd311f1476bf28da4d68e46a24b9e400cc609ff69eaacf825a3e1d67da040e
+EBUILD gogglesmm-1.2.1-r3.ebuild 1129 BLAKE2B b833535418246484e4725a6d77fcfe3b2ad9012cdce3cfff0cc8aacb31ee4b38446649cf452055a518f6f3b0c26f231687be4ec6155e40b3aef981ea202a81c2 SHA512 88d3eef3fb1cc88495f382791f0d1a661e68421c1fbc4c6e13aca08ef3265de38d4090dc1bd4b7335a06bc28deeebf98e9bc5862dc0dece52a1e2a4f0ce78010
MISC metadata.xml 449 BLAKE2B d24f0a1420039b6907c60057d9c6ccdf78ad1a3264320b33483b77b11fea8716873eb36b7bbc2a5911855be6d5e3b96294b9acace223ca999c007d5300b9012a SHA512 1bece21add3dd0a3b43ac06ae4aece124112d15937d799f72783d90642678f54eebb171a87f3a16c8f74a31b286b0f5ea62ff85af04909fb0282f4c69bb32395
diff --git a/media-sound/gogglesmm/files/gogglesmm-1.2.1-fix-build-taglib2.patch b/media-sound/gogglesmm/files/gogglesmm-1.2.1-fix-build-taglib2.patch
new file mode 100644
index 000000000000..fd53ea74c4f1
--- /dev/null
+++ b/media-sound/gogglesmm/files/gogglesmm-1.2.1-fix-build-taglib2.patch
@@ -0,0 +1,357 @@
+https://github.com/gogglesmm/gogglesmm/commit/abd6ec6b8270feb1841a97f9be5364541f4a939c.patch
+https://github.com/gogglesmm/gogglesmm/commit/9f7110b0950a2862016e18163b9c2737a2a935d6.patch
+
+diff --git a/src/GMAbout.cpp b/src/GMAbout.cpp
+index eb2c565..0b625cb 100644
+--- a/src/GMAbout.cpp
++++ b/src/GMAbout.cpp
+@@ -27,7 +27,6 @@
+ #endif
+ #include <FXPNGIcon.h>
+ #include <sqlite3.h>
+-#include <tag.h>
+
+ #define UTF8_COPYRIGHT_SIGN "\xc2\xa9"
+
+diff --git a/src/GMTag.cpp b/src/GMTag.cpp
+index 2add466..a32ce46 100644
+--- a/src/GMTag.cpp
++++ b/src/GMTag.cpp
+@@ -26,9 +26,9 @@
+ #include "GMTag.h"
+ #include "GMAudioPlayer.h"
+
+-/// TagLib
+-
+
++// taglib Variant enum Type { Bool } conflicts with Xlib
++#undef Bool
+ #include <fileref.h>
+ #include <tstring.h>
+ #include <id3v1tag.h>
+@@ -339,6 +339,7 @@ static void gm_strip_tags(TagLib::File * file,FXuint opts) {
+ /******************************************************************************/
+
+ GMFileTag::GMFileTag() :
++ fileref(nullptr),
+ file(nullptr),
+ tag(nullptr),
+ mp4(nullptr),
+@@ -349,20 +350,35 @@ GMFileTag::GMFileTag() :
+ }
+
+ GMFileTag::~GMFileTag() {
++#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
++ if (fileref) delete fileref;
++#else
+ if (file) delete file;
++#endif
+ }
+
+
+ FXbool GMFileTag::open(const FXString & filename,FXuint opts) {
+-
+- file = TagLib::FileRef::create(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
+- if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
+- if (file) {
+- delete file;
+- file=nullptr;
++#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
++ fileref = new TagLib::FileRef(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
++ file = fileref->file();
++ if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
++ if (fileref) {
++ delete fileref;
++ fileref=nullptr;
++ }
++ return false;
+ }
+- return false;
+- }
++#else
++ file = TagLib::FileRef::create(filename.text(),(opts&FILETAG_AUDIOPROPERTIES));
++ if (file==nullptr || !file->isValid() || file->tag()==nullptr) {
++ if (file) {
++ delete file;
++ file=nullptr;
++ }
++ return false;
++ }
++#endif
+
+ TagLib::MPEG::File * mpgfile = nullptr;
+ TagLib::Ogg::Vorbis::File * oggfile = nullptr;
+@@ -521,7 +537,11 @@ FXbool GMFileTag::ape_get_field(const FXchar * field,FXStringList & list) const
+ FXASSERT(field);
+ FXASSERT(ape);
+ if (ape->itemListMap().contains(field)) {
++#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
++ const TagLib::StringList fieldlist = ape->itemListMap()[field].values();
++#else
+ const TagLib::StringList fieldlist = ape->itemListMap()[field].toStringList();
++#endif
+ list.no(fieldlist.size());
+ FXint item=0;
+ for(TagLib::StringList::ConstIterator it = fieldlist.begin(); it != fieldlist.end(); it++) {
+@@ -635,16 +655,35 @@ FXbool GMFileTag::id3v2_get_field(const FXchar * field,FXStringList & list) con
+ void GMFileTag::mp4_update_field(const FXchar * field,const FXString & value) {
+ FXASSERT(field);
+ FXASSERT(mp4);
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (!value.empty())
++ mp4->setItem(field,TagLib::StringList(TagLib::String(value.text(),TagLib::String::UTF8)));
++ else
++ mp4->removeItem(field);
++#else
+ if (!value.empty())
+ mp4->itemListMap().insert(field,TagLib::StringList(TagLib::String(value.text(),TagLib::String::UTF8)));
+ else
+ mp4->itemListMap().erase(field);
++#endif
+ }
+
+
+ void GMFileTag::mp4_update_field(const FXchar * field,const FXStringList & list) {
+ FXASSERT(field);
+ FXASSERT(mp4);
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (list.no()==0) {
++ mp4->removeItem(field);
++ }
++ else {
++ TagLib::StringList values;
++ for (FXint i=0;i<list.no();i++) {
++ values.append(TagLib::String(list[i].text(),TagLib::String::UTF8));
++ }
++ mp4->setItem(field,values);
++ }
++#else
+ if (list.no()==0) {
+ mp4->itemListMap().erase(field);
+ }
+@@ -655,12 +694,24 @@ void GMFileTag::mp4_update_field(const FXchar * field,const FXStringList & list)
+ }
+ mp4->itemListMap().insert(field,values);
+ }
++#endif
+ }
+
+
+ FXbool GMFileTag::mp4_get_field(const FXchar * field,FXString & value) const {
+ FXASSERT(field);
+ FXASSERT(mp4);
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (mp4->contains(field)) {
++ value=mp4->item(field).toStringList().toString(", ").toCString(true);
++ value.trim();
++ return !value.empty();
++ }
++ else {
++ value.clear();
++ return false;
++ }
++#else
+ if (mp4->itemListMap().contains(field)) {
+ value=mp4->itemListMap()[field].toStringList().toString(", ").toCString(true);
+ value.trim();
+@@ -670,14 +721,20 @@ FXbool GMFileTag::mp4_get_field(const FXchar * field,FXString & value) const {
+ value.clear();
+ return false;
+ }
++#endif
+ }
+
+
+ FXbool GMFileTag::mp4_get_field(const FXchar * field,FXStringList & list) const{
+ FXASSERT(field);
+ FXASSERT(mp4);
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (mp4->contains(field)) {
++ const TagLib::StringList fieldlist = mp4->item(field).toStringList();
++#else
+ if (mp4->itemListMap().contains(field)) {
+ const TagLib::StringList fieldlist = mp4->itemListMap()[field].toStringList();
++#endif
+ list.no(fieldlist.size());
+ FXint item=0;
+ for(TagLib::StringList::ConstIterator it = fieldlist.begin(); it != fieldlist.end(); it++) {
+@@ -936,12 +993,21 @@ void GMFileTag::setDiscNumber(FXushort disc) {
+ else
+ id3v2_update_field("TPOS",FXString::null);
+ }
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (mp4) {
++ if (disc>0)
++ mp4->setItem("disk",TagLib::MP4::Item(disc,0));
++ else
++ mp4->removeItem("disk");
++ }
++#else
+ if (mp4) {
+ if (disc>0)
+ mp4->itemListMap().insert("disk",TagLib::MP4::Item(disc,0));
+ else
+ mp4->itemListMap().erase("disk");
+ }
++#endif
+ }
+
+
+@@ -959,9 +1025,15 @@ FXushort GMFileTag::getDiscNumber() const{
+ else if (id3v2 && id3v2_get_field("TPOS",disc)) {
+ return string_to_disc_number(disc);
+ }
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ else if (mp4 && mp4->contains("disk")) {
++ return FXMIN(mp4->item("disk").toIntPair().first,0xFFFF);
++ }
++#else
+ else if (mp4 && mp4->itemListMap().contains("disk")) {
+ return FXMIN(mp4->itemListMap()["disk"].toIntPair().first,0xFFFF);
+ }
++#endif
+ return 0;
+ }
+
+@@ -969,7 +1041,11 @@ FXint GMFileTag::getTime() const{
+ FXASSERT(file);
+ TagLib::AudioProperties * properties = file->audioProperties();
+ if (properties)
++#if TAGLIB_VERSION >= TAGVERSION(2,0,0)
++ return properties->lengthInSeconds();
++#else
+ return properties->length();
++#endif
+ else
+ return 0;
+ }
+@@ -1007,7 +1083,11 @@ FXint GMFileTag::getSampleSize() const{
+ FXASSERT(file);
+ TagLib::FLAC::File * flacfile = dynamic_cast<TagLib::FLAC::File*>(file);
+ if (flacfile && flacfile->audioProperties()) {
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ return flacfile->audioProperties()->bitsPerSample();
++#else
+ return flacfile->audioProperties()->sampleWidth();
++#endif
+ }
+ else
+ return 0;
+@@ -1081,6 +1161,16 @@ GMCover * GMFileTag::getFrontCover() const {
+ #endif
+ }
+ else if (mp4) { /// MP4
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (mp4->contains("covr")) {
++ TagLib::MP4::CoverArtList coverlist = mp4->item("covr").toCoverArtList();
++ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
++ if (it->data().size())
++ return new GMCover(it->data().data(),it->data().size());
++ }
++ }
++ }
++#else
+ if (mp4->itemListMap().contains("covr")) {
+ TagLib::MP4::CoverArtList coverlist = mp4->itemListMap()["covr"].toCoverArtList();
+ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
+@@ -1089,6 +1179,7 @@ GMCover * GMFileTag::getFrontCover() const {
+ }
+ }
+ }
++#endif
+ return nullptr;
+ }
+
+@@ -1134,6 +1225,15 @@ FXint GMFileTag::getCovers(GMCoverList & covers) const {
+ }
+ }
+ else if (mp4) {
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (mp4->contains("covr")) {
++ TagLib::MP4::CoverArtList coverlist = mp4->item("covr").toCoverArtList();
++ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
++ if (it->data().size())
++ covers.append(new GMCover(it->data().data(),it->data().size(),0));
++ }
++ }
++#else
+ if (mp4->itemListMap().contains("covr")) {
+ TagLib::MP4::CoverArtList coverlist = mp4->itemListMap()["covr"].toCoverArtList();
+ for(TagLib::MP4::CoverArtList::Iterator it = coverlist.begin(); it != coverlist.end(); it++) {
+@@ -1141,6 +1241,7 @@ FXint GMFileTag::getCovers(GMCoverList & covers) const {
+ covers.append(new GMCover(it->data().data(),it->data().size(),0));
+ }
+ }
++#endif
+ }
+ return covers.no();
+ }
+@@ -1191,7 +1292,7 @@ void GMFileTag::replaceCover(GMCover*cover,FXuint mode){
+ }
+ else if (mp4) {
+ // mp4 has no type information so we erase all
+- mp4->itemListMap().erase("covr");
++ clearCovers();
+ }
+ }
+ else { // COVER_REPLACE_ALL
+@@ -1216,7 +1317,11 @@ void GMFileTag::clearCovers() {
+ #endif
+ }
+ else if (mp4) {
+- mp4->itemListMap().erase("covr");
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ mp4->removeItem("covr");
++#else
++ mp4->itemListMap().erase("covr");
++#endif
+ }
+ }
+
+@@ -1303,6 +1408,18 @@ void GMFileTag::appendCover(GMCover* cover){
+ case FILETYPE_GIF: format = TagLib::MP4::CoverArt::GIF; break;
+ default: return; break;
+ }
++#if TAGLIB_VERSION >= TAGVERSION(1,12,0)
++ if (!mp4->contains("covr")) {
++ TagLib::MP4::CoverArtList list;
++ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
++ mp4->setItem("covr",list);
++ }
++ else {
++ TagLib::MP4::CoverArtList list = mp4->item("covr").toCoverArtList();
++ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
++ mp4->setItem("covr",list);
++ }
++#else
+ if (!mp4->itemListMap().contains("covr")) {
+ TagLib::MP4::CoverArtList list;
+ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
+@@ -1313,6 +1430,7 @@ void GMFileTag::appendCover(GMCover* cover){
+ list.append(TagLib::MP4::CoverArt(format,TagLib::ByteVector((const FXchar*)cover->data,cover->size)));
+ mp4->itemListMap().insert("covr",list);
+ }
++#endif
+ }
+ }
+
+diff --git a/src/GMTag.h b/src/GMTag.h
+index 26b76f2..1c5fd77 100644
+--- a/src/GMTag.h
++++ b/src/GMTag.h
+@@ -21,6 +21,7 @@
+
+
+ namespace TagLib {
++ class FileRef;
+ class File;
+ class Tag;
+ namespace MP4 {
+@@ -54,6 +55,7 @@ typedef FXArray<GMCover*> GMCoverList;
+
+ class GMFileTag {
+ protected:
++ TagLib::FileRef * fileref;
+ TagLib::File * file;
+ TagLib::Tag * tag;
+ TagLib::MP4::Tag * mp4;
diff --git a/media-sound/gogglesmm/gogglesmm-1.2.1-r3.ebuild b/media-sound/gogglesmm/gogglesmm-1.2.1-r3.ebuild
new file mode 100644
index 000000000000..37c4e7576662
--- /dev/null
+++ b/media-sound/gogglesmm/gogglesmm-1.2.1-r3.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake xdg
+
+DESCRIPTION="Fast and light music player"
+HOMEPAGE="https://gogglesmm.github.io"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+aac +dbus +flac +mad nls +ogg +opengl +opus +pulseaudio +vorbis"
+
+RDEPEND="
+ dev-db/sqlite
+ dev-libs/expat
+ dev-libs/libgcrypt:=
+ media-libs/taglib:=
+ x11-libs/fox:1.7
+ x11-libs/libICE
+ x11-libs/libSM
+ aac? ( media-libs/faad2 )
+ dbus? ( sys-apps/dbus )
+ flac? ( media-libs/flac:= )
+ mad? ( media-libs/libmad )
+ ogg? ( media-libs/libogg )
+ opengl? (
+ media-libs/libepoxy
+ virtual/glu
+ )
+ opus? ( media-libs/opus )
+ pulseaudio? ( media-libs/libpulse )
+ vorbis? ( media-libs/libvorbis )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/"${P}"-use-fox-1.7.67.patch
+ "${FILESDIR}"/"${P}"-fix-build-taglib2.patch
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_DBUS="$(usex dbus)"
+ -DWITH_NLS="$(usex nls)"
+ -DWITH_OPENGL="$(usex opengl)"
+ -DWITH_CFOX=OFF
+ )
+ cmake_src_configure
+}
diff --git a/media-sound/id3ted/Manifest b/media-sound/id3ted/Manifest
index ffd447d64dd9..025935446913 100644
--- a/media-sound/id3ted/Manifest
+++ b/media-sound/id3ted/Manifest
@@ -1,4 +1,6 @@
+AUX id3ted-1.0-fix-build-taglib2.patch 1196 BLAKE2B 7b07e84117a989b32808e51f12948e5f1f8398a1ae35e6944e1b78d59c330d9ff55b1bb7bdeb010fa6fdce2eae75f70529efee280fa5ebb5949a0ab50ac9073a SHA512 473dca5eb5368daa1a0c1eaab5da41b2187b5544ab136b089317547552a8b5ee72e659b3dbf6936d7d714f183c5df7996bdcb74094751c68e74c047c80ef7a44
AUX id3ted-1.0-outofbounds.patch 713 BLAKE2B f0e61828e73939d3497402d7b37d751e42393ff72d64be20c3c4f7f48ce9b484e1ccaf9915c291b35b0e21efab3c5a2419cff4c101b79176b8603851bced1855 SHA512 942b1858bcd917c2a0c3be023f666bcc38b364edce976ab3f3f9f4d16f1822240aedb33965086f5f67832096fa408e24d6c85cfe91a2adc1cc84bee8d4ebef9a
DIST id3ted-1.0.tar.gz 32792 BLAKE2B 3df3a5a48302ecac6dbccbf7ddacb3db193e67f8352159d3c31763d03e6bf48c46c2aaf056b0d08649e33c7d4440f72a0dc1869b3d0978cba470bc2b609ff804 SHA512 ba135779ac8bb7e83d77737babc836a2bbf4cd7efd4ffad5aa982ec9f6c57d0479f0bdf017e62d62dddffcadab88ab7b3f07408d173d013b794d20bccd5218ee
+EBUILD id3ted-1.0-r1.ebuild 571 BLAKE2B 2eefd19992538cf48b4d5060160276172fb7cfd76beec89a446922ad7753a6f3177598c93cd4fae9d19c593c31cd021481beae00aa002bd54d96759e7314325d SHA512 8934adb0399f3c7df898c09d6ddb6085755365cabefa2f88dbb57bdf828cc76a89094a6681c236f4509ea8015a2236d2a39355020f37736d2a1b4ce297a94e68
EBUILD id3ted-1.0.ebuild 522 BLAKE2B 7d8e4b2f7468f322ad7a89bc3045e5de41cd79daa5b6ca216a2bfa07f88b857005aa146f97d51adfc222060ae573dcf8823b5390a9ce7b63af06dbfe808cf32c SHA512 25d8de6f12289ab5e6b4e198290905519a5cec695c01f6723515351c671da224ee3af199a7a5a3198d781cdfcebe7b1009aef422e51cd24ffa83a6c0d5119431
MISC metadata.xml 332 BLAKE2B 334479ea638a19a34ba707e9539088918fc3bd548988716453ed8a2228dba6a3c6b008d205e5fc41a80587f5a7812e43f8b998fc4e5febc27e80dedd407c688f SHA512 d8d493c1adcd88d1a8f3126e66dc560cac3ce4e4484f1a109b10263b56a249bab5923eeecdb4008b0cc6caaa78e35360f818118ee542744e607f96cc893688b0
diff --git a/media-sound/id3ted/files/id3ted-1.0-fix-build-taglib2.patch b/media-sound/id3ted/files/id3ted-1.0-fix-build-taglib2.patch
new file mode 100644
index 000000000000..46437c6d10e5
--- /dev/null
+++ b/media-sound/id3ted/files/id3ted-1.0-fix-build-taglib2.patch
@@ -0,0 +1,47 @@
+no upstream PR as repo is archive
+--- a/fileio.cpp
++++ b/fileio.cpp
+@@ -60,11 +60,11 @@ bool FileIO::isRegular(const char *path) {
+
+
+ bool FileIO::isReadable(const char *path) {
+- return TagLib::File::isReadable(path);
++ return !access(path, R_OK);
+ }
+
+ bool FileIO::isWritable(const char *path) {
+- return TagLib::File::isWritable(path);
++ return !access(path, W_OK);
+ }
+
+ string FileIO::sizeHumanReadable(unsigned long size) {
+--- a/id3ted.h
++++ b/id3ted.h
+@@ -30,7 +30,6 @@
+
+ using namespace std;
+ using namespace TagLib;
+-using TagLib::uint;
+
+ void warn(const char* fmt, ...);
+
+--- a/mp3file.cpp
++++ b/mp3file.cpp
+@@ -343,7 +343,7 @@ bool MP3File::save() {
+ if (tags & 2 && id3v2Tag != NULL && id3v2Tag->isEmpty())
+ strip(2);
+
+- return file.save(tags, false);
++ return file.save();
+ }
+
+ bool MP3File::strip(int tags) {
+@@ -391,7 +391,7 @@ void MP3File::showInfo() const {
+ break;
+ }
+
+- int length = properties->length();
++ int length = properties->lengthInSeconds();
+ printf("MPEG %s Layer %d %s\n", version, properties->layer(), channelMode);
+ printf("bitrate: %d kBit/s, sample rate: %d Hz, length: %02d:%02d:%02d\n",
+ properties->bitrate(), properties->sampleRate(),
diff --git a/media-sound/id3ted/id3ted-1.0-r1.ebuild b/media-sound/id3ted/id3ted-1.0-r1.ebuild
new file mode 100644
index 000000000000..6c16c266036b
--- /dev/null
+++ b/media-sound/id3ted/id3ted-1.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="A Command-line ID3 Tag Editor"
+HOMEPAGE="https://github.com/xyb3rt/id3ted"
+SRC_URI="https://github.com/xyb3rt/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ media-libs/taglib:=
+ sys-apps/file"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-outofbounds.patch"
+ "${FILESDIR}/${P}-fix-build-taglib2.patch"
+)
+
+pkg_setup() {
+ export PREFIX="/usr"
+ tc-export CXX
+}
diff --git a/media-sound/mixxx/Manifest b/media-sound/mixxx/Manifest
index ef048797fef1..402aba7205cb 100644
--- a/media-sound/mixxx/Manifest
+++ b/media-sound/mixxx/Manifest
@@ -1,6 +1,7 @@
AUX mixxx-2.3.0-cmake.patch 556 BLAKE2B 2757a1c72f4ad052aacd17fba1934a106c34971ac3fb0af2b3a65ebc0eacdcc9809949697aaba6166ae45ab1876a4cc6e6759eb90317efff73b8ab629b506078 SHA512 277fe726ad2d656f97a7350bf6e32bc77b93fb5d6ccddf5bacb7cfa35a9e78dd772b9823097b672ce6a0a4ef8d62222629a375b77ed6cd4e3d201593833d6252
AUX mixxx-2.3.0-docs.patch 626 BLAKE2B 73eca9849d69112edd254bd28329b360c31434eb1a4bcb626ca9fcfc0b00dee2c9f9d81d83302fbe0718be9e5a47a1748835013f20398eeb4e50c5e81b78a172 SHA512 2de279b48463d214ef7c9da58c58fb10d0fb300afe80b01e1981f4df15a5f7da1079b53ca1422dc0d69da8a367fe4693ba002a351e57f95fa1b24d5ec7fb12a4
AUX mixxx-2.3.1-benchmark_compile_fix.patch 220 BLAKE2B 28c5a7fe5e6e465bd7d9445e741d366341fadcb8d142961cf25d6b57aabcc453f74cbb0d3f63b01df5e65e7151a9e59545c50b52e732234ae6a734eb171cef82 SHA512 d301a87760a0162a9e09e08dd544183219776c61d2810d75c37d39a9ac9fcf8a329681e53ca922864ccafeb98231cbeea565db2196e56bf62417a09b40bae4b8
+AUX mixxx-2.3.6-fix-build-taglib2.patch 855 BLAKE2B 91204d0c26b7ef1b2b81d9aed99d923d31c7f01c227594e853e4c8c885cd4ab7938a2efc57a920de213ea3cb927e1e0a3698fd2aa713e7ede17e1767c5635ed9 SHA512 26b3d7999c1af146434db9acf5ffe442c27c6afe84609bbcf2897bd0ee96cca8b6134d4a5a8ceeebf3b1bd62941e8f72d7537828857368f7235bd13677902b39
AUX mixxx-9999-docs.patch 695 BLAKE2B 5f639550ff8aca7f7aeed8d4d6dfd44e2b0eb8c3cc3f5c6578ff802dfd4c11fa8a9fdf3f820ec8e4fdb1449abcc50673a06b4dac74ba4916b6111e8117474002 SHA512 cd34b4faeb939a1d802936b9b4f740f252ba572926815726f1957df6cc07a362ae03d9772484188dfc0ebcc942808c06ef2c9bab8df6164de4b2b65a447d9f92
DIST mixxx-2.3.6.tar.gz 41285084 BLAKE2B 35bedb5f41a56577bc59411ca979e3e780c1da2420bc0a7ad98d998c89f8c272202ba42e8b8089904ca8e1a1b6ac5155d08d556538245ce3242b4ea5a670e6d2 SHA512 a92c2c92dc7619ac135d940f23ffdc101c528eca6322517805afb9eb48a84c6339cefb88b96bdac6ffb23967c2f93f621daf3e98bfecbf7f3fe7626ddcec4398
DIST mixxx-manual-2.3-ca.pdf 34083768 BLAKE2B 0572da067016d6fd1a0e955cfa9daad319e633357532bad1143333a277d3dee1876709447ecfb954b5294f5fd176af229884e11a8e2fd40d03c12a6cf80bf01c SHA512 965f2f344bfa57531974362de889a92bb8b3024e527158f6c1819e285f70078762e958f7805ff1f833e7310646925cb8120eb3010f8600aa2cd21b2266a9333b
@@ -26,7 +27,8 @@ DIST mixxx-manual-2.3-sr.pdf 34079603 BLAKE2B 83ed178b8b095928138c853b5300176316
DIST mixxx-manual-2.3-tr.pdf 34062405 BLAKE2B 69b5f76b4e74aa0d48636ae3914a6f40e0104d509f76c0569f99348d17131926a564d7e43a73d34036c5a94be4b61a37645e7933b1dea2513c6d72d5d25334fc SHA512 b05f297f3000767e2a8a2319e56f0db73981418943a96d0822f4f3f51f29bbb5667cc0b487ef328f1d6d115013af705371668ef3081321b6980ea95834a40895
DIST mixxx-manual-2.3-zh-CN.pdf 34165133 BLAKE2B 58e717082ace6824532392a282cd1452c279410c547fabc333b6adccaf47fb8e4bbac0c612f9679c8d85317e9b706e5fe10b7c1fc11a4325a14c5b3faafdda46 SHA512 995fb6c9bf1f729eaa08cd5b2003f21c76274f8f3046bd85b771cb86c429fa65cc50f0f4a36396e654a4378125157777b2f0f04a9343b20aa3aef76281395aec
DIST mixxx-manual-2.3-zh-TW.pdf 34135938 BLAKE2B b5747b2156d686bb84166beb2c1552e0d998f3c402793444631c1f146c93fd8f6addb5fc34c0f59b16b2866994b8f64ee5670ab26c683d51b0c36d3f247dcf70 SHA512 55a5c3d5064c021f73a48dab5fb93094bc0f9220a1790518b043a21900dc6792a2fc01ee5c6def6338a3df09bcbb7441e1c8b2f23aac2aad2b2a5974babb8a9f
+EBUILD mixxx-2.3.6-r1.ebuild 3841 BLAKE2B fd5195846ace14fc9509a2fdf621d4c69881f7198e115c919ce812cfd0cf013a4aaebfc85216432f8835ca94f10ea466873792a82bf22be3cb0f7d01038c3fbe SHA512 609fef3e6fafd9777881aee08ef262fb6e93db50d59308cbf8f0ee6113256e6c9010fd574109d45a9c4c087f9c264cf79cc86585c6b13ef7ad2af3b769d558d2
EBUILD mixxx-2.3.6.ebuild 3786 BLAKE2B cfd13b9e0ec845245e086e90895658dd1b4011071525b1166de348bfca7ef45c566d4b5095a81dc44fb264b5ea78e172ba3d173fb5dc61d32cf2dbb28754c2d0 SHA512 6c64e16c7f47237fa1e7ed0577e9060246a7ee453e5b388157b9556a9f53f1381e32e3a7ebef3982a04bef13324edf7c0e20d5999e51214288620285e0980c59
-EBUILD mixxx-2.3.9999.ebuild 3686 BLAKE2B a3693db71d5c8c264e008cc0e813d46a887e2e1cc7430a3e47316338710d1a49c8922ebd731fdd32d89ee7b70da2b52639f8348438ca353f52a55177f31810ba SHA512 948003c5a5e08fc001b298a006230621c51dd5dbd51f86c737cf446e4f8d6d8fa8e3474fdfc3538d8480cef4b828d4b1444f338ab025cba50d3162ee62aeb3ff
-EBUILD mixxx-9999.ebuild 2829 BLAKE2B f21165282b08bcd40f3a345bf523c3881efc1268634a2a2f19fa387ad946d447f94c2f22300d5ecb2c553461d1b93edcc2e879962cd83bff9da73cb264664cf0 SHA512 eb55e944cda6a0eff9416415c84cff5e1ad6d35b808b19699e852740587f4020f44b1978236e14254cb8e66bfcede63c88e0eb69b611afdb67932886167c1221
+EBUILD mixxx-2.3.9999.ebuild 3739 BLAKE2B ce5ecbc9d227613d92799575e5f7612a983ea6fefac0009092ca8938db6125cde8e58bd1909887d17b99c4490620f7eac2e986ae7ad82eca7644e5226ddea03e SHA512 5df57ad58680227ce2cbfd817c0ab74259ba53d30e0069e7ea120d1b53b85cd5afa4e0ea6649857c97e2e10f64ff19e3fb1f38738fe81a319343285b30c5d25a
+EBUILD mixxx-9999.ebuild 2831 BLAKE2B 0aa6b464ed622b963dcf37eef6f8f6c35a0f8a005acfc344bff28bd076946acf67f309af2e309cf494becc2d9917dd86488f140821115d90611b21466fd30712 SHA512 def50a0fb5ba8bfd33a49920d5bfe7cd0c7f8f00e75ec816353f9103bf299d1f1c25f7691c2c466362548acbafdbbf506a56d90c658da3e8a994005b74280d2c
MISC metadata.xml 903 BLAKE2B 1fd2e01da4d96a257d0ba595e67005e5233503f54ea17c81f65d105a61dc42f84df601cc112ff0a5e99393cbc53a0130b890d96a47cc2b88b59cbe7b9779654d SHA512 7e9dfd69240a57efbdaceb4dcfe71549d7a8c2edba5c81f956407e101cb62a0c51cf231e1e68c029783340189139309dde4fa3e995a231856ea094df09288cd8
diff --git a/media-sound/mixxx/files/mixxx-2.3.6-fix-build-taglib2.patch b/media-sound/mixxx/files/mixxx-2.3.6-fix-build-taglib2.patch
new file mode 100644
index 000000000000..1a00a455e6ea
--- /dev/null
+++ b/media-sound/mixxx/files/mixxx-2.3.6-fix-build-taglib2.patch
@@ -0,0 +1,14 @@
+https://github.com/mixxxdj/mixxx/commit/1dd2ae25e065401371800ad76cb813021702a9e1.patch
+diff --git a/src/track/taglib/trackmetadata_ape.cpp b/src/track/taglib/trackmetadata_ape.cpp
+index c370c6a7f93..b4af3b5afbc 100644
+--- a/src/track/taglib/trackmetadata_ape.cpp
++++ b/src/track/taglib/trackmetadata_ape.cpp
+@@ -59,7 +59,7 @@ bool importCoverImageFromTag(QImage* pCoverArt, const TagLib::APE::Tag& tag) {
+ if (tag.itemListMap().contains("COVER ART (FRONT)")) {
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+ TagLib::ByteVector item =
+- tag.itemListMap()["COVER ART (FRONT)"].value();
++ tag.itemListMap()["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // skip the filename
+ if (++pos > 0) {
+ const TagLib::ByteVector data(item.mid(pos));
diff --git a/media-sound/mixxx/mixxx-2.3.6-r1.ebuild b/media-sound/mixxx/mixxx-2.3.6-r1.ebuild
new file mode 100644
index 000000000000..d1cbb797177d
--- /dev/null
+++ b/media-sound/mixxx/mixxx-2.3.6-r1.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake xdg udev
+
+MY_PV=$(ver_cut 1-2)
+DESCRIPTION="Advanced Digital DJ tool based on Qt"
+HOMEPAGE="https://mixxx.org/"
+if [[ ${PV} == *9999 ]] ; then
+ inherit git-r3
+ if [[ ${PV} == ?.?.9999 ]] ; then
+ EGIT_BRANCH=${PV%.9999}
+ fi
+ EGIT_REPO_URI="https://github.com/mixxxdj/${PN}.git"
+else
+ SRC_URI="https://github.com/mixxxdj/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ #S="${WORKDIR}/${PN}-release-${PV}"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="aac ffmpeg hid keyfinder lv2 modplug mp3 mp4 opus qtkeychain shout wavpack"
+
+RDEPEND="
+ dev-db/sqlite
+ dev-libs/glib:2
+ dev-libs/protobuf:=
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtscript:5[scripttools]
+ dev-qt/qtsql:5
+ dev-qt/qtsvg:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ dev-qt/qtxml:5
+ media-libs/chromaprint
+ media-libs/flac:=
+ media-libs/libebur128
+ media-libs/libid3tag:=
+ media-libs/libogg
+ media-libs/libsndfile
+ media-libs/libsoundtouch
+ media-libs/libvorbis
+ media-libs/portaudio[alsa]
+ media-libs/portmidi
+ media-libs/rubberband
+ media-libs/taglib:=
+ media-libs/vamp-plugin-sdk
+ media-sound/lame
+ sci-libs/fftw:3.0=
+ sys-power/upower
+ virtual/glu
+ virtual/libusb:1
+ virtual/opengl
+ virtual/udev
+ x11-libs/libX11
+ aac? (
+ media-libs/faad2
+ media-libs/libmp4v2
+ )
+ ffmpeg? ( media-video/ffmpeg:= )
+ hid? ( dev-libs/hidapi )
+ keyfinder? ( media-libs/libkeyfinder )
+ lv2? ( media-libs/lilv )
+ modplug? ( media-libs/libmodplug )
+ mp3? ( media-libs/libmad )
+ mp4? ( media-libs/libmp4v2:= )
+ opus? ( media-libs/opusfile )
+ qtkeychain? ( dev-libs/qtkeychain:=[qt5(+)] )
+ wavpack? ( media-sound/wavpack )
+"
+ # libshout-idjc-2.4.6 is required. Please check and re-add once it's
+ # available in ::gentoo
+ # Meanwhile we're using the bundled libshout-idjc. See bug #775443
+ #shout? ( >=media-libs/libshout-idjc-2.4.6 )
+
+DEPEND="${RDEPEND}
+ dev-qt/qtconcurrent:5
+"
+BDEPEND="
+ dev-qt/qttest:5
+ dev-qt/qtxmlpatterns:5
+ virtual/pkgconfig
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.0-docs.patch
+ "${FILESDIR}"/${PN}-2.3.0-cmake.patch
+ "${FILESDIR}"/${PN}-2.3.1-benchmark_compile_fix.patch
+ "${FILESDIR}"/${PN}-2.3.6-fix-build-taglib2.patch
+)
+
+PLOCALES="
+ ca cs de en es fi fr gl id it ja kn nl pl pt ro ru sl sq sr tr zh-CN zh-TW
+"
+
+mixxx_set_globals() {
+ local lang
+ local MANUAL_URI_BASE="https://downloads.mixxx.org/manual/${MY_PV}"
+ for lang in ${PLOCALES} ; do
+ SRC_URI+=" l10n_${lang}? ( ${MANUAL_URI_BASE}/${PN}-manual-${MY_PV}-${lang/ja/ja-JP}.pdf )"
+ IUSE+=" l10n_${lang/ en/ +en}"
+ done
+ SRC_URI+=" ${MANUAL_URI_BASE}/${PN}-manual-${MY_PV}-en.pdf"
+}
+mixxx_set_globals
+
+src_configure() {
+ local mycmakeargs=(
+ # Not available on Linux yet and requires additional deps
+ -DBATTERY="off"
+ -DBROADCAST="$(usex shout on off)"
+ -DCCACHE_SUPPORT="off"
+ -DFAAD="$(usex aac on off)"
+ -DFFMPEG="$(usex ffmpeg on off)"
+ -DHID="$(usex hid on off)"
+ -DINSTALL_USER_UDEV_RULES=OFF
+ -DKEYFINDER="$(usex keyfinder on off)"
+ -DLILV="$(usex lv2 on off)"
+ -DMAD="$(usex mp3 on off)"
+ -DMODPLUG="$(usex modplug on off)"
+ -DOPTIMIZE="off"
+ -DOPUS="$(usex opus on off)"
+ -DQTKEYCHAIN="$(usex qtkeychain on off)"
+ -DVINYLCONTROL="on"
+ -DWAVPACK="$(usex wavpack on off)"
+ )
+
+ if [[ ${PV} == 9999 ]] ; then
+ mycmakeargs+=(
+ -DENGINEPRIME="OFF"
+ )
+ fi
+ cmake_src_configure
+}
+
+src_install() {
+ cmake_src_install
+ udev_newrules "${S}"/res/linux/mixxx-usb-uaccess.rules 69-mixxx-usb-uaccess.rules
+ dodoc README.md CHANGELOG.md
+ local locale
+ for locale in ${PLOCALES} ; do
+ if use l10n_${locale} ; then
+ dodoc "${DISTDIR}"/${PN}-manual-${MY_PV}-${locale/ja/ja-JP}.pdf
+ fi
+ done
+}
+
+pkg_postinst() {
+ xdg_pkg_postinst
+ udev_reload
+}
+
+pkg_postrm() {
+ xdg_pkg_postrm
+ udev_reload
+}
diff --git a/media-sound/mixxx/mixxx-2.3.9999.ebuild b/media-sound/mixxx/mixxx-2.3.9999.ebuild
index 55d859df3021..442ba0752f5f 100644
--- a/media-sound/mixxx/mixxx-2.3.9999.ebuild
+++ b/media-sound/mixxx/mixxx-2.3.9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -49,7 +49,7 @@ RDEPEND="
media-libs/portaudio[alsa]
media-libs/portmidi
media-libs/rubberband
- media-libs/taglib
+ media-libs/taglib:=
media-libs/vamp-plugin-sdk
media-sound/lame
sci-libs/fftw:3.0=
@@ -90,6 +90,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-9999-docs.patch
+ "${FILESDIR}"/${PN}-2.3.6-fix-build-taglib2.patch
)
PLOCALES="
diff --git a/media-sound/mixxx/mixxx-9999.ebuild b/media-sound/mixxx/mixxx-9999.ebuild
index 0447de377599..7f200f135d0b 100644
--- a/media-sound/mixxx/mixxx-9999.ebuild
+++ b/media-sound/mixxx/mixxx-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -50,7 +50,7 @@ RDEPEND="
media-libs/portaudio
media-libs/portmidi
media-libs/rubberband
- media-libs/taglib
+ media-libs/taglib:=
media-libs/vamp-plugin-sdk
sci-libs/fftw:3.0=
sys-power/upower
diff --git a/media-sound/moc/Manifest b/media-sound/moc/Manifest
index 0c8242c4662c..97a6cbf5eb9b 100644
--- a/media-sound/moc/Manifest
+++ b/media-sound/moc/Manifest
@@ -1,5 +1,5 @@
AUX ffmpeg4.patch 1401 BLAKE2B 116679802c4acb9e843dbb8d656177ae133aefc49a270392eededdae662d7ead518fa4301e1c7d231acfd4a7fd3053d807611737add6a1746ec119e400a1f199 SHA512 c29db5f40e7a206fcdb05958c0dc3a479f3e9d0ebd02703c26049162b8cc7d88875f508f29eee387270c96cb381ea93366498faa79d62bf21686e24a1142f608
AUX moc-2.6_alpha3-stdint_uint_types.patch 1179 BLAKE2B 73dcba135553cd9630cf44e42a4651785d6b9d1cacb554be166a7772c56fbfdc1b4165c6951c810e962a6b4dc24fe714eb739244490b9a975e79b1d67e82dec6 SHA512 642be986fb147aa81251ce9c3f86761ff9f24c61e84fd447e243da34b1e9058a94f27ef632144f01e3c989bc321346bdc543130fd090520fb3064668a8017110
DIST moc-2.6-alpha3.tar.xz 496676 BLAKE2B 3b4f31676c869a0cacd44cce1e4509304e3b00a15e578eb394510fbe0ddaf53f5c5628f2dccd60f4b3925f3e597d9fbc04bc2a8e090e2e05227b822f1aa05ef0 SHA512 e38e277e5e945827308f47a8f3614eb1e52c16271da372f50e7b6427a7dfc994e1c66761a9e46326bf483b91e9127efe7796a329c62e95524609edfb3a7603bf
-EBUILD moc-2.6_alpha3-r6.ebuild 2512 BLAKE2B a35aae6744ba4cf661ab0da9bac46fbb10a9b4d6f4343b36d36d1a391337f3bd3553c15e97ff8ffb65a1bced34f8386039d1af94056c27b4781365ab1737c670 SHA512 39220ea27212404d94ea4c9f1701e682e50d1ccea06bbd93a24ad8cb8601ca098fbe5470880672955612855ff9b97bfaf5b8a0a56072e9aeaa7a308be33acf94
+EBUILD moc-2.6_alpha3-r7.ebuild 2508 BLAKE2B 07cfc58bbafee10d091bc85bbd0282b8574a7ce33ef53840b66b99e845fe1522731a864d1808bd5fbf17bde4a10cd0b3701e4f64dd39555a3725d17779c4fdc3 SHA512 d1b3add94d39ec005d77ea56644672c3f9c50940c59c8abf0c45d4faea5970a69fa4184d48672122882eb0c5310d14c6ab117cc9deabfd4e525c1951163fdb37
MISC metadata.xml 551 BLAKE2B 7ba09fda4ae34a248b8f15e1970e7b9e979d02610869e357c7048e6378c04b4b964539a227d1003290f96ea08a1d9f0755f6845d48ad4449e07e60158ab2f10d SHA512 90d0ad72daab356241b503aeffc3ce183db7eace0a7e6dc39e7387f8062f76ceb9301dac9fcfb15bcaa09edfcf9c520de2371de62743bfada8edb7aa8e641e91
diff --git a/media-sound/moc/moc-2.6_alpha3-r6.ebuild b/media-sound/moc/moc-2.6_alpha3-r7.ebuild
index 0a24feba0780..e92cc4eb96e2 100644
--- a/media-sound/moc/moc-2.6_alpha3-r6.ebuild
+++ b/media-sound/moc/moc-2.6_alpha3-r7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -39,7 +39,7 @@ RDEPEND="
modplug? ( >=media-libs/libmodplug-0.7 )
musepack? (
media-sound/musepack-tools
- >=media-libs/taglib-1.5
+ media-libs/taglib:=
)
sid? ( >=media-libs/libsidplay-2.1.1 )
sndfile? ( >=media-libs/libsndfile-1.0.0 )
diff --git a/media-sound/mp3unicode/Manifest b/media-sound/mp3unicode/Manifest
index 3ace1bf83c43..3a43b5f12dab 100644
--- a/media-sound/mp3unicode/Manifest
+++ b/media-sound/mp3unicode/Manifest
@@ -1,3 +1,4 @@
+AUX mp3unicode-1.2.1-fix-build-taglib2.patch 431 BLAKE2B ebd9bcb886b8bcfdce93127fac0963989c7adaaea2c26211e2a307dcdd660ae090a5883439010737ad8bd27f3d9654427fb84165c981e23bef602087c6f51c44 SHA512 bb9a908a9740fe7b8c4d3b8f66c336c6e0cf0af3ab64b0199f8e7c405a8687805e9e4809528614574f5cd8a4128e978cb25b68ef8a424612834e2ff0c019b830
DIST mp3unicode-1.2.1.tar.bz2 101593 BLAKE2B d6f529a9e60e461faba410927d731a2ca640f5c0df2fcf2732d87f9598dd01e8b992adb12e0499f5d81e1cf43b399e7c3acb0840a7992a8f5cb7a9e0f09624f3 SHA512 b1ca820d1ecf6b5e0e59a8267c0cc6af5f8218191885b9a538a53b4f112f77510b3c5da81ce1e0a98d60c19b621965cea7e8e5c7b6c035054ea362fc02ed64b2
-EBUILD mp3unicode-1.2.1.ebuild 503 BLAKE2B 8e9739a472ccdf78c625c01484fb8a454fcb14388f2f7f222a2ed35dad2776069bb21344ce3b54d39076a25cd171bbcba6e13ac8035037ceed8aa020891d59ec SHA512 95075f895b289974e8995382da1a20318e9474231b6381a1ec354d95d96d51c21e5cd976fd95c71c297026ab9824685db79a8b2f29d323d9d571b7896a6be15b
+EBUILD mp3unicode-1.2.1-r1.ebuild 566 BLAKE2B a7631158e216bf7cff093ef6349a97464e3e0f445a09caeae2723992001b34ecb4812f355c598961cb7dba6c7f47db128a7f0eb8360d05fd4337f8a0f5cd9c1f SHA512 ff0c2d86344afb22cd7609d7430d27985f08003532fc12aa5b9c634989f92bee0e478957c9aa60f81b7bf73807faa2a6b2ee719d0e8ee78c9211fa0e303771f7
MISC metadata.xml 391 BLAKE2B 46daceb6c9ed1f6fc7e1502a953bd3bd38212526cec3177838fe1d9ebea0f11db3f155be8b690d9e175a3e72a948f75813ad4cc4105bffb2669a17b0287ad849 SHA512 49aa4b42e6af76dda529a6ac45d108f430f5fb7cef1c4e3cf23eede37e5067e35bc4c7bf73049b20acff44085f4d6a4abe77b1eed0a5c349256e5184004bb18e
diff --git a/media-sound/mp3unicode/files/mp3unicode-1.2.1-fix-build-taglib2.patch b/media-sound/mp3unicode/files/mp3unicode-1.2.1-fix-build-taglib2.patch
new file mode 100644
index 000000000000..7223ca4fcc47
--- /dev/null
+++ b/media-sound/mp3unicode/files/mp3unicode-1.2.1-fix-build-taglib2.patch
@@ -0,0 +1,14 @@
+https://github.com/alonbl/mp3unicode/pull/5.patch
+diff --git a/mp3unicode.cpp b/mp3unicode.cpp
+index ca25941..7fe6411 100644
+--- a/mp3unicode.cpp
++++ b/mp3unicode.cpp
+@@ -192,7 +192,7 @@ protected:
+ bool
+ heuristicIsUnicode (TagLib::String string) {
+ unsigned u0080 = 0;
+- for(TagLib::uint i = 0; i < string.size(); i++) {
++ for(unsigned int i = 0; i < string.size(); i++) {
+ if(string[i] > 255) {
+ return true;
+ }
diff --git a/media-sound/mp3unicode/mp3unicode-1.2.1.ebuild b/media-sound/mp3unicode/mp3unicode-1.2.1-r1.ebuild
index 96f8b3a03f3f..799e04108d60 100644
--- a/media-sound/mp3unicode/mp3unicode-1.2.1.ebuild
+++ b/media-sound/mp3unicode/mp3unicode-1.2.1-r1.ebuild
@@ -1,17 +1,19 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="Commandline utility to convert ID3 tags in mp3 files between different encodings"
-HOMEPAGE="https://mp3unicode.sourceforge.net
- https://github.com/alonbl/mp3unicode"
+HOMEPAGE="https://mp3unicode.sourceforge.net"
+HOMEPAGE+=" https://github.com/alonbl/mp3unicode"
SRC_URI="https://github.com/alonbl/${PN}/releases/download/${P}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-RDEPEND=">=media-libs/taglib-1.4"
+RDEPEND="media-libs/taglib:="
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/${P}-fix-build-taglib2.patch )
diff --git a/media-sound/music-file-organizer/Manifest b/media-sound/music-file-organizer/Manifest
index 22c4cd01678d..63951943b700 100644
--- a/media-sound/music-file-organizer/Manifest
+++ b/media-sound/music-file-organizer/Manifest
@@ -1,3 +1,3 @@
DIST music-file-organizer-1.0.3.tar.xz 501856 BLAKE2B 17ceda10c7afa7902272d76b7fa547c13da6aa21d106d2de8c125a48746da310e40d315854874fa182b22318574905199d0b2143e7cd5e9bb9fa64aa4a5ac498 SHA512 9a219af094475c93b0a156c1ba01643c603a598283bf12d7d05c6ee2da96ee8055d0bd7d1ae047651a72e347a4e5580f324acc6466df13495e3c3ab2e6baceef
-EBUILD music-file-organizer-1.0.3.ebuild 851 BLAKE2B 5f29bc520e73b0305d4b0640381a52c169db051451c6fe98b39d038eddb5c5569b42a6b61811787828387f56ce1f2387ee106cc68284db4dd42c58522c62c6dc SHA512 63637c58c0e527517612ad8f0dd38da87b9c5c0cb3762c8b541bc1eb8dc0c2f5b15c392692902115d209cbbfa41f71136ecbfc19a5f134a82c5035b0f189f36f
+EBUILD music-file-organizer-1.0.3-r1.ebuild 853 BLAKE2B 9c96bcf39b3945fc6fc26752f793032cf3209b8b317307e565641dc761cf6eb4d80e095066204f33f4e83402b08d955a40c6c5236ff32ea73876d1d7d8feb7f0 SHA512 b8892a07fcbd3cb58a7523cc888d74cd422eda6b08aa160e75e26f8fa54bc567297c50646d788bf542236e8677865cfdcc3acf6dba470b1c49804925fea8d91a
MISC metadata.xml 251 BLAKE2B b1977a04e8904e65636648bd24804893bc0a317a7a20a8b4bac3874f0529dd15b2c058b0002b13febafcdfd93cbef59ef7bc1c646f3996c381b994d384b73ba3 SHA512 25f6fc31ee9e87d78b143500e706ac3417896e67a183470867130b23a42ec8ddd4cdd9a1da40f32903085ee4add969b4b07466b90fb0275308a2518d2d73a270
diff --git a/media-sound/music-file-organizer/music-file-organizer-1.0.3.ebuild b/media-sound/music-file-organizer/music-file-organizer-1.0.3-r1.ebuild
index e06a380cc914..a039e65ba556 100644
--- a/media-sound/music-file-organizer/music-file-organizer-1.0.3.ebuild
+++ b/media-sound/music-file-organizer/music-file-organizer-1.0.3-r1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
DESCRIPTION="Organizes audio files into directories based on metadata tags"
HOMEPAGE="https://git.zx2c4.com/music-file-organizer/about/"
@@ -13,7 +13,7 @@ KEYWORDS="~amd64 ~x86"
RDEPEND="
dev-libs/icu:=
- media-libs/taglib
+ media-libs/taglib:=
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
diff --git a/media-sound/musique/Manifest b/media-sound/musique/Manifest
index 356cf647689f..ddc6cfa727d0 100644
--- a/media-sound/musique/Manifest
+++ b/media-sound/musique/Manifest
@@ -1,4 +1,6 @@
+AUX musique-1.5-fix-build-taglib2.patch 1650 BLAKE2B 05c89b228716f647aaf15368ec9771b739180b0d9bd517099a88fc66f0d072dba424adad84677751d9495f7c70cab8f755c3c2fc79b462618442ca99cde06a38 SHA512 e01bd88185efc6a254a380b0f4536cf6684e414eb632c1f57196df5baf45b9d54c0cda16dfbdd23ad5fdafc9cddfe5247a7ad091c3b031570eae9ea59a18dae2
AUX musique-1.5-unbundle-qtsingleapplication.patch 273 BLAKE2B f2150b1d54201e8d7bd64675dfc5a73a1c74abcea9c34d45f52f4d414f56c6b26d97a8c12f1d4823b5272fa32ea866b6c1d1c8052f8304a46823504203a207ed SHA512 d51389a43c5045c453aa516da4da6d50e2d7fb2b064e40df5cd3ff50469a414bf0ec4d44c716be8b83b8bbf1944f72474b3b917dfcd661eef25c2b7298440641
DIST musique-1.5.tar.gz 377072 BLAKE2B 839b6096bd70171f807cd4177c2374f20089e1a8f22e59fb76d251c743cb3b9b8c86eb81131d15c6291bae1020df7380ae007689a23b67529978de9ee08ed1c2 SHA512 ea4ba84e6b1a69acf054c8ca001afcf3f0e9b17f3557209da649662b2940777babac454a5d4fa0a210e2e15c58bcf4cdfc8757f92b677d46217e3400fcbdc12e
EBUILD musique-1.5-r1.ebuild 945 BLAKE2B 710190ee9a542204f61574a536ed74472e3579b8eb7cfcd2c30140623a609b94b155857f823eeed68b794e989596cb039425c5549ac2fa54fe7585af34bd9a4a SHA512 d4a46a77dc4d5645fb3d7320798d731b48f59a1c839e5d93fd4b994518de2a4ffafe19249c4a6025121d387d5c8f66467713f86489013c006d54a31523368312
+EBUILD musique-1.5-r2.ebuild 1037 BLAKE2B 6a23e01ae72e5b9232ddce78f187ae6a0769f0aba04d9e2269a3cf3433a7a2c26d5a56d564cbd0aba8d17e0044294ab447485664d942dce45b2850cf754b1cfe SHA512 2350e53f77a100b612d3e5b4b08ddae61df8f36f0d2380c39886b601484411d13c1bd9fee6712533b89ed8adf1dad601e61e9464dca14a478538cc5542b4d3be
MISC metadata.xml 254 BLAKE2B dfb1aa113c3ec296cc09365965f6524f666dfcd4da1c88679a1c80c180e4d4b7ab1e189fabdae99a2b2cbb4f2d334f9aaee8be37ca1ac348a51dd915caa6db04 SHA512 ae47624a212dd9b5fca6b25c26fa565f033c4c71d49d2046274f6afd3c19e93e0dff2912512a00cc543dcab7edf481c733239c92738da99013cd29a5245a53c6
diff --git a/media-sound/musique/files/musique-1.5-fix-build-taglib2.patch b/media-sound/musique/files/musique-1.5-fix-build-taglib2.patch
new file mode 100644
index 000000000000..039f06c925e0
--- /dev/null
+++ b/media-sound/musique/files/musique-1.5-fix-build-taglib2.patch
@@ -0,0 +1,40 @@
+https://github.com/flaviotordini/musique/commit/7277d40defe9cde40f947a81d624195ddf683f44.patch
+
+- replace MP4::ItemListMap by TagLib::MP4::ItemMap
+- replace MP4::Tag::itemListMap() by MP4::Tag::itemMap()
+
+diff --git a/src/coverutils.cpp b/src/coverutils.cpp
+index ae89330..4ba717e 100644
+--- a/src/coverutils.cpp
++++ b/src/coverutils.cpp
+@@ -158,7 +158,7 @@ bool CoverUtils::coverFromMP4(const QString &filename, Album *album) {
+ TagLib::MP4::Tag *tag = static_cast<TagLib::MP4::Tag *>(f.tag());
+ if (!tag) return false;
+
+- TagLib::MP4::ItemListMap itemsListMap = tag->itemListMap();
++ TagLib::MP4::ItemMap itemsListMap = tag->itemMap();
+ TagLib::MP4::Item coverItem = itemsListMap["covr"];
+ TagLib::MP4::CoverArtList coverArtList = coverItem.toCoverArtList();
+ TagLib::MP4::CoverArt coverArt = coverArtList.front();
+diff --git a/src/tags/mp4utils.h b/src/tags/mp4utils.h
+index 138c5b5..6b4bcef 100644
+--- a/src/tags/mp4utils.h
++++ b/src/tags/mp4utils.h
+@@ -9,7 +9,7 @@
+ namespace Mp4Utils {
+
+ void load(TagLib::MP4::Tag *tag, Tags *tags) {
+- const TagLib::MP4::ItemListMap &map = tag->itemListMap();
++ const TagLib::MP4::ItemMap &map = tag->itemMap();
+
+ if (map.contains("trkn")) {
+ TagLib::MP4::Item::IntPair intPair = map["trkn"].toIntPair();
+@@ -31,7 +31,7 @@ void load(TagLib::MP4::Tag *tag, Tags *tags) {
+ tags->setComposerSort(v);
+ }
+
+- TagLib::MP4::ItemListMap::ConstIterator it = map.find("aART");
++ TagLib::MP4::ItemMap::ConstIterator it = map.find("aART");
+ if (it != map.end()) {
+ TagLib::StringList sl = it->second.toStringList();
+ if (!sl.isEmpty())
diff --git a/media-sound/musique/musique-1.5-r2.ebuild b/media-sound/musique/musique-1.5-r2.ebuild
new file mode 100644
index 000000000000..820d66e665bf
--- /dev/null
+++ b/media-sound/musique/musique-1.5-r2.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit qmake-utils xdg-utils
+
+DESCRIPTION="Qt music player"
+HOMEPAGE="https://flavio.tordini.org/musique"
+SRC_URI="https://github.com/flaviotordini/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtdbus:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtsingleapplication[qt5(+),X]
+ dev-qt/qtsql:5[sqlite]
+ dev-qt/qtwidgets:5
+ >=media-libs/phonon-4.12.0[qt5(-)]
+ media-libs/taglib:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="dev-qt/linguist-tools:5"
+
+DOCS=( CHANGES TODO )
+
+PATCHES=(
+ "${FILESDIR}/${P}-unbundle-qtsingleapplication.patch"
+ "${FILESDIR}/${P}-fix-build-taglib2.patch"
+)
+
+src_prepare() {
+ rm -r src/qtsingleapplication || die
+ default
+}
+
+src_configure() {
+ eqmake5 ${PN}.pro PREFIX="/usr"
+}
+
+src_install() {
+ emake INSTALL_ROOT="${D}" install
+ einstalldocs
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+}
diff --git a/media-sound/ncmpcpp/Manifest b/media-sound/ncmpcpp/Manifest
index dd25556ad266..eaf05fab9051 100644
--- a/media-sound/ncmpcpp/Manifest
+++ b/media-sound/ncmpcpp/Manifest
@@ -1,10 +1,6 @@
DIST ncmpcpp-0.10.1.gh.tar.gz 231032 BLAKE2B 15187d54141803f2db95c807e7ac4a243fd45c436cb75067af7a23a940aa1b244d6fd77246e98c1942f357a5e6018ded3b22af24818722c250492eb3f628bbe6 SHA512 f726f46dfca7dd843144babb6efae534b95d3862bdfba522b5a2dee9eb6605eb22bb93521147d42c9df22316fb4512dd33e33831fe23b1202a302110cf27f54c
DIST ncmpcpp-0.10_p20240912.gh.tar.gz 231708 BLAKE2B e695975524b890c04cf05c5648e4805a1e6ae31a4c6402c7c925f56ce08fe8a2eb68e7db9f5a5736859b2d2683e2f3e01b29587b97409280c8ed86cde40bcc9f SHA512 40aa37e10203173b1254150f60f2210c8bcb07ffe1174d0a1bb2d6281dfabae86144523021d70cb911e8e03e572f73c62e8e026dc0a57ae9831849deb146dbe5
-DIST ncmpcpp-0.9.2_p20221231.gh.tar.gz 229678 BLAKE2B edb03554a14b90fbb5a4c99cb46ed73ffd702ff2fa417765d4e4bdaddd6bc40554f18aae10db81af87bbc8c91a4f966785fefdf43cfc97b18fc950c1aa59a370 SHA512 8affb5115c7531ee005544f002068b0b13b6aa41c5e11213ba8c979373a5328f298612903e531b6d384749469d6fa0ddb0d06ac4dac5ab2ca5485c7814db32a3
-DIST ncmpcpp-0.9.2_p20240724.gh.tar.gz 230318 BLAKE2B dd1d464ab8a3e0d10b1a16c6737657190f57710c0e6d6da65270c8f10d1b8abe3877f9bc8b962df1ed82c5246576999f8f6e19523951657699b6b6670cc0e55d SHA512 9d7a52c6dde1459eb2a3606a43826007f43fcdcb01ddd9a1261ed427308dc909d5c73f1f01ffbaebc001b4b99c99ff0746aa869c6c31ae1fcabb70c3abc7f0ed
-EBUILD ncmpcpp-0.10.1.ebuild 1635 BLAKE2B 135dcdd0e7f98bf5ea492fc2bd753bedb04af09357f32e463815d7d52759d5ef288cf15b04faa90cb8f54f253c7fa57c73e8f37c2327304149d42428abc4c358 SHA512 f42fd2ba2141652d1bd4ef009f75c2cdd84ca52068ee52d70d993187241d2980624355fc8261244b3847e905457db27976188de58e4dbad949d09fe7297598f6
+EBUILD ncmpcpp-0.10.1-r1.ebuild 1637 BLAKE2B 8eb06b4a417708971264abcab2fa649185bbf725802722747499823cb505f1a9c3670c20da4b897e6bcac328b7eab12de033b64d5b176da28cf47ec785cfe222 SHA512 ce22389e9a108d0377e2139fe9e6f20a1227532078a897109ac784bdb8f30b01ce1d33376827daa01cfc98c984dc05d53f0ea5f1af0475bf82835953a9e0dc56
EBUILD ncmpcpp-0.10_p20240912.ebuild 1709 BLAKE2B ac3f4461189a818c35668fed029cb39e2802a52ce6a3763fb05f2ab10ad462fb47bf46f062a2688b2aa8ebfdf30ae37784feee4478bdc41fbee44d634ad4aca5 SHA512 9f383ee07bea0304d24ac97d35ab620ec2ba76d8c62a13ecf5dd4603f28758651a5e79c30ecb51c549eff0c3f7c59e6127c2e1c8a4c484dafe72a7bba7d8c5f1
-EBUILD ncmpcpp-0.9.2_p20221231.ebuild 1617 BLAKE2B 1d75b38e83ab58d3c16b7ddf68b33bbad8c1713283475ada08e297395f1447fd379c82a8d40d2013efdbed9c2720adb51137ff939e909853ea0833a146d2d6e3 SHA512 792b5b88b61ac2ac51faade5e5d856fbcaa8d56ebe5d00dd35e88011d19892fbc50c174e254c49d8af728d6b89c18b045a9c862dae27cc07313324e07261215c
-EBUILD ncmpcpp-0.9.2_p20240724.ebuild 1702 BLAKE2B c32531360296552aaabc3b8718d967f95aebd6f0772c0d046c4caf91bae421dfb4b0dba87a916864686df940c11da9dc44820a76da459e07ca4894cce046588e SHA512 13b6ca70aa386e939d31d9b3fb83e5095574c64cc463101131f79df25b0117f22bc712bd3ab4276128a7e9a2464a371105a5b3ffdca1c9fa672849640fcc1654
-EBUILD ncmpcpp-9999.ebuild 1429 BLAKE2B 8d1f56c98f03207799b94e45d993100ba4023d7236076ac2bc789ba830f31878e7c9402d4f004dfaff1c4198fcf17ce3cdceae928c13fadceb4a1883890153e4 SHA512 dcf87977ebe3c0c2f037c9ae6d28631f1f86a23982045e10ab2333c3cd971498bad465cd32a8fe77500b53844da46c580d2f2a7b14f5469eba363ddc6c950429
+EBUILD ncmpcpp-9999.ebuild 1431 BLAKE2B ac0aba81d292aab3bed285f81b8425ffc4d55566515ad315e3cad075b04d229a8a7555d74c1afec6b016b4f5ef95bffc8a5a3aef408d377f19dab8ff746f6b40 SHA512 9971625198acf907642293b008d42c7677740ad9e6112c7b6ff2c2afabc9d03cc03c60c870cda52d81090bf0b7fd1bb5609fedb3c40479b59b099a62e99a125e
MISC metadata.xml 1476 BLAKE2B 230c8e7963b393603b8c1b9d84bd158eea44c0c4ab17eefbd750700b73fbfbd9a52093332a2f52fab291993e340ca887b1ed6d1205441ba64f0d0466856ae508 SHA512 8681edd3a515614d53ace0f4e3b340681ad5642cb6d42a007367f610c2fdf6832cc753cf79f0451d582f1276370447106d8949aeaba40755e3af659d6c91d201
diff --git a/media-sound/ncmpcpp/ncmpcpp-0.10.1.ebuild b/media-sound/ncmpcpp/ncmpcpp-0.10.1-r1.ebuild
index a3592dc0fdd5..bfb1410aa37c 100644
--- a/media-sound/ncmpcpp/ncmpcpp-0.10.1.ebuild
+++ b/media-sound/ncmpcpp/ncmpcpp-0.10.1-r1.ebuild
@@ -24,7 +24,7 @@ RDEPEND="
net-misc/curl
sys-libs/ncurses:=[unicode(+)]
sys-libs/readline:=
- taglib? ( media-libs/taglib )
+ taglib? ( media-libs/taglib:= )
visualizer? ( sci-libs/fftw:3.0= )
"
DEPEND="${RDEPEND}"
diff --git a/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20221231.ebuild b/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20221231.ebuild
deleted file mode 100644
index de3e7bbcf1d2..000000000000
--- a/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20221231.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools
-
-NCMPCPP_COMMIT="9f44edf0b1d74da7cefbd498341d59bc52f6043f"
-
-DESCRIPTION="Featureful ncurses based MPD client inspired by ncmpc"
-HOMEPAGE="
- https://rybczak.net/ncmpcpp/
- https://github.com/ncmpcpp/ncmpcpp/
-"
-SRC_URI="https://github.com/ncmpcpp/ncmpcpp/archive/${NCMPCPP_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/${PN}-${NCMPCPP_COMMIT}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc x86"
-IUSE="clock outputs taglib visualizer"
-
-RDEPEND="
- >=media-libs/libmpdclient-2.1
- dev-libs/boost:=[icu,nls]
- dev-libs/icu:=
- net-misc/curl
- sys-libs/ncurses:=[unicode(+)]
- sys-libs/readline:=
- taglib? ( media-libs/taglib )
- visualizer? ( sci-libs/fftw:3.0= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-src_prepare() {
- default
- eautoreconf
-
- sed -i -e '/^docdir/d' {,doc/}Makefile{.am,.in} || die
- sed -i -e 's|COPYING||g' Makefile{.am,.in} || die
-}
-
-src_configure() {
- # --with-lto only appends -flto
- econf \
- $(use_enable clock) \
- $(use_enable outputs) \
- $(use_enable visualizer) \
- --without-lto \
- $(use_with taglib) \
- $(use_with visualizer fftw)
-}
-
-src_install() {
- default
-
- dodoc doc/{bindings,config}
-}
-
-pkg_postinst() {
- echo
- elog "Example configuration files have been installed at"
- elog "${EROOT}/usr/share/doc/${PF}"
- elog "${P} uses ~/.ncmpcpp/config and ~/.ncmpcpp/bindings"
- elog "as user configuration files."
- echo
- if use visualizer; then
- elog "If you want to use the visualizer, you need mpd with fifo enabled."
- echo
- fi
-}
diff --git a/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20240724.ebuild b/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20240724.ebuild
deleted file mode 100644
index 7857b3212b84..000000000000
--- a/media-sound/ncmpcpp/ncmpcpp-0.9.2_p20240724.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit autotools
-
-NCMPCPP_COMMIT="68daf44032784a5b5b74781a9bf3826053eff4a2"
-
-DESCRIPTION="Featureful ncurses based MPD client inspired by ncmpc"
-HOMEPAGE="
- https://rybczak.net/ncmpcpp/
- https://github.com/ncmpcpp/ncmpcpp/
-"
-SRC_URI="https://github.com/ncmpcpp/ncmpcpp/archive/${NCMPCPP_COMMIT}.tar.gz -> ${P}.gh.tar.gz"
-S="${WORKDIR}/${PN}-${NCMPCPP_COMMIT}"
-
-LICENSE="GPL-2+"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86"
-IUSE="clock outputs taglib visualizer"
-
-RDEPEND="
- >=media-libs/libmpdclient-2.1
- dev-libs/boost:=[icu,nls]
- dev-libs/icu:=
- net-misc/curl
- sys-libs/ncurses:=[unicode(+)]
- sys-libs/readline:=
- taglib? ( media-libs/taglib )
- visualizer? ( sci-libs/fftw:3.0= )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="virtual/pkgconfig"
-
-src_prepare() {
- default
- eautoreconf
-
- sed -i -e '/^docdir/d' {,doc/}Makefile{.am,.in} || die
- sed -i -e 's|COPYING||g' Makefile{.am,.in} || die
-}
-
-src_configure() {
- local myeconfargs=(
- --without-lto # --with-lto only appends -flto. We need more for a dedicated USE flag
- $(use_enable clock)
- $(use_enable outputs)
- $(use_enable visualizer)
- $(use_with taglib)
- $(use_with visualizer fftw)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- dodoc doc/{bindings,config}
-}
-
-pkg_postinst() {
- echo
- elog "Example configuration files have been installed at"
- elog "${EROOT}/usr/share/doc/${PF}"
- elog "${P} uses ~/.ncmpcpp/config and ~/.ncmpcpp/bindings"
- elog "as user configuration files."
- echo
- if use visualizer; then
- elog "If you want to use the visualizer, mpd needs to be built with fifo USE flag."
- echo
- fi
-}
diff --git a/media-sound/ncmpcpp/ncmpcpp-9999.ebuild b/media-sound/ncmpcpp/ncmpcpp-9999.ebuild
index 72c948365b60..6d079cda4c94 100644
--- a/media-sound/ncmpcpp/ncmpcpp-9999.ebuild
+++ b/media-sound/ncmpcpp/ncmpcpp-9999.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
net-misc/curl
sys-libs/ncurses:=[unicode(+)]
sys-libs/readline:=
- taglib? ( media-libs/taglib )
+ taglib? ( media-libs/taglib:= )
visualizer? ( sci-libs/fftw:3.0= )
"
DEPEND="${RDEPEND}"
diff --git a/media-sound/nickvision-tagger/Manifest b/media-sound/nickvision-tagger/Manifest
index 1e3b62a4592b..c5e3a9c4db2f 100644
--- a/media-sound/nickvision-tagger/Manifest
+++ b/media-sound/nickvision-tagger/Manifest
@@ -1,5 +1,5 @@
AUX nickvision-tagger-2022.11.2-fix-narrowing.patch 1067 BLAKE2B 5071f3f3449b80e1b13b93f6ca0fd5931bbbfbeee3f85bdaf2e78aa946796c02ee50a9cb1140c3a50a1a643b3ac24e24d411d7ae6723a00498de02b0144dbe4a SHA512 a01db22ae8ec1b5c1884f7cd1b624ff43168ef830c6bc43927d0061b432f3b8af5bf3ca88958e8de2a4a4f457b355f78e689428b1b00940991c3375cc08aabb7
AUX nickvision-tagger-2022.11.2-meson-install.patch 725 BLAKE2B c34f275c9efaa11f64ec68ebdb245e3f22eb595d331ffd0a7243bc0afc6c85e8cb895af8225f327bc1f8e85a69fbdf008b9879e0d5e007af54302ec72a3637e3 SHA512 17e44df62c38e2c97005a1c6da12d02e41e1ba0bcb04870188384df3864c1373c3b5227a9ad521d53855e817a2c79ff75c1a6127aad1ec58cdad0ad0a49ce55d
DIST nickvision-tagger-2022.11.2.tar.gz 2829711 BLAKE2B 308a7f66f4b79d8c01d546760d290b419e1ed901a3c8fff06827577215b363fc41fa5cfa60ef6abb2c04148624f9c63553d3e805b128694153fc11f366f8f103 SHA512 49420109d228c65fb7ff9b65cd1dbb60466840d439b9ca47ee45e3778159f953ffa32b7516146e6ae7b2df7ee8dd87458f780e83379e31978a0d7919fb109fcf
-EBUILD nickvision-tagger-2022.11.2.ebuild 733 BLAKE2B 3d6379991f2c60bd9405fb01aa1c14dfb76cf175315806dfd657d4e305851ecb4808cc7e9186a5b204230c46ccb2c65574f05a2dbe949ad7ce2e3bbe314fe067 SHA512 59f951a729cf60a817dcfba8a12a1ae7c6493ad82c14be94629b866ff9a0fcc0c4b165aec5f7a249227862721dede0da6613a11e4f808bd258c8215d0174544e
+EBUILD nickvision-tagger-2022.11.2-r1.ebuild 734 BLAKE2B f57573d0f6043018b8c1b860cda22aa093a9e46463469f515d0ee649920188a830c2520edffa595ba180ff8bf5dc5c7cd4af0af5da0829438524be2a7a7870c3 SHA512 4565bebdb76fb7e6b997c67370527679cf0cb046935f4184308a3a76dc83bbb6318a8b8dba5fd0ffff00d53482f603e7025d68a6650f40ff989bed91fdb4aaa2
MISC metadata.xml 683 BLAKE2B d8cc722eaeb828de182fcb400f700b31bf57b0e450995a6096956e37a47935fbe0aa48963b870763162b3d494a5f507b0244832e75e0c66cbfb9cc9c1c2e9afa SHA512 d25e81467c8ee1ecbe44d787798dba55aa3448ddc27387a325aaf9b65cae068bacf8d1835173818c923544fff07e9a56a5ca48fd88e1d67e4af6376f20dab92a
diff --git a/media-sound/nickvision-tagger/nickvision-tagger-2022.11.2.ebuild b/media-sound/nickvision-tagger/nickvision-tagger-2022.11.2-r1.ebuild
index a52cef4d5091..7684a033537f 100644
--- a/media-sound/nickvision-tagger/nickvision-tagger-2022.11.2.ebuild
+++ b/media-sound/nickvision-tagger/nickvision-tagger-2022.11.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,7 +23,7 @@ DEPEND="
dev-libs/jsoncpp:=
gui-libs/gtk:4
gui-libs/libadwaita:=
- media-libs/taglib:=
+ <media-libs/taglib-2
"
RDEPEND="
${DEPEND}
diff --git a/media-sound/qmmp/Manifest b/media-sound/qmmp/Manifest
index 8d15c0ab3f95..199e06d943e7 100644
--- a/media-sound/qmmp/Manifest
+++ b/media-sound/qmmp/Manifest
@@ -1,5 +1,5 @@
AUX qmmp-1.6.0-udisks_plugin.patch 321 BLAKE2B a3a0e6ca792a9399eef189e319113b63094cbc32a2d8912c7d7174589f34729be4ce0638323f449320cd34df0b1e3780ff43ae3c211cc6c96ba823cb0fed53bd SHA512 d88eadf6e725617cc50ef809532a5eaa0272745c74697953850c52dca3586809bd83f3804925e65607379e7156210686fe906da729371ba251ebfa1168e59b97
DIST qmmp-1.6.4.tar.bz2 1379335 BLAKE2B e17ec8f84f94cfbc6a0a1d30d6d954f3e6b3448909c0e3344614340b41974d69aa5bd3dbb149fcc88c6ede289ec7900050eb0de81307dfeb8ebfc360255d1ea6 SHA512 da8eae4ca4e10cca8a177064a422fdc196e76bb5e3e06c3029040e1120da0d2e5666824a8effd51f82c94b999e1243ae3bc6c71c8c05e334276bf40a5767c17f
-EBUILD qmmp-1.6.4.ebuild 4081 BLAKE2B 83ed22bd9982736f6f5a2d248af398b3ffea7c8dad7cca10a3233ab8e8b72ce86f014f28a99ec915117cb48fe170e8a8b609976551e995f7e9e4db72575ff834 SHA512 8a0a1d39eb089c2112582bc64243cd94b9daf321c3817c695647f118606c9c27a964b59ce7c8ef1f09488abe0f39b6da90d07ea269101c8ca1bee10da0a82403
-EBUILD qmmp-9999.ebuild 4143 BLAKE2B 5147c89da2a5e286280b57c556ce0c70efbb04d5c0f8c9740d4deecf3bef0db5494401633f481a6890036f68c635cb70df050b6ac6ea3dd6dcfdfd092cb2a09c SHA512 df0dc24dcc9369ca5ba2415938b64f045f6345ff6da7750b4eb21a9aeeace5f1c29c717b20d43f93ff23424a003048418b4d14e1d15feee1e1880e3fe8e12a2a
-MISC metadata.xml 1890 BLAKE2B 266030fbd5a969d0c236011c2221510331ec8edfe54d25d9a4cca8b4ebeda17494edae948f604b83dd85e323c1ddc004eded32dd454f6c903524780c22f1ba9a SHA512 df4850efb0d889f398f3c0411aa0fc1119d30fd0c7d43c064bbc9e4826cb67629d798ebf3e2947406f6aec7a4272699b5732d1bb0f88ec40e2796869d39c8864
+EBUILD qmmp-1.6.4-r1.ebuild 4083 BLAKE2B 192923fe82f5585ee3dec25bbbb4f58820c4b84e21ec0f1c05a8ef28311dac2c8b6888dd010471e6d3b9e0707751d2bab9f2f6e61da94d46ca2751f71e8e0007 SHA512 8ccd111773454bedaa34edfb626f26f6b546fd9d5126b877bc31237b6aaa497f4a8774a8f87aaf62d9f955a7690713e8a415a560a2fc96e3d57ff65b59011622
+EBUILD qmmp-9999.ebuild 4145 BLAKE2B 34c1fd3b55a7f11b6c71c4575e28e952b2097b288a0d7c0c02391e5677c149b8cfb08208042a1189f8c06ad6614541e0f4bf852b66fd699cbf3a9e84f521e08c SHA512 6131fc6abb2ce9189d1c68c05db9e7302160c2de5b7c7f61df1fe6f939a03132a458e5702393242c16b7e37f85e4d4dd7a32cd210b267c26830beb96c3109f48
+MISC metadata.xml 1968 BLAKE2B 0508c5799d28580937911ca77c1787889b96e48a7a2bd3c60b8b180f39c7ff5f2faec6a7ad9d1fd5b5bc4dfba8c8495eb58893eb1e9ce90fe10c7a6111f546ae SHA512 ca044d6199e5f0b14fd667cbc10c95c93bb03b616a3e492c5ea933751890cd708b2bf61bec667b84f8aa01ddfccb9eff324203a9487da43ee47aa018e527300c
diff --git a/media-sound/qmmp/metadata.xml b/media-sound/qmmp/metadata.xml
index f3b32f35bd28..6f150fbd17d6 100644
--- a/media-sound/qmmp/metadata.xml
+++ b/media-sound/qmmp/metadata.xml
@@ -31,4 +31,7 @@
<flag name="tray">Build tray icon</flag>
<flag name="xmp">Enable module files renderer (modplug replacement)</flag>
</use>
+ <upstream>
+ <remote-id type="sourceforge">qmmp-dev</remote-id>
+ </upstream>
</pkgmetadata>
diff --git a/media-sound/qmmp/qmmp-1.6.4.ebuild b/media-sound/qmmp/qmmp-1.6.4-r1.ebuild
index d51786af6c2d..4c0244fe4e2f 100644
--- a/media-sound/qmmp/qmmp-1.6.4.ebuild
+++ b/media-sound/qmmp/qmmp-1.6.4-r1.ebuild
@@ -38,7 +38,7 @@ RDEPEND="
dev-qt/qtsql:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
- media-libs/taglib
+ media-libs/taglib:=
x11-libs/libX11
aac? ( media-libs/faad2 )
alsa? ( media-libs/alsa-lib )
diff --git a/media-sound/qmmp/qmmp-9999.ebuild b/media-sound/qmmp/qmmp-9999.ebuild
index e69b0aa74275..98bde86c0905 100644
--- a/media-sound/qmmp/qmmp-9999.ebuild
+++ b/media-sound/qmmp/qmmp-9999.ebuild
@@ -38,7 +38,7 @@ RDEPEND="
dev-qt/qtsql:5
dev-qt/qtwidgets:5
dev-qt/qtx11extras:5
- media-libs/taglib
+ media-libs/taglib:=
x11-libs/libX11
aac? ( media-libs/faad2 )
alsa? ( media-libs/alsa-lib )
diff --git a/media-sound/qtagger/Manifest b/media-sound/qtagger/Manifest
index 5388bfb105e7..758eecb61400 100644
--- a/media-sound/qtagger/Manifest
+++ b/media-sound/qtagger/Manifest
@@ -1,3 +1,3 @@
DIST qtagger-1.0.1_p20150402.tar.gz 60745 BLAKE2B 0260ac8cf4b07cdb3b5887357ac4034f4c02a801cc91568cc54cb73293884fefcdbf2019d1b61542353f4ef2e79c07ffda1c1414ff4b99d10faff1e8dcab95fb SHA512 2510350d479008b0c2af4b489aa16ab88003b18f1cbb66796dece6c93dd4222ff073f575b9de8136fb6a46ece1c67ace7de605ef3db0c73038a52472d652f279
-EBUILD qtagger-1.0.1_p20150402.ebuild 1059 BLAKE2B 885911975ea4aa10e2add3b7f43b2e5a22c68b55aa425341f822bcb41e7cfaed66967d61cf769728ecbb0fa96bcf0dd06728a468a4c6bd4d90672a352cf1c081 SHA512 b1270bfef7774e0263efc66b6032b4458b107dc6a34c5b54f31bc457950399c60b44dcd8ebca25f05e47daf63c855b786edd4033a2a632f6e0a93a976d44c1a3
+EBUILD qtagger-1.0.1_p20150402-r1.ebuild 1061 BLAKE2B 6124b08a8d1cf91f0dac4e0c295870f3b4b53b46f21dbba5a172bc5b8ad3241e6baa5afb3ecde7536b829738d559d09e66782fcbbcd310eb649a967d1d87ebd1 SHA512 82f12830ac5ce98c955da9261070a3f710c4825ff6b89facd020e29646de28a9fb0280c8b825fb53fae93e2a3378f6f33be9082c02b0c88aec2361ce319776ea
MISC metadata.xml 247 BLAKE2B ef2476e5a6eff3269291ee3ffa63751a6aa9c11859168ebdef6e348f288d1286f58e74605a6aae67eabfd95c4d763530b2e2d9cffce0b126c8a7cadfaaa05ea2 SHA512 60c4e96a2bfca1af98ca79b09bb8a155e7c442466d83172c49002e2218b00803b12606f9ea8934317a0a37c19ebf9a2f8d9fc7f95d275244a623e20ae3c5f56c
diff --git a/media-sound/qtagger/qtagger-1.0.1_p20150402.ebuild b/media-sound/qtagger/qtagger-1.0.1_p20150402-r1.ebuild
index d03fe2b1e684..0c84b86524e1 100644
--- a/media-sound/qtagger/qtagger-1.0.1_p20150402.ebuild
+++ b/media-sound/qtagger/qtagger-1.0.1_p20150402-r1.ebuild
@@ -1,7 +1,7 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
CMAKE_MAKEFILE_GENERATOR="emake"
COMMIT=0e74fe022ddbb689f7bae0460a21be303114029b
@@ -21,7 +21,7 @@ DEPEND="
dev-qt/qtcore:5
dev-qt/qtgui:5
dev-qt/qtwidgets:5
- media-libs/taglib
+ media-libs/taglib:=
"
RDEPEND="${DEPEND}"
diff --git a/media-sound/quimup/Manifest b/media-sound/quimup/Manifest
index 604395fd6b6a..038da8e1c276 100644
--- a/media-sound/quimup/Manifest
+++ b/media-sound/quimup/Manifest
@@ -1,3 +1,7 @@
+AUX quimup-1.4.4-fix-build-taglib2.patch 2400 BLAKE2B cf8714c2a7b810ff83cfcc00d60f7bb96bbc2a6d84d928b9b1f83dd0077189e9be63bdbf6e66d1d239e6de445c5b37257164dca51cddadf19b9297ff7b6102a7 SHA512 78deda1fb599cd94227fcef12b673b76103aa9ff29e3515c09d4b12cd2282007ba114f7ef1a537fddeb3c0d8f6d934041a23da4a2ae1fcec85d0a2daf2b879a1
+DIST Quimup-2.1.0.source.tar.gz 697565 BLAKE2B 78b950d0134041becac0d2eb6786db90797127882279bd078da332df5cc3d1bfea8da256cfc49f6a83eefb8b25a3beb60af0d7bf3e1e8394b46956ba72fd6dc8 SHA512 c7d86deaa6483ea9467e2bc8dd7e413f67ebf271713cab939cda8c9689a52651b45724d99cdec7d72350273fb59e2542acf82ebc9da1cea8e0210f575351e686
DIST Quimup_1.4.4_source.tar.gz 240902 BLAKE2B a411653b1c5ced5dc7f4b9ebe6244380d23cd165eaf2b14760a3f87946094f7ffad3df73afe500c0f8ea8f6d77e690391e78a0403b9436485b4c670de3c3b0da SHA512 4fac921df6e7157952536e1cdda0e468b72f70f8f938ccfd5d1a7d286f4b7d7ac063ca2c6111f38fb76b2a6235a323858f2f898165c80702b2c0aaeaff8869c9
+EBUILD quimup-1.4.4-r1.ebuild 835 BLAKE2B 14d8180ea1c3e8d3669594a6d1a2f51e7527eb3ba44bf9c712d6789beb4b8004630914302511ea83b54942f68ce2c3b17ff5d369ba6d4bbcc05b2da96288a433 SHA512 9e8fbfbdb794f4548fe52f4759c37e4b7d76ed2196a64188a9984cf4a30e1f6181c40f37f95a4ab8132e97b12452fa0b1f03bde74931d5b93cc4270a618de820
EBUILD quimup-1.4.4.ebuild 781 BLAKE2B c20730b29e50e101ac3be6fb2f6c4c0d2dad2f01e058059b6ce76030a2d13298644e829e05fbcdffc6df76c50af65abed00ea991e9adf4b51bd9d865b269a095 SHA512 3e7f3c24ae8a74ea56f755b5328b1f739e9164d5a041963bf7458aa112ce62d1770a843bbd71b13b3b7e2ba571cb6fe38b3866dc9f04dd6cdd5143ace81db56c
+EBUILD quimup-2.1.0.ebuild 774 BLAKE2B 47ae5ef84e17adfe0fa011c441547d375a62e7954248202f0b0958dc52102c12639845219a6fedf7caa45f2118947864541c8c2024abe933d26d002ce6537655 SHA512 8ceb664eb536aa98d9014eeb7fea3254c388938088e8f66a5c247cc1d7092d61fe9f4117de82e7ebbdf2db9ed52a5831f9ab080332cfe0dc9dd5dee0214c7ec8
MISC metadata.xml 340 BLAKE2B 4dde137fc76457df7ae4756ce9e67c9bc6828fe5dfc77fa4f61e1ecb04805204cc227c4cff7b76f54541f73c46e05db111c3b2882df5e40512118092df182d1f SHA512 23e3cb8ae1ebe521e59122bc3c210483d0cef828d79187820c0c247386f5ff8e65dc2b41fd9d2b664efd21fb9ddcc2ef89f4f54696004d5d9319f9c8df7caff9
diff --git a/media-sound/quimup/files/quimup-1.4.4-fix-build-taglib2.patch b/media-sound/quimup/files/quimup-1.4.4-fix-build-taglib2.patch
new file mode 100644
index 000000000000..e3c56b090021
--- /dev/null
+++ b/media-sound/quimup/files/quimup-1.4.4-fix-build-taglib2.patch
@@ -0,0 +1,50 @@
+no upstream PR. It doesn't use anymore taglib for his 2.X
+--- a/src/qm_player.cpp
++++ b/src/qm_player.cpp
+@@ -2021,7 +2021,7 @@
+ {
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+
+- TagLib::ByteVector item = listMap["COVER ART (FRONT)"].value();
++ TagLib::ByteVector item = listMap["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // Skip the filename
+
+ if (++pos > 0)
+@@ -2166,8 +2166,8 @@
+ if (mp4file.tag()) // has MP4 tag
+ {
+ TagLib::MP4::Tag *tag = static_cast<TagLib::MP4::Tag *>(mp4file.tag());
+- TagLib::MP4::ItemListMap itemsListMap = tag->itemListMap();
+- if (tag->itemListMap().contains("covr"))
++ TagLib::MP4::ItemMap itemsListMap = tag->itemMap();
++ if (tag->itemMap().contains("covr"))
+ {
+ TagLib::MP4::Item coverItem = itemsListMap["covr"];
+ TagLib::MP4::CoverArtList coverArtList = coverItem.toCoverArtList();
+@@ -2197,7 +2197,7 @@
+ {
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+
+- TagLib::ByteVector item = listMap["COVER ART (FRONT)"].value();
++ TagLib::ByteVector item = listMap["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // Skip the filename
+
+ if (++pos > 0)
+@@ -2230,7 +2230,7 @@
+ printf ("APE tag COVER ART found\n");
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+
+- TagLib::ByteVector item = listMap["COVER ART (FRONT)"].value();
++ TagLib::ByteVector item = listMap["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // Skip the filename
+
+ if (++pos > 0)
+@@ -2270,7 +2270,7 @@
+ {
+ const TagLib::ByteVector nullStringTerminator(1, 0);
+
+- TagLib::ByteVector item = listMap["COVER ART (FRONT)"].value();
++ TagLib::ByteVector item = listMap["COVER ART (FRONT)"].binaryData();
+ int pos = item.find(nullStringTerminator); // Skip the filename
+
+ if (++pos > 0)
diff --git a/media-sound/quimup/quimup-1.4.4-r1.ebuild b/media-sound/quimup/quimup-1.4.4-r1.ebuild
new file mode 100644
index 000000000000..82130b3eed95
--- /dev/null
+++ b/media-sound/quimup/quimup-1.4.4-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop qmake-utils
+
+DESCRIPTION="Qt5 client for the music player daemon (MPD)"
+HOMEPAGE="https://sourceforge.net/projects/quimup/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${PN^}_${PV}_source.tar.gz"
+S="${WORKDIR}/${PN^}_${PV}_source"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtwidgets:5
+ media-libs/libmpdclient
+ media-libs/taglib:=
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/${P}-fix-build-taglib2.patch )
+
+DOCS=( changelog FAQ.txt README )
+
+src_configure() {
+ eqmake5
+}
+
+src_install() {
+ default
+ dobin ${PN}
+
+ newicon src/resources/mn_icon.png ${PN}.png
+ make_desktop_entry ${PN} Quimup
+}
diff --git a/media-sound/quimup/quimup-2.1.0.ebuild b/media-sound/quimup/quimup-2.1.0.ebuild
new file mode 100644
index 000000000000..c697b0f774e2
--- /dev/null
+++ b/media-sound/quimup/quimup-2.1.0.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop qmake-utils xdg
+
+DESCRIPTION="Qt client for the music player daemon (MPD)"
+HOMEPAGE="https://quimup.sourceforge.io"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P^}.source.tar.gz"
+S="${WORKDIR}/${P^}.source"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-qt/qtbase:6[gui,network,widgets]
+ media-libs/libmpdclient
+"
+DEPEND="${RDEPEND}"
+BDEPEND="virtual/pkgconfig"
+
+DOCS=( changelog faq readme )
+
+src_configure() {
+ eqmake6
+}
+
+src_install() {
+ default
+ dobin ${PN}
+
+ for x in 32 64 128 scalable; do
+ doicon -s ${x} RPM_DEB_build/share/icons/hicolor/${x}*/*
+ done
+
+ domenu RPM_DEB_build/share/applications/${PN^}.desktop
+}
diff --git a/media-sound/strawberry/Manifest b/media-sound/strawberry/Manifest
index 5c3eb01d091b..b022f2ad5435 100644
--- a/media-sound/strawberry/Manifest
+++ b/media-sound/strawberry/Manifest
@@ -3,6 +3,6 @@ DIST strawberry-1.2.2.tar.xz 11460012 BLAKE2B bf0edcec29b85cd33b8f2ee883979e6056
DIST strawberry-1.2.3.tar.xz 11460484 BLAKE2B 7fc1313a496a4f19ca2853b3cc21ba0ceab8dfa2a4916271fd073e7171e4705f232c244598df550574c57bd73cf1446e384d0d563cf9281be32f2d01ef996d65 SHA512 3efe5c8245376731a0558493f6153d312badad21553502d9a876c0d00c74c157aa3b7549815d9925457cedf87f1c94dca25588ae4ece1cf442b9a29f056dc447
EBUILD strawberry-1.1.3.ebuild 3374 BLAKE2B 441ff1c297048bcdaa94fd2d7be1cd5291d6e8ff86775f75043db44277857cf8e3f83fb3a7b245a481a8e171c8635933557af0cc136fe0dd47e78ea1f3c473bb SHA512 5320f1429991cff0c20e1279554f83f6346599251d183cb6e253a2d83aaecfa1ba111c10c9d5efc096a9310f39047256686a6417fa63ed4783bab9f929cafd7e
EBUILD strawberry-1.2.2.ebuild 2990 BLAKE2B 2b0d96c3d88084a5878182a360066abbdfd14c9aeb4aa54dc68e153221f3239eecca28b5718a68fcf8e4bbb8024856a9616b2b7e4f35d60038d89582c3ff3fa2 SHA512 6a4ffb183f42ecf7436856d22872e10157cc1b31decaa6da62aca830bc880a414526e9d633bfe4af92483dad090cb7b79ffc3aea96113da87ca2c592dda10396
-EBUILD strawberry-1.2.3.ebuild 2990 BLAKE2B 2b0d96c3d88084a5878182a360066abbdfd14c9aeb4aa54dc68e153221f3239eecca28b5718a68fcf8e4bbb8024856a9616b2b7e4f35d60038d89582c3ff3fa2 SHA512 6a4ffb183f42ecf7436856d22872e10157cc1b31decaa6da62aca830bc880a414526e9d633bfe4af92483dad090cb7b79ffc3aea96113da87ca2c592dda10396
-EBUILD strawberry-9999.ebuild 2990 BLAKE2B 2b0d96c3d88084a5878182a360066abbdfd14c9aeb4aa54dc68e153221f3239eecca28b5718a68fcf8e4bbb8024856a9616b2b7e4f35d60038d89582c3ff3fa2 SHA512 6a4ffb183f42ecf7436856d22872e10157cc1b31decaa6da62aca830bc880a414526e9d633bfe4af92483dad090cb7b79ffc3aea96113da87ca2c592dda10396
+EBUILD strawberry-1.2.3-r1.ebuild 2992 BLAKE2B d979cf90a9e1a54d37b0538f192762bc4554f048731b35c74a13bfdd0382d15a6230f948aac8df31c293481ec5dd86b7438a0baef1b836c342c61fdbf877296e SHA512 ec85d3363fba9f85c744a01458c4a43f05e1c193b43ba67f47be0cee5d676ca331efb3cce39744834388a9db4ed8001c25cc71962ae2bfb638a3a70d7dba4424
+EBUILD strawberry-9999.ebuild 2992 BLAKE2B d979cf90a9e1a54d37b0538f192762bc4554f048731b35c74a13bfdd0382d15a6230f948aac8df31c293481ec5dd86b7438a0baef1b836c342c61fdbf877296e SHA512 ec85d3363fba9f85c744a01458c4a43f05e1c193b43ba67f47be0cee5d676ca331efb3cce39744834388a9db4ed8001c25cc71962ae2bfb638a3a70d7dba4424
MISC metadata.xml 886 BLAKE2B 3be6ba12b734f2b3dc93d42ea20be3bfd0b2a534c683ae5a9e332b538e2e7044b9ffbd8528242bd904c48d8e279e3e05292232af38cee91cfb9c8e12e618b67e SHA512 c0d2c35d46cfe96ba8cab89f0cba8946cf8dc65bf14d87ea46f483df5bdb302eb14eaae85f1a99bb88c69629a7a2df0b9b8acdc3dedcfb5fe512dd6d18307c76
diff --git a/media-sound/strawberry/strawberry-1.2.3.ebuild b/media-sound/strawberry/strawberry-1.2.3-r1.ebuild
index 50b3d4f3a933..3179da1a806c 100644
--- a/media-sound/strawberry/strawberry-1.2.3.ebuild
+++ b/media-sound/strawberry/strawberry-1.2.3-r1.ebuild
@@ -30,7 +30,7 @@ COMMON_DEPEND="
dev-libs/glib:2
dev-libs/icu:=
media-libs/alsa-lib
- media-libs/taglib
+ media-libs/taglib:=
dev-libs/kdsingleapplication[qt6(+)]
dev-qt/qtbase:6[concurrent,dbus?,gui,network,ssl,sql,sqlite,widgets,X?]
media-libs/gstreamer:1.0
diff --git a/media-sound/strawberry/strawberry-9999.ebuild b/media-sound/strawberry/strawberry-9999.ebuild
index 50b3d4f3a933..3179da1a806c 100644
--- a/media-sound/strawberry/strawberry-9999.ebuild
+++ b/media-sound/strawberry/strawberry-9999.ebuild
@@ -30,7 +30,7 @@ COMMON_DEPEND="
dev-libs/glib:2
dev-libs/icu:=
media-libs/alsa-lib
- media-libs/taglib
+ media-libs/taglib:=
dev-libs/kdsingleapplication[qt6(+)]
dev-qt/qtbase:6[concurrent,dbus?,gui,network,ssl,sql,sqlite,widgets,X?]
media-libs/gstreamer:1.0
diff --git a/media-sound/taginfo/Manifest b/media-sound/taginfo/Manifest
index a79d7eabf38a..75418465068e 100644
--- a/media-sound/taginfo/Manifest
+++ b/media-sound/taginfo/Manifest
@@ -1,3 +1,4 @@
DIST taginfo-1.2.tar.bz2 8272 BLAKE2B 07ea6bbdbd7db614be4cb989d4ae1968dab2c5f7dcb44288875dc8874015609b02c8d17dc0e946bb7fff013e2fd20f95aab02ec73441e40dfac2bb5a0ea09f16 SHA512 5e12d63ff3f7db2ed5bb877a3ab6e1a1a63793df30d0433ddb30e2630cab82bff4644331915e3cf80054a55435672b6b534c2550765ee4f88e1e0bf1859fd6e3
EBUILD taginfo-1.2-r2.ebuild 553 BLAKE2B f23ff0068053339d813d5966b6215c3a1c894867c52ab069e551020a8abb37648d7d06d83034b19f289185896126071f4facddc46bf4415deec62d2eaae081cb SHA512 58f229ec41d949cfcba18c8cc556766690ed5362b1ad72bf9b2d7beba723c446832afafa7a86f3f3d33b55a00dc26ea73e105bc0bd78c2bac7422e58cfcb121b
+EBUILD taginfo-1.2-r3.ebuild 557 BLAKE2B 6bc0762fb6d81dcaf34213381369e095895672a9e29d182d676784d9e01c775fd22c6eece8cbf502016ca6a0c3ea4dd122f566f242726c57bbc283d512e946ff SHA512 68dddbab271f64ed22df3b49bfd09ff93a196e6b788945a02d0e9b8bbea05051ccbdd26ecd741dc8da30d390023651334773da16afaf59757ce89a26ee519897
MISC metadata.xml 254 BLAKE2B 7f76152858fde96b9de5250e4cba30bfe0c5f2aa6ec7c84316072d84e4b664ecd6485642d3d184b1f2ddde8d9e03a94dd47dd00c5b8d82f80c5c0993d5627593 SHA512 7ed31d18221f55928f798dbf095166f535f7c0f5a1c3010b5113fd6b0d275af283f3d2e6839591335ec93bcd50aab5d0f104ad76eefda4d7a6b64d41af183f0b
diff --git a/media-sound/taginfo/taginfo-1.2-r3.ebuild b/media-sound/taginfo/taginfo-1.2-r3.ebuild
new file mode 100644
index 000000000000..ad70c339a467
--- /dev/null
+++ b/media-sound/taginfo/taginfo-1.2-r3.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs
+
+DESCRIPTION="A simple ID3 tag reader for use in shell scripts"
+HOMEPAGE="http://freshmeat.net/projects/taginfo"
+SRC_URI="http://grecni.com/software/taginfo/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="media-libs/taglib:="
+DEPEND="${RDEPEND}"
+
+src_compile() {
+ emake CC="$(tc-getCXX) ${LDFLAGS} ${CXXFLAGS}"
+}
+
+src_install() {
+ dobin taginfo
+ dodoc ChangeLog contrib/mp3-resample.sh README
+}
diff --git a/media-sound/vimpc/Manifest b/media-sound/vimpc/Manifest
index b379adeef248..8f875cc9a5c3 100644
--- a/media-sound/vimpc/Manifest
+++ b/media-sound/vimpc/Manifest
@@ -1,6 +1,6 @@
AUX vimpc-0.09.2-boost.patch 8262 BLAKE2B 4f35c6bf2a5b2d9072a2cba699fe8175af60f5c18d61fd57fdc497e06dd9260eacb41a29af5db6003f40b0b1e7f28a2fed4abe532b64aabd9f7265eab035bf6e SHA512 f1680f0f63277fdc0b57af24558e3715de656f39fdad00ed218c32542bbbe0a63f891b75802709275d4b0e7bac086ed5ea74cded4c37cbfc5c34586c067abac1
AUX vimpc-0.09.2-wformat-security.patch 3679 BLAKE2B bcde98b9a477316bd9d5bb7e2c40702f0a73ddb0a68886f18e85d82c296af6b44a47f0085c23a909fdf7647af4b631dde958d3028497fea962b5c3c1526cf452 SHA512 674878c30aa9050163c6ed2327fcfe957bd750d0f5451a425010914f5b4e8ea075aa9e47b7e35181b5b996f945c4ab347dcc25248f2565c2cef04efdafe08fa9
DIST vimpc-0.09.2.tar.gz 452593 BLAKE2B b6cbeab32318e723d7be114255fba7360fa2608d03bde6b2186d47b1cb8e74b4369d0d2b1d683cf5668232bf4581e9acb79d726308b18ff0d82122aa979f81a1 SHA512 456e2d2c0510273c071b24c2dd8f90b73d40a0b02565c00ea986a78f1231cb26fb053ce5b0d1476647c813b84684e400c21948086299e445ffd651c2af46d4c9
-EBUILD vimpc-0.09.2-r2.ebuild 1168 BLAKE2B 153f943245b35f16c6d1ed17afc1031d6d11302a5d868dbba62a2018d2875c40a6bd24bc3e26c80e9eecf0b04c9e2c95f810dc887bf274bfe2545631d18e4ee5 SHA512 167772643b1e25a4b1896f7006f5353c2e79e0d878cc843765fc1bc31defd6819ece85f985951a9ffa11e4cdb15cdf582f27af9595f1dc9aac05205ea194892f
-EBUILD vimpc-9999.ebuild 1082 BLAKE2B b290fa5a0c20893f91640986f6bbedd3b478064dcdde69d6850161d8b1a8a70d965b9f21921566b3cd514026b198b2a7f5d54c5e0d7137edb79162792203c797 SHA512 c877e903d21c1655e55e69cd06f260a0a5383acdd2323631e0fd81b75e9b8c7b749744fea57d50fc414e5f5705bf7998940e78931738821ab6eceb5cae85b240
+EBUILD vimpc-0.09.2-r3.ebuild 1170 BLAKE2B 7a177fc28a07f89f113b9a8118d947a7e512b6f5474378aa475662e13023fade27cc8a0d68429c4ddee9ba43c4caf3a5cab087d6f1e8aceaa9588a3b4d6bdcc5 SHA512 a869e4234192bcefbe5129e5ba820b2927c99db17a513fe9d86166a896d04b58cd76246656ec67d8f20299b9cf469fbf29a44363661347da812f1433ec4fc2ad
+EBUILD vimpc-9999.ebuild 1084 BLAKE2B fad0f5eba073f27d1c2afa8f57eec7fe7a5ff74479b274c8c8433f6ff58f4db983ced2dac0123ec094cec546f39eef267ff91e323ee3a8809ef7008cdba6da41 SHA512 643bae6345e81048f9e88a606cbdace7221d01ca97aad40d875e55ffc8e4489079706a94ba625f4de52fe60f7f2a8c609e92515b2c8fec4f7e997d3559e73e6b
MISC metadata.xml 524 BLAKE2B 210e96d9fc04676e3a8afcbc80540f894c0fe4473be7b4661648c9e4c00a7e4a37b6159163f62d4d87e6fff914c87cd4c80d7a003f28a2763d5c5178e10c4106 SHA512 bcdfc62784b3bb9413d151da39598a9c1fc0093d0bac075c58514d66f24852a1b7d438aeb24bcb44f83c67f7c630f0f63ab646ccc4c959fd5106fb6bbf9b9e4e
diff --git a/media-sound/vimpc/vimpc-0.09.2-r2.ebuild b/media-sound/vimpc/vimpc-0.09.2-r3.ebuild
index 42d1fa28e1f5..49bf0e3b156e 100644
--- a/media-sound/vimpc/vimpc-0.09.2-r2.ebuild
+++ b/media-sound/vimpc/vimpc-0.09.2-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,7 +23,7 @@ RDEPEND="
dev-libs/libpcre
media-libs/libmpdclient
boost? ( dev-libs/boost:= )
- taglib? ( media-libs/taglib )
+ taglib? ( media-libs/taglib:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
diff --git a/media-sound/vimpc/vimpc-9999.ebuild b/media-sound/vimpc/vimpc-9999.ebuild
index 517aa42ede27..5152dea6f616 100644
--- a/media-sound/vimpc/vimpc-9999.ebuild
+++ b/media-sound/vimpc/vimpc-9999.ebuild
@@ -23,7 +23,7 @@ RDEPEND="
dev-libs/libpcre
media-libs/libmpdclient
boost? ( dev-libs/boost:= )
- taglib? ( media-libs/taglib )
+ taglib? ( media-libs/taglib:= )
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
diff --git a/media-sound/yarock/Manifest b/media-sound/yarock/Manifest
index b3934f7d2b82..0a3dfc8922e6 100644
--- a/media-sound/yarock/Manifest
+++ b/media-sound/yarock/Manifest
@@ -1,3 +1,4 @@
+AUX yarock-1.4.0-fix-build-taglib2.patch 1863 BLAKE2B d52fc6407b663d362e516013b3d011e47240bfc3e8856951a9d2ee12864ca4d9ff2d83d100b24b4b3039422da981ba3fa5891abe3edeeff0e0548ae59c205c12 SHA512 71907f11188558935d180661500da26bc9b815330915a50e1929234f194c8200efd15cb516b58442edb173a08e1a797d25eb217ba319425d12fa252109a7eda4
DIST Yarock_1.4.0_Sources.tar.gz 735399 BLAKE2B e54e995a419e1837b746374d3d7c6655e750d5142cce4d573dc268010b7bcf9da1a15531991769c16693f8b587228da445d4a14a89499600708309876f83bb5f SHA512 39ad470cd53fef738166ca635ca96da0868db406b62be92d276062acc568724a62886b7779eb47fc6a3e6d2825fe417753e9e6b87a978b9009e09d7ea5866f00
-EBUILD yarock-1.4.0-r3.ebuild 1216 BLAKE2B 5a106f69decc2b1dad915e8b45a33b97ba5df4d78b65316915b671284cbe96e148f1dc656a817b945234559ff35276ca7a12fa3d7e8464eb88aabf0275909bc8 SHA512 360d81e67cb87e6a91d9868c834d5ff334274e40e214556ebdb519d59c1b7c1c450afa9b3af3781cc3cff866f7f994b6ede39b64acbe834f18b22a4091b655a4
+EBUILD yarock-1.4.0-r4.ebuild 1281 BLAKE2B 09d4ee71860e48ac6c78ab651f3d55eb61fd2ec66e345c40aa7d0ef90a6feb58b7f4194c74d94a273b3dccffbd147f4ddfb67deb7d0153c64130ddb7a7c98e15 SHA512 48682ff3113006065854d36db3b942769c169d1ae12d0b778e833b34bd2da5df0739c3139ede4d1ccde2d627903ff4384909d68f60946838edb9d0010204f13b
MISC metadata.xml 478 BLAKE2B 61705b6938687fabef20be9ca0733531a8e50dc2a1853e27c62e695ac2a506a3f8b6d456aa21b428544bd31a1c7346317f5905bfa4188c63755e2aad3d5864b6 SHA512 3afed127784c1f952f2c49dd80c527a5816e080f3b1edb83575e4fd325221512c1a5767eb3a0f331db3eaf1c51268d577d8c0524afffa9c2814714aeeb12e1a3
diff --git a/media-sound/yarock/files/yarock-1.4.0-fix-build-taglib2.patch b/media-sound/yarock/files/yarock-1.4.0-fix-build-taglib2.patch
new file mode 100644
index 000000000000..d234866ea26d
--- /dev/null
+++ b/media-sound/yarock/files/yarock-1.4.0-fix-build-taglib2.patch
@@ -0,0 +1,44 @@
+https://github.com/sebaro/Yarock/commit/3cdc8910a6dec9054913dcdd8e804bb79b53b861.patch
+--- a/src/core/mediaitem/tag.cpp
++++ b/src/core/mediaitem/tag.cpp
+@@ -28,6 +28,7 @@
+
+ #include <taglib/mpegfile.h>
+ #include <taglib/asffile.h>
++#include <taglib/attachedpictureframe.h>
+ #include <taglib/vorbisfile.h>
+ #include <taglib/oggfile.h>
+ #include <taglib/oggflacfile.h>
+@@ -289,10 +290,10 @@
+ /*----------------------------------------------------------------------------*/
+ static void readMP4Tags(TagLib::MP4::Tag *tag, MEDIA::TrackPtr track, QString& s_disc )
+ {
+- const TagLib::MP4::ItemListMap& items = tag->itemListMap();
++ const TagLib::MP4::ItemMap& items = tag->itemMap();
+
+ /* album artists tags */
+- TagLib::MP4::ItemListMap::ConstIterator it = items.find("aART");
++ TagLib::MP4::ItemMap::ConstIterator it = items.find("aART");
+ if ( it != items.end() )
+ {
+ TagLib::StringList album_artists = it->second.toStringList();
+@@ -665,7 +666,7 @@
+ else if (TagLib::MP4::File* file = dynamic_cast<TagLib::MP4::File*>(fileref.file()))
+ {
+ TagLib::MP4::Tag* tag = file->tag();
+- tag->itemListMap()[kMP4_FMPS_Rating_ID] = TagLib::StringList(QStringToTaglibString(QString::number( rating )));
++ tag->setItem(kMP4_FMPS_Rating_ID, TagLib::StringList(QStringToTaglibString(QString::number( rating ))));
+ }
+ else
+ {
+@@ -772,8 +773,8 @@
+ if (aac_file)
+ {
+ TagLib::MP4::Tag* tag = aac_file->tag();
+- const TagLib::MP4::ItemListMap& items = tag->itemListMap();
+- TagLib::MP4::ItemListMap::ConstIterator it = items.find("covr");
++ const TagLib::MP4::ItemMap& items = tag->itemMap();
++ TagLib::MP4::ItemMap::ConstIterator it = items.find("covr");
+ if (it != items.end())
+ {
+ const TagLib::MP4::CoverArtList& art_list = it->second.toCoverArtList();
diff --git a/media-sound/yarock/yarock-1.4.0-r3.ebuild b/media-sound/yarock/yarock-1.4.0-r4.ebuild
index 2d7d556e68e6..e12b562a93b8 100644
--- a/media-sound/yarock/yarock-1.4.0-r3.ebuild
+++ b/media-sound/yarock/yarock-1.4.0-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,10 +25,10 @@ RDEPEND="
dev-qt/qtsql:5[sqlite]
dev-qt/qtwidgets:5
dev-qt/qtxml:5
- media-libs/taglib
+ media-libs/taglib:=
x11-libs/libX11
mpv? ( media-video/mpv:=[libmpv] )
- phonon? ( >=media-libs/phonon-4.11.0[qt5(+)] )
+ phonon? ( >=media-libs/phonon-4.12.0[qt5(-)] )
vlc? ( media-video/vlc:= )
"
DEPEND="${RDEPEND}
@@ -39,6 +39,8 @@ BDEPEND="
dev-qt/linguist-tools:5
"
+PATCHES=( "${FILESDIR}"/${PN}-1.4.0-fix-build-taglib2.patch )
+
DOCS=( CHANGES.md README.md )
src_prepare() {