unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#75720] [PATCH 0/4] gnu: Add amarok.
@ 2025-01-21  2:27 Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 1/4] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
                   ` (6 more replies)
  0 siblings, 7 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-21  2:27 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

This series adds amarok.

Sughosha (4):
  gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  gnu: Add libmygpo-qt6.
  gnu: Add taglib-extras.
  gnu: Add amarok.

 gnu/local.mk                                  |   4 +-
 gnu/packages/gpodder.scm                      |  70 ++++----
 gnu/packages/kde-multimedia.scm               |  97 +++++++++++
 gnu/packages/mp3.scm                          |  29 ++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 +++++++++++++++++
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 8 files changed, 472 insertions(+), 158 deletions(-)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch


base-commit: 7aae0e2c159b1612b405a372b18f25fbb58f9d82
-- 
2.47.1





^ permalink raw reply	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH 1/4] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
@ 2025-01-21  2:30 ` Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 2/4] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-21  2:30 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt): Update to 1.1.0-0.4d1f482.
[source]: Switch to git-fetch; update patches.
[home-page]: Update URL.
* gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch: New file.
* gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch: Delete file.
* gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch: Delete file.
* gnu/local.mk: Deregister the deleted files and register the new file.

Change-Id: I5cc3fbc8bfbfa7d88843448a2b5b8ef0fa5df60a
---
 gnu/local.mk                                  |   3 +-
 gnu/packages/gpodder.scm                      |  61 +++----
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 5 files changed, 187 insertions(+), 159 deletions(-)
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5fb354caae..ccfd860b17 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1738,8 +1738,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmp4v2-c++11.patch			\
   %D%/packages/patches/libmpeg2-arm-private-symbols.patch	\
   %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
-  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
-  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
+  %D%/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch	\
   %D%/packages/patches/libpciaccess-hurd64.patch		\
   %D%/packages/patches/libphonenumber-reproducible-build.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index c3e1c9b496..1baca35f06 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -127,34 +127,39 @@ (define-public gpodder
     (license license:gpl3+)))
 
 (define-public libmygpo-qt
-  (package
-    (name "libmygpo-qt")
-    (version "1.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://stefan.derkits.at/files/"
-                                  "libmygpo-qt/libmygpo-qt." version ".tar.gz"))
-              (sha256
-               (base32
-                "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2"))
-              (patches (search-patches "libmygpo-qt-fix-qt-5.11.patch"
-                                       "libmygpo-qt-missing-qt5-modules.patch"))))
-    (build-system cmake-build-system)
-    (native-inputs
-     (list pkg-config))
-    (inputs
-     (list qtbase-5))
-    (arguments
-     '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
-       ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
-       ;; is fixed.
-       #:tests? #f))
-    (home-page "https://gpodder.github.io")
-    (synopsis "Qt/C++ library wrapping the gpodder web service")
-    (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
-@url{https://gpodder.net} APIs.  It allows applications to discover, manage
-and track podcasts.")
-    (license license:lgpl2.1+)))
+  (let ((commit "4d1f48291791c64f029e69138e3bc7fb6a851610")
+        (revision "0"))
+    (package
+      (name "libmygpo-qt")
+      (version (git-version "1.1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+            (url "https://github.com/gpodder/libmygpo-qt")
+            (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1bxv8blyq66600i8skxmccb1lnmliz90378kck4f6j2ynry2114b"))
+         (patches
+          (search-patches "libmygpo-qt-suppot-building-with-qt6.patch"))))
+      (build-system cmake-build-system)
+      (native-inputs
+       (list pkg-config))
+      (inputs
+       (list qtbase-5))
+      (arguments
+       '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
+         ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
+         ;; is fixed.
+         #:tests? #f))
+      (home-page "https://wiki.gpodder.org/wiki/Libmygpo-qt")
+      (synopsis "Qt/C++ library wrapping the gpodder web service")
+      (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
+@url{https://gpodder.net} APIs.  It allows applications to discover, manage and
+track podcasts.")
+      (license license:lgpl2.1+))))
 
 (define-public python-mygpoclient
   (package
diff --git a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
deleted file mode 100644
index 69673c90ee..0000000000
--- a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 1b53767b988b339aac8b353327a1542b2a0c0610 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:29:33 +0200
-Subject: [PATCH] Fix build with Qt 5.11_beta3 (dropping qt5_use_modules)
-
----
- CMakeLists.txt       |  3 ---
- src/CMakeLists.txt   |  8 ++++++--
- tests/CMakeLists.txt | 12 +++++++++---
- 3 files changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index eb006d9..fa4b0cb 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,9 +34,6 @@ else()
-     set( QT_DONT_USE_QTGUI TRUE )
-     include( ${QT_USE_FILE} )
- 
--    macro(qt5_use_modules)
--    endmacro()
--
-     macro(qt_wrap_cpp)
-         qt4_wrap_cpp(${ARGN})
-     endmacro()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 802125b..253e81e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -79,9 +79,13 @@ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} )
- 
- add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} )
- 
--target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}  )
- set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
--qt5_use_modules( ${MYGPO_QT_TARGET_NAME} Core Network )
-+
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
-+else()
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
-+endif()
- 
- install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
- 
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index a3e3223..4f77158 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -11,11 +11,15 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
- 
- # UrlBuilder library
- add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
--qt5_use_modules( UrlBuilder Core )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( UrlBuilder Qt5::Core )
-+endif()
- # JSONCreator library
- QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
- add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
--qt5_use_modules( JsonCreator Core Network )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
-+endif()
- 
- set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
- 
-@@ -25,7 +29,9 @@ macro(add_libmygpo_test _source)
-     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
-     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
-     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
--    qt5_use_modules(${_name} Network Test)
-+    if( NOT BUILD_WITH_QT4 )
-+        target_link_libraries(${_name} Qt5::Network Qt5::Test)
-+    endif()
- endmacro(add_libmygpo_test)
- 
- add_libmygpo_test( UrlBuilderTest.cpp )
diff --git a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
deleted file mode 100644
index aa9ed2c0f7..0000000000
--- a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 0d76d960727018bddf04c6cc89552af69aaa7e55 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:20:34 +0200
-Subject: [PATCH] Add missing Qt5Network, Qt5Test, make BUILD_WITH_QT4 more
- strict
-
----
- CMakeLists.txt | 22 +++++++++++-----------
- 1 file changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2a1f652..eb006d9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -5,25 +5,25 @@ project( libmygpo-qt )
- set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
- 
--option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4 no matter if Qt5 was found" OFF)
-+option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
- 
- if( NOT BUILD_WITH_QT4 )
--    find_package(Qt5Core QUIET)
--    if( Qt5Core_DIR )
--        set(MYGPO_QT_VERSION_SUFFIX 5)
--
--        macro(qt_wrap_cpp)
--            qt5_wrap_cpp(${ARGN})
--        endmacro()
-+    if( MYGPO_BUILD_TESTS )
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
-+    else()
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network CONFIG)
-     endif()
-+    set(MYGPO_QT_VERSION_SUFFIX 5)
-+
-+    macro(qt_wrap_cpp)
-+        qt5_wrap_cpp(${ARGN})
-+    endmacro()
- 
-     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
-     # Qt5
-     set(MYGPO_QT_MAJOR_VERSION "5")
-     set(MYGPO_QT4_QJSON_DEP "")
--endif()
--
--if( NOT Qt5Core_DIR )
-+else()
-     message(STATUS "Could not find Qt5, searching for Qt4 instead...")
-     message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
-     if( MYGPO_BUILD_TESTS )
diff --git a/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
new file mode 100644
index 0000000000..efdbe7623d
--- /dev/null
+++ b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
@@ -0,0 +1,153 @@
+From 42e19dcb6b7c07460f05aa1d4586d5c76236c6d0 Mon Sep 17 00:00:00 2001
+From: Tuomas Nurmi <tuomas@norsumanageri.org>
+Date: Mon, 8 Jul 2024 17:03:32 +0300
+Subject: [PATCH] Minimal changes to make Qt6 compilation possible
+
+Untested. Compiles, with a bunch of deprecation warnings.
+There's likely room for improvement all around.
+---
+ CMakeLists.txt       | 24 +++++++++---------------
+ libmygpo-qt.pc.in    |  1 -
+ src/CMakeLists.txt   |  4 ++--
+ src/DeviceList.cpp   |  2 +-
+ tests/CMakeLists.txt | 12 +++++++++---
+ 5 files changed, 21 insertions(+), 22 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8a79ddc..920e841 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,10 +5,10 @@ project( libmygpo-qt )
+ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
+ 
+-option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
++option(BUILD_WITH_QT6 "Build libmygpo-qt with Qt6" OFF)
+ option(MYGPO_BUILD_TESTS "Build all unit tests" ON)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     if( MYGPO_BUILD_TESTS )
+         find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
+     else()
+@@ -23,27 +23,21 @@ if( NOT BUILD_WITH_QT4 )
+     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
+     # Qt5
+     set(MYGPO_QT_MAJOR_VERSION "5")
+-    set(MYGPO_QT4_QJSON_DEP "")
+ else()
+-    message(STATUS "Could not find Qt5, searching for Qt4 instead...")
+-    message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
++    message(STATUS "Could not find Qt5, searching for Qt6 instead...")
+     if( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork QtTest REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network Test REQUIRED )
+     else( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network REQUIRED )
+     endif()
+-    set( QT_DONT_USE_QTGUI TRUE )
+-    include( ${QT_USE_FILE} )
++    set(MYGPO_QT_VERSION_SUFFIX 6)
+ 
+     macro(qt_wrap_cpp)
+-        qt4_wrap_cpp(${ARGN})
++        qt6_wrap_cpp(${ARGN})
+     endmacro()
+ 
+-    set(MYGPO_QT_MAJOR_VERSION "")
+-    set(MYGPO_QT4_QJSON_DEP "Requires.private: QJson")
++    set(MYGPO_QT_MAJOR_VERSION "6")
+ 
+-    # QJson is only required for Qt4
+-    find_package(QJSON REQUIRED)
+ endif()
+ 
+ # Don't use absolute path in Mygpo-qtTargets-$buildType.cmake
+@@ -51,7 +45,7 @@ endif()
+ # set(QT_USE_IMPORTED_TARGETS TRUE)
+ 
+ set( MYGPO_QT_VERSION_MAJOR "1" )
+-set( MYGPO_QT_VERSION_MINOR "1" )
++set( MYGPO_QT_VERSION_MINOR "2" )
+ set( MYGPO_QT_VERSION_PATCH "0" )
+ set( MYGPO_QT_VERSION "${MYGPO_QT_VERSION_MAJOR}.${MYGPO_QT_VERSION_MINOR}.${MYGPO_QT_VERSION_PATCH}" )
+ 
+diff --git a/libmygpo-qt.pc.in b/libmygpo-qt.pc.in
+index 8403e48..520bd52 100644
+--- a/libmygpo-qt.pc.in
++++ b/libmygpo-qt.pc.in
+@@ -8,6 +8,5 @@ Description: libmygpo-qt is a C++/Qt Library that wraps the gpodder.net WebAPI
+ URL: http://wiki.gpodder.org/wiki/Libmygpo-qt
+ Version: @MYGPO_QT_VERSION@
+ Requires: Qt@MYGPO_QT_MAJOR_VERSION@Core Qt@MYGPO_QT_MAJOR_VERSION@Network
+-@MYGPO_QT4_QJSON_DEP@
+ Libs: -L${libdir} -lmygpo-qt@MYGPO_QT_VERSION_SUFFIX@
+ Cflags: -I${includedir}
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 253e81e..9d1989c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -81,10 +81,10 @@ add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC
+ 
+ set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
+ else()
+-    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
++    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt6::Core Qt6::Network)
+ endif()
+ 
+ install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
+diff --git a/src/DeviceList.cpp b/src/DeviceList.cpp
+index e972318..92e29cc 100644
+--- a/src/DeviceList.cpp
++++ b/src/DeviceList.cpp
+@@ -64,7 +64,7 @@ bool DeviceListPrivate::parse( const QVariant& data )
+         DevicePtr ptr( new Device( var, this ) );
+         m_devicesList.append( ptr );
+         QVariant v;
+-        v.setValue<DevicePtr>( ptr );
++        v.setValue<DevicePtr>( QSharedPointer<mygpo::Device>(ptr) );
+         devList.append( v );
+     }
+     m_devices = devList;
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 4f77158..ce63689 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -11,14 +11,18 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
+ 
+ # UrlBuilder library
+ add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( UrlBuilder Qt5::Core )
++else()
++    target_link_libraries( UrlBuilder Qt6::Core )
+ endif()
+ # JSONCreator library
+ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
+ add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
++else()
++    target_link_libraries( JsonCreator Qt6::Core Qt6::Network )
+ endif()
+ 
+ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
+@@ -29,8 +33,10 @@ macro(add_libmygpo_test _source)
+     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
+     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
+     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
+-    if( NOT BUILD_WITH_QT4 )
++    if( NOT BUILD_WITH_QT6 )
+         target_link_libraries(${_name} Qt5::Network Qt5::Test)
++    else()
++        target_link_libraries(${_name} Qt6::Network Qt6::Test)
+     endif()
+ endmacro(add_libmygpo_test)
+ 
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH 2/4] gnu: Add libmygpo-qt6.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 1/4] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
@ 2025-01-21  2:30 ` Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 3/4] gnu: Add taglib-extras Sughosha via Guix-patches via
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-21  2:30 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt6): New variable.

Change-Id: Ie9c0257f570147293ec695df312982a98bc9d1a7
---
 gnu/packages/gpodder.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index 1baca35f06..a7fb845625 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -161,6 +161,17 @@ (define-public libmygpo-qt
 track podcasts.")
       (license license:lgpl2.1+))))
 
+(define-public libmygpo-qt6
+  (package/inherit libmygpo-qt
+    (name "libmygpo-qt6")
+    (arguments
+     (substitute-keyword-arguments (package-arguments libmygpo-qt)
+       ((#:configure-flags flags)
+        #~(append '("-DBUILD_WITH_QT6=ON") #$flags))))
+    (inputs
+     (modify-inputs (package-inputs libmygpo-qt)
+       (replace "qtbase" qtbase)))))
+
 (define-public python-mygpoclient
   (package
     (name "python-mygpoclient")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH 3/4] gnu: Add taglib-extras.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 1/4] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 2/4] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
@ 2025-01-21  2:30 ` Sughosha via Guix-patches via
  2025-01-21  2:30 ` [bug#75720] [PATCH 4/4] gnu: Add amarok Sughosha via Guix-patches via
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-21  2:30 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/mp3.scm (taglib-extras): New variable.

Change-Id: I6b4ad693001c89e576fadbb02d981d43f7d568ab
---
 gnu/packages/mp3.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 32a1ddea27..25682c5a6e 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -60,6 +60,7 @@ (define-module (gnu packages mp3)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
@@ -274,6 +275,34 @@ (define-public taglib
     ;; Dual-licensed: user may choose between LGPLv2.1 or MPLv1.1.
     (license (list license:lgpl2.1 license:mpl1.1))))
 
+(define-public taglib-extras
+  (package
+    (name "taglib-extras")
+    ;; 2 changes after mentioning version 1.0.2 in ChangeLog, which fixes
+    ;; finding taglib.
+    (version "1.0.2-2")
+    (source
+     (origin
+       (method svn-fetch)
+       (uri
+        (svn-reference
+          (url "svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib-extras")
+          (revision 1444333)))
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32
+         "1qsima3ln6j63mzdp5y1yjaijxvk3wnriwld5ijdp1xv1dx4hqjc"))))
+    (build-system cmake-build-system)
+    (inputs
+     (list taglib))
+    (arguments
+     (list #:tests? #f)) ;no test suite
+    (home-page "https://websvn.kde.org/trunk/kdesupport/taglib-extras")
+    (synopsis "Additional TagLib plugins")
+    (description
+     "This package provides TagLib plugins for Audible and RealMedia tags.")
+    (license (list license:lgpl2.1+ license:gpl2+))))
+
 (define-public minimp3
   ;; The latest commit is used as there is no release.
   (let ((commit   "afb604c06bc8beb145fecd42c0ceb5bda8795144")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH 4/4] gnu: Add amarok.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
                   ` (2 preceding siblings ...)
  2025-01-21  2:30 ` [bug#75720] [PATCH 3/4] gnu: Add taglib-extras Sughosha via Guix-patches via
@ 2025-01-21  2:30 ` Sughosha via Guix-patches via
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-21  2:30 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/kde-multimedia.scm (amarok): New variable.
* gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch: New file
* gnu/local.mk: Register the new file.

Change-Id: I6d1329fc6c2f6deb795ebd566438d1818bc19db1
---
 gnu/local.mk                                  |   1 +
 gnu/packages/kde-multimedia.scm               |  97 ++++++++++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 ++++++++++++++++++
 3 files changed, 246 insertions(+)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index ccfd860b17..faa0e29b16 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -980,6 +980,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ibus-anthy-fix-tests.patch		\
   %D%/packages/patches/ibus-table-paths.patch			\
   %D%/packages/patches/anki-mpv-args.patch			\
+  %D%/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch	\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index 4b0e170b79..873b207b2a 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -31,14 +31,19 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (gnu packages)
+  #:use-module (gnu packages algebra)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cdrom)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages crypto)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gpodder)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gstreamer)
@@ -46,6 +51,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages kde-plasma)
   #:use-module (gnu packages libcanberra)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages music)
@@ -54,6 +60,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
@@ -98,6 +105,96 @@ (define-public audiocd-kio
     (license ;; GPL for programs, FDL for documentation
      (list license:gpl2+ license:fdl1.2+))))
 
+(define-public amarok
+  (package
+    (name "amarok")
+    (version "3.2.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://kde/stable/amarok-" version
+                                  "/amarok-" version ".tar.xz"))
+              (sha256
+               (base32
+                "14r7iismx28nnh3jhkhczhrsmsap9by8p3kfhkp7d5678c7l62g4"))
+              (patches
+               (search-patches "amarok-3.2.1-fix-including-mygpo-qt6.patch"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:configure-flags
+           #~(list "-DBUILD_WITH_QT6=ON")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'check 'check-setup
+                 (lambda _
+                   ;; Set home directory.
+                   (setenv "HOME" "/tmp")))
+               (replace 'check
+                 (lambda* (#:key tests? #:allow-other-keys)
+                   (when tests?
+                     ;; Test excluding testplaylistlayout which fails.
+                     (invoke "ctest" "-E" "testplaylistlayout")))))))
+    (native-inputs
+       (list extra-cmake-modules googletest kdoctools pkg-config qttools))
+    (inputs
+     (list ffmpeg
+           fftw
+           glib
+           karchive
+           kcodecs
+           kcolorscheme
+           kconfig
+           kconfigwidgets
+           kcoreaddons
+           kcmutils
+           kcrash
+           kdbusaddons
+           kdnssd
+           kglobalaccel
+           kguiaddons
+           ki18n
+           kiconthemes
+           kio
+           kirigami
+           knotifications
+           kpackage
+           kstatusnotifieritem
+           ktexteditor
+           ktextwidgets
+           kwallet
+           kwidgetsaddons
+           kwindowsystem
+           libofa
+           libmtp
+           libmygpo-qt6
+           libxcrypt
+           `(,mariadb "dev")
+           openssl
+           phonon
+           phonon-backend-vlc
+           python
+           qt5compat
+           qtsvg
+           qtwebengine
+           solid
+           taglib
+           taglib-extras
+           threadweaver))
+    (home-page "https://amarok.kde.org/")
+    (synopsis "Audio player for KDE")
+    (description
+     "Amarok is a music player and collection manager.  It features:
+@itemize
+@item dynamic playlists matching different criteria,
+@item collection managing with rating support,
+@item support for basic MTP and UMS music player devices,
+@item integrated internet services such as Magnatune, Ampache and more,
+@item scripting support,
+@item cover manager and
+@item replay gain support
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public dragon
   (package
     (name "dragon")
diff --git a/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
new file mode 100644
index 0000000000..d23954cf80
--- /dev/null
+++ b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
@@ -0,0 +1,148 @@
+This patch fixes including headers of libmygpo-qt6 when built with qt6.
+
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h	2025-01-21 06:40:56.069282183 +0530
+@@ -22,7 +22,14 @@
+ 
+ #include "core/playlists/PlaylistProvider.h"
+ #include "core/podcasts/PodcastMeta.h"
++
++#include <QtVersionChecks>
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#endif
+ 
+ namespace Podcasts {
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-21 05:22:06.974221089 +0530
+@@ -20,7 +20,12 @@
+ #define GPODDERPODCASTREQUESTHANDLER_H_
+ 
+ #include "GpodderServiceModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/PodcastList.h>
++#else
++#include <mygpo-qt6/PodcastList.h>
++#endif
+ 
+ #include <QModelIndex>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-21 05:16:21.674470671 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERPODCASTTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/Podcast.h>
++#endif
+ 
+ class GpodderPodcastTreeItem: public GpodderTreeItem
+ {
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h	2025-01-21 05:21:29.153812018 +0530
+@@ -23,8 +23,15 @@
+ #include "core/podcasts/PodcastProvider.h"
+ #include "core/podcasts/PodcastReader.h"
+ #include "GpodderPodcastMeta.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/EpisodeActionList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/EpisodeActionList.h>
++#endif
++
+ #include "playlistmanager/file/KConfigSyncRelStore.h"
+ #include "playlistmanager/PlaylistManager.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp
+--- amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp	2025-01-21 05:17:27.675190295 +0530
+@@ -27,8 +27,15 @@
+ #include "GpodderServiceModel.h"
+ #include "GpodderServiceView.h"
+ #include "GpodderSortFilterProxyModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/Podcast.h>
++#endif
++
+ #include "playlistmanager/PlaylistManager.h"
+ #include "widgets/SearchWidget.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h	2025-01-21 05:20:32.517198664 +0530
+@@ -20,8 +20,15 @@
+ #define GPODDERSERVICEMODEL_H_
+ 
+ #include "GpodderTreeItem.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ #include "NetworkAccessManagerProxy.h"
+ 
+ #include <QAbstractItemModel>
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h	2025-01-21 05:18:10.983661774 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERTAGTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Tag.h>
++#else
++#include <mygpo-qt6/Tag.h>
++#endif
+ 
+ #include <QObject>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h	2025-01-21 06:33:35.948536483 +0530
+@@ -19,13 +19,18 @@
+ #ifndef GPODDERTREEITEM_H_
+ #define GPODDERTREEITEM_H_
+ 
+-#include <mygpo-qt5/ApiRequest.h>
+-#include <mygpo-qt5/TagList.h>
+-
+ #include <QList>
+ #include <QModelIndex>
+ #include <QVariant>
+ 
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
++#include <mygpo-qt5/ApiRequest.h>
++#include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ 
+ class GpodderTreeItem : public QObject
+ {
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 0/5] gnu: Add amarok.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
                   ` (3 preceding siblings ...)
  2025-01-21  2:30 ` [bug#75720] [PATCH 4/4] gnu: Add amarok Sughosha via Guix-patches via
@ 2025-01-22  3:46 ` Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
                     ` (4 more replies)
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  6 siblings, 5 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:46 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

This patch series adds amarok.

In this v2 series, these changes are made:
* Embedded server (libmysqld) in mariadb is enabled.
* testplaylistlayout test in amarok is passed.

Sughosha (5):
  gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  gnu: Add libmygpo-qt6.
  gnu: Add taglib-extras.
  gnu: mariadb: Enable embedded server.
  gnu: Add amarok.

 gnu/local.mk                                  |   4 +-
 gnu/packages/databases.scm                    |   3 +
 gnu/packages/gpodder.scm                      |  70 ++++----
 gnu/packages/kde-multimedia.scm               | 109 +++++++++++++
 gnu/packages/mp3.scm                          |  29 ++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 +++++++++++++++++
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 9 files changed, 487 insertions(+), 158 deletions(-)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch


base-commit: 7aae0e2c159b1612b405a372b18f25fbb58f9d82
-- 
2.47.1





^ permalink raw reply	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
@ 2025-01-22  3:48   ` Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:48 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt): Update to 1.1.0-0.4d1f482.
[source]: Switch to git-fetch; update patches.
[home-page]: Update URL.
* gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch: New file.
* gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch: Delete file.
* gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch: Delete file.
* gnu/local.mk: Deregister the deleted files and register the new file.

Change-Id: I5cc3fbc8bfbfa7d88843448a2b5b8ef0fa5df60a
---
 gnu/local.mk                                  |   3 +-
 gnu/packages/gpodder.scm                      |  61 +++----
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 5 files changed, 187 insertions(+), 159 deletions(-)
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5fb354caae..ccfd860b17 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1738,8 +1738,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmp4v2-c++11.patch			\
   %D%/packages/patches/libmpeg2-arm-private-symbols.patch	\
   %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
-  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
-  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
+  %D%/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch	\
   %D%/packages/patches/libpciaccess-hurd64.patch		\
   %D%/packages/patches/libphonenumber-reproducible-build.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index c3e1c9b496..1baca35f06 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -127,34 +127,39 @@ (define-public gpodder
     (license license:gpl3+)))
 
 (define-public libmygpo-qt
-  (package
-    (name "libmygpo-qt")
-    (version "1.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://stefan.derkits.at/files/"
-                                  "libmygpo-qt/libmygpo-qt." version ".tar.gz"))
-              (sha256
-               (base32
-                "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2"))
-              (patches (search-patches "libmygpo-qt-fix-qt-5.11.patch"
-                                       "libmygpo-qt-missing-qt5-modules.patch"))))
-    (build-system cmake-build-system)
-    (native-inputs
-     (list pkg-config))
-    (inputs
-     (list qtbase-5))
-    (arguments
-     '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
-       ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
-       ;; is fixed.
-       #:tests? #f))
-    (home-page "https://gpodder.github.io")
-    (synopsis "Qt/C++ library wrapping the gpodder web service")
-    (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
-@url{https://gpodder.net} APIs.  It allows applications to discover, manage
-and track podcasts.")
-    (license license:lgpl2.1+)))
+  (let ((commit "4d1f48291791c64f029e69138e3bc7fb6a851610")
+        (revision "0"))
+    (package
+      (name "libmygpo-qt")
+      (version (git-version "1.1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+            (url "https://github.com/gpodder/libmygpo-qt")
+            (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1bxv8blyq66600i8skxmccb1lnmliz90378kck4f6j2ynry2114b"))
+         (patches
+          (search-patches "libmygpo-qt-suppot-building-with-qt6.patch"))))
+      (build-system cmake-build-system)
+      (native-inputs
+       (list pkg-config))
+      (inputs
+       (list qtbase-5))
+      (arguments
+       '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
+         ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
+         ;; is fixed.
+         #:tests? #f))
+      (home-page "https://wiki.gpodder.org/wiki/Libmygpo-qt")
+      (synopsis "Qt/C++ library wrapping the gpodder web service")
+      (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
+@url{https://gpodder.net} APIs.  It allows applications to discover, manage and
+track podcasts.")
+      (license license:lgpl2.1+))))
 
 (define-public python-mygpoclient
   (package
diff --git a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
deleted file mode 100644
index 69673c90ee..0000000000
--- a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 1b53767b988b339aac8b353327a1542b2a0c0610 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:29:33 +0200
-Subject: [PATCH] Fix build with Qt 5.11_beta3 (dropping qt5_use_modules)
-
----
- CMakeLists.txt       |  3 ---
- src/CMakeLists.txt   |  8 ++++++--
- tests/CMakeLists.txt | 12 +++++++++---
- 3 files changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index eb006d9..fa4b0cb 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,9 +34,6 @@ else()
-     set( QT_DONT_USE_QTGUI TRUE )
-     include( ${QT_USE_FILE} )
- 
--    macro(qt5_use_modules)
--    endmacro()
--
-     macro(qt_wrap_cpp)
-         qt4_wrap_cpp(${ARGN})
-     endmacro()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 802125b..253e81e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -79,9 +79,13 @@ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} )
- 
- add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} )
- 
--target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}  )
- set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
--qt5_use_modules( ${MYGPO_QT_TARGET_NAME} Core Network )
-+
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
-+else()
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
-+endif()
- 
- install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
- 
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index a3e3223..4f77158 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -11,11 +11,15 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
- 
- # UrlBuilder library
- add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
--qt5_use_modules( UrlBuilder Core )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( UrlBuilder Qt5::Core )
-+endif()
- # JSONCreator library
- QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
- add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
--qt5_use_modules( JsonCreator Core Network )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
-+endif()
- 
- set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
- 
-@@ -25,7 +29,9 @@ macro(add_libmygpo_test _source)
-     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
-     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
-     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
--    qt5_use_modules(${_name} Network Test)
-+    if( NOT BUILD_WITH_QT4 )
-+        target_link_libraries(${_name} Qt5::Network Qt5::Test)
-+    endif()
- endmacro(add_libmygpo_test)
- 
- add_libmygpo_test( UrlBuilderTest.cpp )
diff --git a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
deleted file mode 100644
index aa9ed2c0f7..0000000000
--- a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 0d76d960727018bddf04c6cc89552af69aaa7e55 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:20:34 +0200
-Subject: [PATCH] Add missing Qt5Network, Qt5Test, make BUILD_WITH_QT4 more
- strict
-
----
- CMakeLists.txt | 22 +++++++++++-----------
- 1 file changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2a1f652..eb006d9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -5,25 +5,25 @@ project( libmygpo-qt )
- set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
- 
--option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4 no matter if Qt5 was found" OFF)
-+option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
- 
- if( NOT BUILD_WITH_QT4 )
--    find_package(Qt5Core QUIET)
--    if( Qt5Core_DIR )
--        set(MYGPO_QT_VERSION_SUFFIX 5)
--
--        macro(qt_wrap_cpp)
--            qt5_wrap_cpp(${ARGN})
--        endmacro()
-+    if( MYGPO_BUILD_TESTS )
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
-+    else()
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network CONFIG)
-     endif()
-+    set(MYGPO_QT_VERSION_SUFFIX 5)
-+
-+    macro(qt_wrap_cpp)
-+        qt5_wrap_cpp(${ARGN})
-+    endmacro()
- 
-     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
-     # Qt5
-     set(MYGPO_QT_MAJOR_VERSION "5")
-     set(MYGPO_QT4_QJSON_DEP "")
--endif()
--
--if( NOT Qt5Core_DIR )
-+else()
-     message(STATUS "Could not find Qt5, searching for Qt4 instead...")
-     message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
-     if( MYGPO_BUILD_TESTS )
diff --git a/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
new file mode 100644
index 0000000000..efdbe7623d
--- /dev/null
+++ b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
@@ -0,0 +1,153 @@
+From 42e19dcb6b7c07460f05aa1d4586d5c76236c6d0 Mon Sep 17 00:00:00 2001
+From: Tuomas Nurmi <tuomas@norsumanageri.org>
+Date: Mon, 8 Jul 2024 17:03:32 +0300
+Subject: [PATCH] Minimal changes to make Qt6 compilation possible
+
+Untested. Compiles, with a bunch of deprecation warnings.
+There's likely room for improvement all around.
+---
+ CMakeLists.txt       | 24 +++++++++---------------
+ libmygpo-qt.pc.in    |  1 -
+ src/CMakeLists.txt   |  4 ++--
+ src/DeviceList.cpp   |  2 +-
+ tests/CMakeLists.txt | 12 +++++++++---
+ 5 files changed, 21 insertions(+), 22 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8a79ddc..920e841 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,10 +5,10 @@ project( libmygpo-qt )
+ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
+ 
+-option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
++option(BUILD_WITH_QT6 "Build libmygpo-qt with Qt6" OFF)
+ option(MYGPO_BUILD_TESTS "Build all unit tests" ON)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     if( MYGPO_BUILD_TESTS )
+         find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
+     else()
+@@ -23,27 +23,21 @@ if( NOT BUILD_WITH_QT4 )
+     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
+     # Qt5
+     set(MYGPO_QT_MAJOR_VERSION "5")
+-    set(MYGPO_QT4_QJSON_DEP "")
+ else()
+-    message(STATUS "Could not find Qt5, searching for Qt4 instead...")
+-    message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
++    message(STATUS "Could not find Qt5, searching for Qt6 instead...")
+     if( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork QtTest REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network Test REQUIRED )
+     else( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network REQUIRED )
+     endif()
+-    set( QT_DONT_USE_QTGUI TRUE )
+-    include( ${QT_USE_FILE} )
++    set(MYGPO_QT_VERSION_SUFFIX 6)
+ 
+     macro(qt_wrap_cpp)
+-        qt4_wrap_cpp(${ARGN})
++        qt6_wrap_cpp(${ARGN})
+     endmacro()
+ 
+-    set(MYGPO_QT_MAJOR_VERSION "")
+-    set(MYGPO_QT4_QJSON_DEP "Requires.private: QJson")
++    set(MYGPO_QT_MAJOR_VERSION "6")
+ 
+-    # QJson is only required for Qt4
+-    find_package(QJSON REQUIRED)
+ endif()
+ 
+ # Don't use absolute path in Mygpo-qtTargets-$buildType.cmake
+@@ -51,7 +45,7 @@ endif()
+ # set(QT_USE_IMPORTED_TARGETS TRUE)
+ 
+ set( MYGPO_QT_VERSION_MAJOR "1" )
+-set( MYGPO_QT_VERSION_MINOR "1" )
++set( MYGPO_QT_VERSION_MINOR "2" )
+ set( MYGPO_QT_VERSION_PATCH "0" )
+ set( MYGPO_QT_VERSION "${MYGPO_QT_VERSION_MAJOR}.${MYGPO_QT_VERSION_MINOR}.${MYGPO_QT_VERSION_PATCH}" )
+ 
+diff --git a/libmygpo-qt.pc.in b/libmygpo-qt.pc.in
+index 8403e48..520bd52 100644
+--- a/libmygpo-qt.pc.in
++++ b/libmygpo-qt.pc.in
+@@ -8,6 +8,5 @@ Description: libmygpo-qt is a C++/Qt Library that wraps the gpodder.net WebAPI
+ URL: http://wiki.gpodder.org/wiki/Libmygpo-qt
+ Version: @MYGPO_QT_VERSION@
+ Requires: Qt@MYGPO_QT_MAJOR_VERSION@Core Qt@MYGPO_QT_MAJOR_VERSION@Network
+-@MYGPO_QT4_QJSON_DEP@
+ Libs: -L${libdir} -lmygpo-qt@MYGPO_QT_VERSION_SUFFIX@
+ Cflags: -I${includedir}
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 253e81e..9d1989c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -81,10 +81,10 @@ add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC
+ 
+ set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
+ else()
+-    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
++    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt6::Core Qt6::Network)
+ endif()
+ 
+ install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
+diff --git a/src/DeviceList.cpp b/src/DeviceList.cpp
+index e972318..92e29cc 100644
+--- a/src/DeviceList.cpp
++++ b/src/DeviceList.cpp
+@@ -64,7 +64,7 @@ bool DeviceListPrivate::parse( const QVariant& data )
+         DevicePtr ptr( new Device( var, this ) );
+         m_devicesList.append( ptr );
+         QVariant v;
+-        v.setValue<DevicePtr>( ptr );
++        v.setValue<DevicePtr>( QSharedPointer<mygpo::Device>(ptr) );
+         devList.append( v );
+     }
+     m_devices = devList;
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 4f77158..ce63689 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -11,14 +11,18 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
+ 
+ # UrlBuilder library
+ add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( UrlBuilder Qt5::Core )
++else()
++    target_link_libraries( UrlBuilder Qt6::Core )
+ endif()
+ # JSONCreator library
+ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
+ add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
++else()
++    target_link_libraries( JsonCreator Qt6::Core Qt6::Network )
+ endif()
+ 
+ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
+@@ -29,8 +33,10 @@ macro(add_libmygpo_test _source)
+     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
+     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
+     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
+-    if( NOT BUILD_WITH_QT4 )
++    if( NOT BUILD_WITH_QT6 )
+         target_link_libraries(${_name} Qt5::Network Qt5::Test)
++    else()
++        target_link_libraries(${_name} Qt6::Network Qt6::Test)
+     endif()
+ endmacro(add_libmygpo_test)
+ 
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 2/5] gnu: Add libmygpo-qt6.
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
@ 2025-01-22  3:48   ` Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:48 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt6): New variable.

Change-Id: Ie9c0257f570147293ec695df312982a98bc9d1a7
---
 gnu/packages/gpodder.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index 1baca35f06..a7fb845625 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -161,6 +161,17 @@ (define-public libmygpo-qt
 track podcasts.")
       (license license:lgpl2.1+))))
 
+(define-public libmygpo-qt6
+  (package/inherit libmygpo-qt
+    (name "libmygpo-qt6")
+    (arguments
+     (substitute-keyword-arguments (package-arguments libmygpo-qt)
+       ((#:configure-flags flags)
+        #~(append '("-DBUILD_WITH_QT6=ON") #$flags))))
+    (inputs
+     (modify-inputs (package-inputs libmygpo-qt)
+       (replace "qtbase" qtbase)))))
+
 (define-public python-mygpoclient
   (package
     (name "python-mygpoclient")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 3/5] gnu: Add taglib-extras.
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
@ 2025-01-22  3:48   ` Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 5/5] gnu: Add amarok Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:48 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/mp3.scm (taglib-extras): New variable.

Change-Id: I6b4ad693001c89e576fadbb02d981d43f7d568ab
---
 gnu/packages/mp3.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 32a1ddea27..25682c5a6e 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -60,6 +60,7 @@ (define-module (gnu packages mp3)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
@@ -274,6 +275,34 @@ (define-public taglib
     ;; Dual-licensed: user may choose between LGPLv2.1 or MPLv1.1.
     (license (list license:lgpl2.1 license:mpl1.1))))
 
+(define-public taglib-extras
+  (package
+    (name "taglib-extras")
+    ;; 2 changes after mentioning version 1.0.2 in ChangeLog, which fixes
+    ;; finding taglib.
+    (version "1.0.2-2")
+    (source
+     (origin
+       (method svn-fetch)
+       (uri
+        (svn-reference
+          (url "svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib-extras")
+          (revision 1444333)))
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32
+         "1qsima3ln6j63mzdp5y1yjaijxvk3wnriwld5ijdp1xv1dx4hqjc"))))
+    (build-system cmake-build-system)
+    (inputs
+     (list taglib))
+    (arguments
+     (list #:tests? #f)) ;no test suite
+    (home-page "https://websvn.kde.org/trunk/kdesupport/taglib-extras")
+    (synopsis "Additional TagLib plugins")
+    (description
+     "This package provides TagLib plugins for Audible and RealMedia tags.")
+    (license (list license:lgpl2.1+ license:gpl2+))))
+
 (define-public minimp3
   ;; The latest commit is used as there is no release.
   (let ((commit   "afb604c06bc8beb145fecd42c0ceb5bda8795144")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 4/5] gnu: mariadb: Enable embedded server.
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
                     ` (2 preceding siblings ...)
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
@ 2025-01-22  3:48   ` Sughosha via Guix-patches via
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 5/5] gnu: Add amarok Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:48 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha, Sharlatan Hellseher

* gnu/packages/databases.scm (mariadb)[arguments]<#:configure-flags>: Add
"-DWITH_EMBEDDED_SERVER=ON".

Change-Id: Iac091d06407b3a86b19e7241c93f9c38e451188d
---
 gnu/packages/databases.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index c0749d5b64..ec85b9eaa1 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -1040,6 +1040,9 @@ (define-public mariadb
          "-DWITH_SSL=system"
          "-DWITH_ZLIB=system"
 
+         ;; Enable embedded server.
+         "-DWITH_EMBEDDED_SERVER=ON"
+
          "-DDEFAULT_CHARSET=utf8"
          "-DDEFAULT_COLLATION=utf8_general_ci"
          "-DMYSQL_DATADIR=/var/lib/mysql"
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v2 5/5] gnu: Add amarok.
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
                     ` (3 preceding siblings ...)
  2025-01-22  3:48   ` [bug#75720] [PATCH v2 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
@ 2025-01-22  3:48   ` Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-01-22  3:48 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/kde-multimedia.scm (amarok): New variable.
* gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch: New file
* gnu/local.mk: Register the new file.

Change-Id: I2d89102a7bb8448464e6def9f052a70b45ac1624
---
 gnu/local.mk                                  |   1 +
 gnu/packages/kde-multimedia.scm               | 109 +++++++++++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 ++++++++++++++++++
 3 files changed, 258 insertions(+)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index ccfd860b17..faa0e29b16 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -980,6 +980,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ibus-anthy-fix-tests.patch		\
   %D%/packages/patches/ibus-table-paths.patch			\
   %D%/packages/patches/anki-mpv-args.patch			\
+  %D%/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch	\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index 4b0e170b79..2e93e3483f 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -31,14 +31,19 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (gnu packages)
+  #:use-module (gnu packages algebra)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cdrom)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages crypto)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gpodder)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gstreamer)
@@ -46,6 +51,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages kde-plasma)
   #:use-module (gnu packages libcanberra)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages music)
@@ -54,6 +60,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
@@ -98,6 +105,108 @@ (define-public audiocd-kio
     (license ;; GPL for programs, FDL for documentation
      (list license:gpl2+ license:fdl1.2+))))
 
+(define-public amarok
+  (package
+    (name "amarok")
+    (version "3.2.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://kde/stable/amarok-" version
+                                  "/amarok-" version ".tar.xz"))
+              (sha256
+               (base32
+                "14r7iismx28nnh3jhkhczhrsmsap9by8p3kfhkp7d5678c7l62g4"))
+              (patches
+               (search-patches "amarok-3.2.1-fix-including-mygpo-qt6.patch"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:configure-flags
+           #~(list "-DBUILD_WITH_QT6=ON")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'configure 'check-setup
+                 (lambda _
+                   ;; Set home directory.
+                   (setenv "HOME" "/tmp")
+                   ;; testplaylistlayout looks for "amarok/data" directory in
+                   ;; $XDG_DATA_DIRS. Maybe it is for testing after installing.
+                   ;; As a workaround, set XDG_DATA_DIRS pointing to $TMPDIR
+                   ;; which contains "amarok/data" directory.
+                   (let ((linktarget (string-append (dirname (getcwd))
+                                                    "/amarok")))
+                     (if (not (equal? (basename (getcwd)) "amarok"))
+                       (symlink (getcwd) linktarget))
+                     (setenv "XDG_DATA_DIRS"
+                             (string-append (getenv "XDG_DATA_DIRS") ":"
+                                            (dirname linktarget))))))
+               (replace 'check
+                 (lambda* (#:key tests? #:allow-other-keys)
+                   (when tests?
+                     ;; testsqlscanmanager fails, even when run manually.
+                     (invoke "ctest" "-E" "testsqlscanmanager")))))))
+    (native-inputs
+       (list extra-cmake-modules googletest kdoctools pkg-config qttools))
+    (inputs
+     (list ffmpeg
+           fftw
+           glib
+           karchive
+           kcodecs
+           kcolorscheme
+           kconfig
+           kconfigwidgets
+           kcoreaddons
+           kcmutils
+           kcrash
+           kdbusaddons
+           kdnssd
+           kglobalaccel
+           kguiaddons
+           ki18n
+           kiconthemes
+           kio
+           kirigami
+           knotifications
+           kpackage
+           kstatusnotifieritem
+           ktexteditor
+           ktextwidgets
+           kwallet
+           kwidgetsaddons
+           kwindowsystem
+           libofa
+           libmtp
+           libmygpo-qt6
+           libxcrypt
+           `(,mariadb "dev")
+           `(,mariadb "lib")
+           openssl
+           phonon
+           phonon-backend-vlc
+           python
+           qt5compat
+           qtsvg
+           qtwebengine
+           solid
+           taglib
+           taglib-extras
+           threadweaver))
+    (home-page "https://amarok.kde.org/")
+    (synopsis "Audio player for KDE")
+    (description
+     "Amarok is a music player and collection manager.  It features:
+@itemize
+@item dynamic playlists matching different criteria,
+@item collection managing with rating support,
+@item support for basic MTP and UMS music player devices,
+@item integrated internet services such as Magnatune, Ampache and more,
+@item scripting support,
+@item cover manager and
+@item replay gain support
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public dragon
   (package
     (name "dragon")
diff --git a/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
new file mode 100644
index 0000000000..d23954cf80
--- /dev/null
+++ b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
@@ -0,0 +1,148 @@
+This patch fixes including headers of libmygpo-qt6 when built with qt6.
+
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h	2025-01-21 06:40:56.069282183 +0530
+@@ -22,7 +22,14 @@
+ 
+ #include "core/playlists/PlaylistProvider.h"
+ #include "core/podcasts/PodcastMeta.h"
++
++#include <QtVersionChecks>
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#endif
+ 
+ namespace Podcasts {
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-21 05:22:06.974221089 +0530
+@@ -20,7 +20,12 @@
+ #define GPODDERPODCASTREQUESTHANDLER_H_
+ 
+ #include "GpodderServiceModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/PodcastList.h>
++#else
++#include <mygpo-qt6/PodcastList.h>
++#endif
+ 
+ #include <QModelIndex>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-21 05:16:21.674470671 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERPODCASTTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/Podcast.h>
++#endif
+ 
+ class GpodderPodcastTreeItem: public GpodderTreeItem
+ {
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h	2025-01-21 05:21:29.153812018 +0530
+@@ -23,8 +23,15 @@
+ #include "core/podcasts/PodcastProvider.h"
+ #include "core/podcasts/PodcastReader.h"
+ #include "GpodderPodcastMeta.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/EpisodeActionList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/EpisodeActionList.h>
++#endif
++
+ #include "playlistmanager/file/KConfigSyncRelStore.h"
+ #include "playlistmanager/PlaylistManager.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp
+--- amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp	2025-01-21 05:17:27.675190295 +0530
+@@ -27,8 +27,15 @@
+ #include "GpodderServiceModel.h"
+ #include "GpodderServiceView.h"
+ #include "GpodderSortFilterProxyModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/Podcast.h>
++#endif
++
+ #include "playlistmanager/PlaylistManager.h"
+ #include "widgets/SearchWidget.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h	2025-01-21 05:20:32.517198664 +0530
+@@ -20,8 +20,15 @@
+ #define GPODDERSERVICEMODEL_H_
+ 
+ #include "GpodderTreeItem.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ #include "NetworkAccessManagerProxy.h"
+ 
+ #include <QAbstractItemModel>
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h	2025-01-21 05:18:10.983661774 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERTAGTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Tag.h>
++#else
++#include <mygpo-qt6/Tag.h>
++#endif
+ 
+ #include <QObject>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h	2025-01-21 06:33:35.948536483 +0530
+@@ -19,13 +19,18 @@
+ #ifndef GPODDERTREEITEM_H_
+ #define GPODDERTREEITEM_H_
+ 
+-#include <mygpo-qt5/ApiRequest.h>
+-#include <mygpo-qt5/TagList.h>
+-
+ #include <QList>
+ #include <QModelIndex>
+ #include <QVariant>
+ 
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
++#include <mygpo-qt5/ApiRequest.h>
++#include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ 
+ class GpodderTreeItem : public QObject
+ {
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 0/5] gnu: Add amarok.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
                   ` (4 preceding siblings ...)
  2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
@ 2025-02-01 16:04 ` Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
                     ` (4 more replies)
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  6 siblings, 5 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

In this version the URL of the source is fixed.

Sughosha (5):
  gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  gnu: Add libmygpo-qt6.
  gnu: Add taglib-extras.
  gnu: mariadb: Enable embedded server.
  gnu: Add amarok.

 gnu/local.mk                                  |   4 +-
 gnu/packages/databases.scm                    |   3 +
 gnu/packages/gpodder.scm                      |  70 ++++----
 gnu/packages/kde-multimedia.scm               | 109 +++++++++++++
 gnu/packages/mp3.scm                          |  29 ++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 +++++++++++++++++
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 9 files changed, 487 insertions(+), 158 deletions(-)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch


base-commit: 5a6c66f7919fbe79251cd425ae6952e67acbe94c
-- 
2.47.1





^ permalink raw reply	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
@ 2025-02-01 16:04   ` Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
                     ` (3 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt): Update to 1.1.0-0.4d1f482.
[source]: Switch to git-fetch; update patches.
[home-page]: Update URL.
* gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch: New file.
* gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch: Delete file.
* gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch: Delete file.
* gnu/local.mk: Deregister the deleted files and register the new file.

Change-Id: I5cc3fbc8bfbfa7d88843448a2b5b8ef0fa5df60a
---
 gnu/local.mk                                  |   3 +-
 gnu/packages/gpodder.scm                      |  61 +++----
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 5 files changed, 187 insertions(+), 159 deletions(-)
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index e8c807cf63..a725e4eef2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1743,8 +1743,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmp4v2-c++11.patch			\
   %D%/packages/patches/libmpeg2-arm-private-symbols.patch	\
   %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
-  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
-  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
+  %D%/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch	\
   %D%/packages/patches/libpciaccess-hurd64.patch		\
   %D%/packages/patches/libphonenumber-reproducible-build.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index c3e1c9b496..1baca35f06 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -127,34 +127,39 @@ (define-public gpodder
     (license license:gpl3+)))
 
 (define-public libmygpo-qt
-  (package
-    (name "libmygpo-qt")
-    (version "1.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://stefan.derkits.at/files/"
-                                  "libmygpo-qt/libmygpo-qt." version ".tar.gz"))
-              (sha256
-               (base32
-                "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2"))
-              (patches (search-patches "libmygpo-qt-fix-qt-5.11.patch"
-                                       "libmygpo-qt-missing-qt5-modules.patch"))))
-    (build-system cmake-build-system)
-    (native-inputs
-     (list pkg-config))
-    (inputs
-     (list qtbase-5))
-    (arguments
-     '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
-       ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
-       ;; is fixed.
-       #:tests? #f))
-    (home-page "https://gpodder.github.io")
-    (synopsis "Qt/C++ library wrapping the gpodder web service")
-    (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
-@url{https://gpodder.net} APIs.  It allows applications to discover, manage
-and track podcasts.")
-    (license license:lgpl2.1+)))
+  (let ((commit "4d1f48291791c64f029e69138e3bc7fb6a851610")
+        (revision "0"))
+    (package
+      (name "libmygpo-qt")
+      (version (git-version "1.1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+            (url "https://github.com/gpodder/libmygpo-qt")
+            (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1bxv8blyq66600i8skxmccb1lnmliz90378kck4f6j2ynry2114b"))
+         (patches
+          (search-patches "libmygpo-qt-suppot-building-with-qt6.patch"))))
+      (build-system cmake-build-system)
+      (native-inputs
+       (list pkg-config))
+      (inputs
+       (list qtbase-5))
+      (arguments
+       '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
+         ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
+         ;; is fixed.
+         #:tests? #f))
+      (home-page "https://wiki.gpodder.org/wiki/Libmygpo-qt")
+      (synopsis "Qt/C++ library wrapping the gpodder web service")
+      (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
+@url{https://gpodder.net} APIs.  It allows applications to discover, manage and
+track podcasts.")
+      (license license:lgpl2.1+))))
 
 (define-public python-mygpoclient
   (package
diff --git a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
deleted file mode 100644
index 69673c90ee..0000000000
--- a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 1b53767b988b339aac8b353327a1542b2a0c0610 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:29:33 +0200
-Subject: [PATCH] Fix build with Qt 5.11_beta3 (dropping qt5_use_modules)
-
----
- CMakeLists.txt       |  3 ---
- src/CMakeLists.txt   |  8 ++++++--
- tests/CMakeLists.txt | 12 +++++++++---
- 3 files changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index eb006d9..fa4b0cb 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,9 +34,6 @@ else()
-     set( QT_DONT_USE_QTGUI TRUE )
-     include( ${QT_USE_FILE} )
- 
--    macro(qt5_use_modules)
--    endmacro()
--
-     macro(qt_wrap_cpp)
-         qt4_wrap_cpp(${ARGN})
-     endmacro()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 802125b..253e81e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -79,9 +79,13 @@ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} )
- 
- add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} )
- 
--target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}  )
- set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
--qt5_use_modules( ${MYGPO_QT_TARGET_NAME} Core Network )
-+
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
-+else()
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
-+endif()
- 
- install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
- 
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index a3e3223..4f77158 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -11,11 +11,15 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
- 
- # UrlBuilder library
- add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
--qt5_use_modules( UrlBuilder Core )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( UrlBuilder Qt5::Core )
-+endif()
- # JSONCreator library
- QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
- add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
--qt5_use_modules( JsonCreator Core Network )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
-+endif()
- 
- set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
- 
-@@ -25,7 +29,9 @@ macro(add_libmygpo_test _source)
-     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
-     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
-     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
--    qt5_use_modules(${_name} Network Test)
-+    if( NOT BUILD_WITH_QT4 )
-+        target_link_libraries(${_name} Qt5::Network Qt5::Test)
-+    endif()
- endmacro(add_libmygpo_test)
- 
- add_libmygpo_test( UrlBuilderTest.cpp )
diff --git a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
deleted file mode 100644
index aa9ed2c0f7..0000000000
--- a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 0d76d960727018bddf04c6cc89552af69aaa7e55 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:20:34 +0200
-Subject: [PATCH] Add missing Qt5Network, Qt5Test, make BUILD_WITH_QT4 more
- strict
-
----
- CMakeLists.txt | 22 +++++++++++-----------
- 1 file changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2a1f652..eb006d9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -5,25 +5,25 @@ project( libmygpo-qt )
- set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
- 
--option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4 no matter if Qt5 was found" OFF)
-+option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
- 
- if( NOT BUILD_WITH_QT4 )
--    find_package(Qt5Core QUIET)
--    if( Qt5Core_DIR )
--        set(MYGPO_QT_VERSION_SUFFIX 5)
--
--        macro(qt_wrap_cpp)
--            qt5_wrap_cpp(${ARGN})
--        endmacro()
-+    if( MYGPO_BUILD_TESTS )
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
-+    else()
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network CONFIG)
-     endif()
-+    set(MYGPO_QT_VERSION_SUFFIX 5)
-+
-+    macro(qt_wrap_cpp)
-+        qt5_wrap_cpp(${ARGN})
-+    endmacro()
- 
-     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
-     # Qt5
-     set(MYGPO_QT_MAJOR_VERSION "5")
-     set(MYGPO_QT4_QJSON_DEP "")
--endif()
--
--if( NOT Qt5Core_DIR )
-+else()
-     message(STATUS "Could not find Qt5, searching for Qt4 instead...")
-     message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
-     if( MYGPO_BUILD_TESTS )
diff --git a/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
new file mode 100644
index 0000000000..efdbe7623d
--- /dev/null
+++ b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
@@ -0,0 +1,153 @@
+From 42e19dcb6b7c07460f05aa1d4586d5c76236c6d0 Mon Sep 17 00:00:00 2001
+From: Tuomas Nurmi <tuomas@norsumanageri.org>
+Date: Mon, 8 Jul 2024 17:03:32 +0300
+Subject: [PATCH] Minimal changes to make Qt6 compilation possible
+
+Untested. Compiles, with a bunch of deprecation warnings.
+There's likely room for improvement all around.
+---
+ CMakeLists.txt       | 24 +++++++++---------------
+ libmygpo-qt.pc.in    |  1 -
+ src/CMakeLists.txt   |  4 ++--
+ src/DeviceList.cpp   |  2 +-
+ tests/CMakeLists.txt | 12 +++++++++---
+ 5 files changed, 21 insertions(+), 22 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8a79ddc..920e841 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,10 +5,10 @@ project( libmygpo-qt )
+ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
+ 
+-option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
++option(BUILD_WITH_QT6 "Build libmygpo-qt with Qt6" OFF)
+ option(MYGPO_BUILD_TESTS "Build all unit tests" ON)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     if( MYGPO_BUILD_TESTS )
+         find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
+     else()
+@@ -23,27 +23,21 @@ if( NOT BUILD_WITH_QT4 )
+     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
+     # Qt5
+     set(MYGPO_QT_MAJOR_VERSION "5")
+-    set(MYGPO_QT4_QJSON_DEP "")
+ else()
+-    message(STATUS "Could not find Qt5, searching for Qt4 instead...")
+-    message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
++    message(STATUS "Could not find Qt5, searching for Qt6 instead...")
+     if( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork QtTest REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network Test REQUIRED )
+     else( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network REQUIRED )
+     endif()
+-    set( QT_DONT_USE_QTGUI TRUE )
+-    include( ${QT_USE_FILE} )
++    set(MYGPO_QT_VERSION_SUFFIX 6)
+ 
+     macro(qt_wrap_cpp)
+-        qt4_wrap_cpp(${ARGN})
++        qt6_wrap_cpp(${ARGN})
+     endmacro()
+ 
+-    set(MYGPO_QT_MAJOR_VERSION "")
+-    set(MYGPO_QT4_QJSON_DEP "Requires.private: QJson")
++    set(MYGPO_QT_MAJOR_VERSION "6")
+ 
+-    # QJson is only required for Qt4
+-    find_package(QJSON REQUIRED)
+ endif()
+ 
+ # Don't use absolute path in Mygpo-qtTargets-$buildType.cmake
+@@ -51,7 +45,7 @@ endif()
+ # set(QT_USE_IMPORTED_TARGETS TRUE)
+ 
+ set( MYGPO_QT_VERSION_MAJOR "1" )
+-set( MYGPO_QT_VERSION_MINOR "1" )
++set( MYGPO_QT_VERSION_MINOR "2" )
+ set( MYGPO_QT_VERSION_PATCH "0" )
+ set( MYGPO_QT_VERSION "${MYGPO_QT_VERSION_MAJOR}.${MYGPO_QT_VERSION_MINOR}.${MYGPO_QT_VERSION_PATCH}" )
+ 
+diff --git a/libmygpo-qt.pc.in b/libmygpo-qt.pc.in
+index 8403e48..520bd52 100644
+--- a/libmygpo-qt.pc.in
++++ b/libmygpo-qt.pc.in
+@@ -8,6 +8,5 @@ Description: libmygpo-qt is a C++/Qt Library that wraps the gpodder.net WebAPI
+ URL: http://wiki.gpodder.org/wiki/Libmygpo-qt
+ Version: @MYGPO_QT_VERSION@
+ Requires: Qt@MYGPO_QT_MAJOR_VERSION@Core Qt@MYGPO_QT_MAJOR_VERSION@Network
+-@MYGPO_QT4_QJSON_DEP@
+ Libs: -L${libdir} -lmygpo-qt@MYGPO_QT_VERSION_SUFFIX@
+ Cflags: -I${includedir}
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 253e81e..9d1989c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -81,10 +81,10 @@ add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC
+ 
+ set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
+ else()
+-    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
++    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt6::Core Qt6::Network)
+ endif()
+ 
+ install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
+diff --git a/src/DeviceList.cpp b/src/DeviceList.cpp
+index e972318..92e29cc 100644
+--- a/src/DeviceList.cpp
++++ b/src/DeviceList.cpp
+@@ -64,7 +64,7 @@ bool DeviceListPrivate::parse( const QVariant& data )
+         DevicePtr ptr( new Device( var, this ) );
+         m_devicesList.append( ptr );
+         QVariant v;
+-        v.setValue<DevicePtr>( ptr );
++        v.setValue<DevicePtr>( QSharedPointer<mygpo::Device>(ptr) );
+         devList.append( v );
+     }
+     m_devices = devList;
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 4f77158..ce63689 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -11,14 +11,18 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
+ 
+ # UrlBuilder library
+ add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( UrlBuilder Qt5::Core )
++else()
++    target_link_libraries( UrlBuilder Qt6::Core )
+ endif()
+ # JSONCreator library
+ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
+ add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
++else()
++    target_link_libraries( JsonCreator Qt6::Core Qt6::Network )
+ endif()
+ 
+ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
+@@ -29,8 +33,10 @@ macro(add_libmygpo_test _source)
+     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
+     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
+     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
+-    if( NOT BUILD_WITH_QT4 )
++    if( NOT BUILD_WITH_QT6 )
+         target_link_libraries(${_name} Qt5::Network Qt5::Test)
++    else()
++        target_link_libraries(${_name} Qt6::Network Qt6::Test)
+     endif()
+ endmacro(add_libmygpo_test)
+ 
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 2/5] gnu: Add libmygpo-qt6.
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
@ 2025-02-01 16:04   ` Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
                     ` (2 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt6): New variable.

Change-Id: Ie9c0257f570147293ec695df312982a98bc9d1a7
---
 gnu/packages/gpodder.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index 1baca35f06..a7fb845625 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -161,6 +161,17 @@ (define-public libmygpo-qt
 track podcasts.")
       (license license:lgpl2.1+))))
 
+(define-public libmygpo-qt6
+  (package/inherit libmygpo-qt
+    (name "libmygpo-qt6")
+    (arguments
+     (substitute-keyword-arguments (package-arguments libmygpo-qt)
+       ((#:configure-flags flags)
+        #~(append '("-DBUILD_WITH_QT6=ON") #$flags))))
+    (inputs
+     (modify-inputs (package-inputs libmygpo-qt)
+       (replace "qtbase" qtbase)))))
+
 (define-public python-mygpoclient
   (package
     (name "python-mygpoclient")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 3/5] gnu: Add taglib-extras.
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
@ 2025-02-01 16:04   ` Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 5/5] gnu: Add amarok Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/mp3.scm (taglib-extras): New variable.

Change-Id: I6b4ad693001c89e576fadbb02d981d43f7d568ab
---
 gnu/packages/mp3.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 9dfce6313f..2c54ba978f 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -63,6 +63,7 @@ (define-module (gnu packages mp3)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
@@ -278,6 +279,34 @@ (define-public taglib
     ;; Dual-licensed: user may choose between LGPLv2.1 or MPLv1.1.
     (license (list license:lgpl2.1 license:mpl1.1))))
 
+(define-public taglib-extras
+  (package
+    (name "taglib-extras")
+    ;; 2 changes after mentioning version 1.0.2 in ChangeLog, which fixes
+    ;; finding taglib.
+    (version "1.0.2-2")
+    (source
+     (origin
+       (method svn-fetch)
+       (uri
+        (svn-reference
+          (url "svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib-extras")
+          (revision 1444333)))
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32
+         "1qsima3ln6j63mzdp5y1yjaijxvk3wnriwld5ijdp1xv1dx4hqjc"))))
+    (build-system cmake-build-system)
+    (inputs
+     (list taglib))
+    (arguments
+     (list #:tests? #f)) ;no test suite
+    (home-page "https://websvn.kde.org/trunk/kdesupport/taglib-extras")
+    (synopsis "Additional TagLib plugins")
+    (description
+     "This package provides TagLib plugins for Audible and RealMedia tags.")
+    (license (list license:lgpl2.1+ license:gpl2+))))
+
 (define-public minimp3
   ;; The latest commit is used as there is no release.
   (let ((commit   "afb604c06bc8beb145fecd42c0ceb5bda8795144")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 4/5] gnu: mariadb: Enable embedded server.
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
                     ` (2 preceding siblings ...)
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
@ 2025-02-01 16:04   ` Sughosha via Guix-patches via
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 5/5] gnu: Add amarok Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha, Sharlatan Hellseher

* gnu/packages/databases.scm (mariadb)[arguments]<#:configure-flags>: Add
"-DWITH_EMBEDDED_SERVER=ON".

Change-Id: Iac091d06407b3a86b19e7241c93f9c38e451188d
---
 gnu/packages/databases.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 95a9c1fa6c..fce2f206e1 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -988,6 +988,9 @@ (define-public mariadb
          "-DWITH_SSL=system"
          "-DWITH_ZLIB=system"
 
+         ;; Enable embedded server.
+         "-DWITH_EMBEDDED_SERVER=ON"
+
          "-DDEFAULT_CHARSET=utf8"
          "-DDEFAULT_COLLATION=utf8_general_ci"
          "-DMYSQL_DATADIR=/var/lib/mysql"
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v3 5/5] gnu: Add amarok.
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
                     ` (3 preceding siblings ...)
  2025-02-01 16:04   ` [bug#75720] [PATCH v3 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
@ 2025-02-01 16:04   ` Sughosha via Guix-patches via
  4 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-01 16:04 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/kde-multimedia.scm (amarok): New variable.
* gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch: New file
* gnu/local.mk: Register the new file.

Change-Id: Iff82b2128b231070e6452a8f86a4349f614235b4
---
 gnu/local.mk                                  |   1 +
 gnu/packages/kde-multimedia.scm               | 109 +++++++++++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 ++++++++++++++++++
 3 files changed, 258 insertions(+)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index a725e4eef2..b27e79d7d5 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -982,6 +982,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ibus-anthy-fix-tests.patch		\
   %D%/packages/patches/ibus-table-paths.patch			\
   %D%/packages/patches/anki-mpv-args.patch			\
+  %D%/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch	\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index ad0b504268..8390f29f6f 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -31,14 +31,19 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (gnu packages)
+  #:use-module (gnu packages algebra)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cdrom)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages crypto)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gpodder)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gstreamer)
@@ -46,6 +51,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages kde-plasma)
   #:use-module (gnu packages libcanberra)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages music)
@@ -54,6 +60,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
@@ -98,6 +105,108 @@ (define-public audiocd-kio
     (license ;; GPL for programs, FDL for documentation
      (list license:gpl2+ license:fdl1.2+))))
 
+(define-public amarok
+  (package
+    (name "amarok")
+    (version "3.2.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://kde/stable/amarok/" version
+                                  "/amarok-" version ".tar.xz"))
+              (sha256
+               (base32
+                "14r7iismx28nnh3jhkhczhrsmsap9by8p3kfhkp7d5678c7l62g4"))
+              (patches
+               (search-patches "amarok-3.2.1-fix-including-mygpo-qt6.patch"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:configure-flags
+           #~(list "-DBUILD_WITH_QT6=ON")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'configure 'check-setup
+                 (lambda _
+                   ;; Set home directory.
+                   (setenv "HOME" "/tmp")
+                   ;; testplaylistlayout looks for "amarok/data" directory in
+                   ;; $XDG_DATA_DIRS. Maybe it is for testing after installing.
+                   ;; As a workaround, set XDG_DATA_DIRS pointing to $TMPDIR
+                   ;; which contains "amarok/data" directory.
+                   (let ((linktarget (string-append (dirname (getcwd))
+                                                    "/amarok")))
+                     (if (not (equal? (basename (getcwd)) "amarok"))
+                       (symlink (getcwd) linktarget))
+                     (setenv "XDG_DATA_DIRS"
+                             (string-append (getenv "XDG_DATA_DIRS") ":"
+                                            (dirname linktarget))))))
+               (replace 'check
+                 (lambda* (#:key tests? #:allow-other-keys)
+                   (when tests?
+                     ;; testsqlscanmanager fails, even when run manually.
+                     (invoke "ctest" "-E" "testsqlscanmanager")))))))
+    (native-inputs
+       (list extra-cmake-modules googletest kdoctools pkg-config qttools))
+    (inputs
+     (list ffmpeg
+           fftw
+           glib
+           karchive
+           kcodecs
+           kcolorscheme
+           kconfig
+           kconfigwidgets
+           kcoreaddons
+           kcmutils
+           kcrash
+           kdbusaddons
+           kdnssd
+           kglobalaccel
+           kguiaddons
+           ki18n
+           kiconthemes
+           kio
+           kirigami
+           knotifications
+           kpackage
+           kstatusnotifieritem
+           ktexteditor
+           ktextwidgets
+           kwallet
+           kwidgetsaddons
+           kwindowsystem
+           libofa
+           libmtp
+           libmygpo-qt6
+           libxcrypt
+           `(,mariadb "dev")
+           `(,mariadb "lib")
+           openssl
+           phonon
+           phonon-backend-vlc
+           python
+           qt5compat
+           qtsvg
+           qtwebengine
+           solid
+           taglib
+           taglib-extras
+           threadweaver))
+    (home-page "https://amarok.kde.org/")
+    (synopsis "Audio player for KDE")
+    (description
+     "Amarok is a music player and collection manager.  It features:
+@itemize
+@item dynamic playlists matching different criteria,
+@item collection managing with rating support,
+@item support for basic MTP and UMS music player devices,
+@item integrated internet services such as Magnatune, Ampache and more,
+@item scripting support,
+@item cover manager and
+@item replay gain support
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public dragon
   (package
     (name "dragon")
diff --git a/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
new file mode 100644
index 0000000000..d23954cf80
--- /dev/null
+++ b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
@@ -0,0 +1,148 @@
+This patch fixes including headers of libmygpo-qt6 when built with qt6.
+
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h	2025-01-21 06:40:56.069282183 +0530
+@@ -22,7 +22,14 @@
+ 
+ #include "core/playlists/PlaylistProvider.h"
+ #include "core/podcasts/PodcastMeta.h"
++
++#include <QtVersionChecks>
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#endif
+ 
+ namespace Podcasts {
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-21 05:22:06.974221089 +0530
+@@ -20,7 +20,12 @@
+ #define GPODDERPODCASTREQUESTHANDLER_H_
+ 
+ #include "GpodderServiceModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/PodcastList.h>
++#else
++#include <mygpo-qt6/PodcastList.h>
++#endif
+ 
+ #include <QModelIndex>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-21 05:16:21.674470671 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERPODCASTTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/Podcast.h>
++#endif
+ 
+ class GpodderPodcastTreeItem: public GpodderTreeItem
+ {
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h	2025-01-21 05:21:29.153812018 +0530
+@@ -23,8 +23,15 @@
+ #include "core/podcasts/PodcastProvider.h"
+ #include "core/podcasts/PodcastReader.h"
+ #include "GpodderPodcastMeta.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/EpisodeActionList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/EpisodeActionList.h>
++#endif
++
+ #include "playlistmanager/file/KConfigSyncRelStore.h"
+ #include "playlistmanager/PlaylistManager.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp
+--- amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp	2025-01-21 05:17:27.675190295 +0530
+@@ -27,8 +27,15 @@
+ #include "GpodderServiceModel.h"
+ #include "GpodderServiceView.h"
+ #include "GpodderSortFilterProxyModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/Podcast.h>
++#endif
++
+ #include "playlistmanager/PlaylistManager.h"
+ #include "widgets/SearchWidget.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h	2025-01-21 05:20:32.517198664 +0530
+@@ -20,8 +20,15 @@
+ #define GPODDERSERVICEMODEL_H_
+ 
+ #include "GpodderTreeItem.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ #include "NetworkAccessManagerProxy.h"
+ 
+ #include <QAbstractItemModel>
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h	2025-01-21 05:18:10.983661774 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERTAGTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Tag.h>
++#else
++#include <mygpo-qt6/Tag.h>
++#endif
+ 
+ #include <QObject>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h	2025-01-21 06:33:35.948536483 +0530
+@@ -19,13 +19,18 @@
+ #ifndef GPODDERTREEITEM_H_
+ #define GPODDERTREEITEM_H_
+ 
+-#include <mygpo-qt5/ApiRequest.h>
+-#include <mygpo-qt5/TagList.h>
+-
+ #include <QList>
+ #include <QModelIndex>
+ #include <QVariant>
+ 
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
++#include <mygpo-qt5/ApiRequest.h>
++#include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ 
+ class GpodderTreeItem : public QObject
+ {
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482.
  2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
                   ` (5 preceding siblings ...)
  2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
@ 2025-02-02 17:40 ` Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
                     ` (3 more replies)
  6 siblings, 4 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-02 17:40 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt): Update to 1.1.0-0.4d1f482.
[source]: Switch to git-fetch; update patches.
[home-page]: Update URL.
* gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch: New file.
* gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch: Delete file.
* gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch: Delete file.
* gnu/local.mk: Deregister the deleted files and register the new file.

Change-Id: I5cc3fbc8bfbfa7d88843448a2b5b8ef0fa5df60a
---
 gnu/local.mk                                  |   4 +-
 gnu/packages/gpodder.scm                      |  61 +++----
 .../patches/libmygpo-qt-fix-qt-5.11.patch     |  78 ---------
 .../libmygpo-qt-missing-qt5-modules.patch     |  51 ------
 ...libmygpo-qt-suppot-building-with-qt6.patch | 153 ++++++++++++++++++
 5 files changed, 188 insertions(+), 159 deletions(-)
 delete mode 100644 gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
 delete mode 100644 gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
 create mode 100644 gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index aef9f9fbb5..b6f62568bf 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1743,8 +1743,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/libmp4v2-c++11.patch			\
   %D%/packages/patches/libmpeg2-arm-private-symbols.patch	\
   %D%/packages/patches/libmpeg2-global-symbol-test.patch	\
-  %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch		\
-  %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch	\
+  %D%/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch	\
+  %D%/packages/patches/libpciaccess-hurd64.patch		\
   %D%/packages/patches/libphonenumber-reproducible-build.patch	\
   %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch	\
   %D%/packages/patches/libquicktime-ffmpeg.patch 		\
diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index c3e1c9b496..1baca35f06 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -127,34 +127,39 @@ (define-public gpodder
     (license license:gpl3+)))
 
 (define-public libmygpo-qt
-  (package
-    (name "libmygpo-qt")
-    (version "1.1.0")
-    (source (origin
-              (method url-fetch)
-              (uri (string-append "http://stefan.derkits.at/files/"
-                                  "libmygpo-qt/libmygpo-qt." version ".tar.gz"))
-              (sha256
-               (base32
-                "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2"))
-              (patches (search-patches "libmygpo-qt-fix-qt-5.11.patch"
-                                       "libmygpo-qt-missing-qt5-modules.patch"))))
-    (build-system cmake-build-system)
-    (native-inputs
-     (list pkg-config))
-    (inputs
-     (list qtbase-5))
-    (arguments
-     '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
-       ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
-       ;; is fixed.
-       #:tests? #f))
-    (home-page "https://gpodder.github.io")
-    (synopsis "Qt/C++ library wrapping the gpodder web service")
-    (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
-@url{https://gpodder.net} APIs.  It allows applications to discover, manage
-and track podcasts.")
-    (license license:lgpl2.1+)))
+  (let ((commit "4d1f48291791c64f029e69138e3bc7fb6a851610")
+        (revision "0"))
+    (package
+      (name "libmygpo-qt")
+      (version (git-version "1.1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri
+          (git-reference
+            (url "https://github.com/gpodder/libmygpo-qt")
+            (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "1bxv8blyq66600i8skxmccb1lnmliz90378kck4f6j2ynry2114b"))
+         (patches
+          (search-patches "libmygpo-qt-suppot-building-with-qt6.patch"))))
+      (build-system cmake-build-system)
+      (native-inputs
+       (list pkg-config))
+      (inputs
+       (list qtbase-5))
+      (arguments
+       '(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON")
+         ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446
+         ;; is fixed.
+         #:tests? #f))
+      (home-page "https://wiki.gpodder.org/wiki/Libmygpo-qt")
+      (synopsis "Qt/C++ library wrapping the gpodder web service")
+      (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the
+@url{https://gpodder.net} APIs.  It allows applications to discover, manage and
+track podcasts.")
+      (license license:lgpl2.1+))))
 
 (define-public python-mygpoclient
   (package
diff --git a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
deleted file mode 100644
index 69673c90ee..0000000000
--- a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From 1b53767b988b339aac8b353327a1542b2a0c0610 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:29:33 +0200
-Subject: [PATCH] Fix build with Qt 5.11_beta3 (dropping qt5_use_modules)
-
----
- CMakeLists.txt       |  3 ---
- src/CMakeLists.txt   |  8 ++++++--
- tests/CMakeLists.txt | 12 +++++++++---
- 3 files changed, 15 insertions(+), 8 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index eb006d9..fa4b0cb 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -34,9 +34,6 @@ else()
-     set( QT_DONT_USE_QTGUI TRUE )
-     include( ${QT_USE_FILE} )
- 
--    macro(qt5_use_modules)
--    endmacro()
--
-     macro(qt_wrap_cpp)
-         qt4_wrap_cpp(${ARGN})
-     endmacro()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 802125b..253e81e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -79,9 +79,13 @@ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} )
- 
- add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} )
- 
--target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}  )
- set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
--qt5_use_modules( ${MYGPO_QT_TARGET_NAME} Core Network )
-+
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
-+else()
-+    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
-+endif()
- 
- install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
- 
-diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
-index a3e3223..4f77158 100644
---- a/tests/CMakeLists.txt
-+++ b/tests/CMakeLists.txt
-@@ -11,11 +11,15 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
- 
- # UrlBuilder library
- add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
--qt5_use_modules( UrlBuilder Core )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( UrlBuilder Qt5::Core )
-+endif()
- # JSONCreator library
- QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
- add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
--qt5_use_modules( JsonCreator Core Network )
-+if( NOT BUILD_WITH_QT4 )
-+    target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
-+endif()
- 
- set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
- 
-@@ -25,7 +29,9 @@ macro(add_libmygpo_test _source)
-     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
-     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
-     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
--    qt5_use_modules(${_name} Network Test)
-+    if( NOT BUILD_WITH_QT4 )
-+        target_link_libraries(${_name} Qt5::Network Qt5::Test)
-+    endif()
- endmacro(add_libmygpo_test)
- 
- add_libmygpo_test( UrlBuilderTest.cpp )
diff --git a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
deleted file mode 100644
index aa9ed2c0f7..0000000000
--- a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From 0d76d960727018bddf04c6cc89552af69aaa7e55 Mon Sep 17 00:00:00 2001
-From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
-Date: Sun, 15 Apr 2018 22:20:34 +0200
-Subject: [PATCH] Add missing Qt5Network, Qt5Test, make BUILD_WITH_QT4 more
- strict
-
----
- CMakeLists.txt | 22 +++++++++++-----------
- 1 file changed, 11 insertions(+), 11 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2a1f652..eb006d9 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -5,25 +5,25 @@ project( libmygpo-qt )
- set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
- set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
- 
--option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4 no matter if Qt5 was found" OFF)
-+option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
- 
- if( NOT BUILD_WITH_QT4 )
--    find_package(Qt5Core QUIET)
--    if( Qt5Core_DIR )
--        set(MYGPO_QT_VERSION_SUFFIX 5)
--
--        macro(qt_wrap_cpp)
--            qt5_wrap_cpp(${ARGN})
--        endmacro()
-+    if( MYGPO_BUILD_TESTS )
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
-+    else()
-+        find_package(Qt5 REQUIRED COMPONENTS Core Network CONFIG)
-     endif()
-+    set(MYGPO_QT_VERSION_SUFFIX 5)
-+
-+    macro(qt_wrap_cpp)
-+        qt5_wrap_cpp(${ARGN})
-+    endmacro()
- 
-     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
-     # Qt5
-     set(MYGPO_QT_MAJOR_VERSION "5")
-     set(MYGPO_QT4_QJSON_DEP "")
--endif()
--
--if( NOT Qt5Core_DIR )
-+else()
-     message(STATUS "Could not find Qt5, searching for Qt4 instead...")
-     message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
-     if( MYGPO_BUILD_TESTS )
diff --git a/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
new file mode 100644
index 0000000000..efdbe7623d
--- /dev/null
+++ b/gnu/packages/patches/libmygpo-qt-suppot-building-with-qt6.patch
@@ -0,0 +1,153 @@
+From 42e19dcb6b7c07460f05aa1d4586d5c76236c6d0 Mon Sep 17 00:00:00 2001
+From: Tuomas Nurmi <tuomas@norsumanageri.org>
+Date: Mon, 8 Jul 2024 17:03:32 +0300
+Subject: [PATCH] Minimal changes to make Qt6 compilation possible
+
+Untested. Compiles, with a bunch of deprecation warnings.
+There's likely room for improvement all around.
+---
+ CMakeLists.txt       | 24 +++++++++---------------
+ libmygpo-qt.pc.in    |  1 -
+ src/CMakeLists.txt   |  4 ++--
+ src/DeviceList.cpp   |  2 +-
+ tests/CMakeLists.txt | 12 +++++++++---
+ 5 files changed, 21 insertions(+), 22 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8a79ddc..920e841 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -5,10 +5,10 @@ project( libmygpo-qt )
+ set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
+ set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" )
+ 
+-option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF)
++option(BUILD_WITH_QT6 "Build libmygpo-qt with Qt6" OFF)
+ option(MYGPO_BUILD_TESTS "Build all unit tests" ON)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     if( MYGPO_BUILD_TESTS )
+         find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG)
+     else()
+@@ -23,27 +23,21 @@ if( NOT BUILD_WITH_QT4 )
+     # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for
+     # Qt5
+     set(MYGPO_QT_MAJOR_VERSION "5")
+-    set(MYGPO_QT4_QJSON_DEP "")
+ else()
+-    message(STATUS "Could not find Qt5, searching for Qt4 instead...")
+-    message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported")
++    message(STATUS "Could not find Qt5, searching for Qt6 instead...")
+     if( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork QtTest REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network Test REQUIRED )
+     else( MYGPO_BUILD_TESTS )
+-        find_package( Qt4 COMPONENTS QtCore QtNetwork REQUIRED )
++        find_package( Qt6 COMPONENTS Core Network REQUIRED )
+     endif()
+-    set( QT_DONT_USE_QTGUI TRUE )
+-    include( ${QT_USE_FILE} )
++    set(MYGPO_QT_VERSION_SUFFIX 6)
+ 
+     macro(qt_wrap_cpp)
+-        qt4_wrap_cpp(${ARGN})
++        qt6_wrap_cpp(${ARGN})
+     endmacro()
+ 
+-    set(MYGPO_QT_MAJOR_VERSION "")
+-    set(MYGPO_QT4_QJSON_DEP "Requires.private: QJson")
++    set(MYGPO_QT_MAJOR_VERSION "6")
+ 
+-    # QJson is only required for Qt4
+-    find_package(QJSON REQUIRED)
+ endif()
+ 
+ # Don't use absolute path in Mygpo-qtTargets-$buildType.cmake
+@@ -51,7 +45,7 @@ endif()
+ # set(QT_USE_IMPORTED_TARGETS TRUE)
+ 
+ set( MYGPO_QT_VERSION_MAJOR "1" )
+-set( MYGPO_QT_VERSION_MINOR "1" )
++set( MYGPO_QT_VERSION_MINOR "2" )
+ set( MYGPO_QT_VERSION_PATCH "0" )
+ set( MYGPO_QT_VERSION "${MYGPO_QT_VERSION_MAJOR}.${MYGPO_QT_VERSION_MINOR}.${MYGPO_QT_VERSION_PATCH}" )
+ 
+diff --git a/libmygpo-qt.pc.in b/libmygpo-qt.pc.in
+index 8403e48..520bd52 100644
+--- a/libmygpo-qt.pc.in
++++ b/libmygpo-qt.pc.in
+@@ -8,6 +8,5 @@ Description: libmygpo-qt is a C++/Qt Library that wraps the gpodder.net WebAPI
+ URL: http://wiki.gpodder.org/wiki/Libmygpo-qt
+ Version: @MYGPO_QT_VERSION@
+ Requires: Qt@MYGPO_QT_MAJOR_VERSION@Core Qt@MYGPO_QT_MAJOR_VERSION@Network
+-@MYGPO_QT4_QJSON_DEP@
+ Libs: -L${libdir} -lmygpo-qt@MYGPO_QT_VERSION_SUFFIX@
+ Cflags: -I${includedir}
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 253e81e..9d1989c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -81,10 +81,10 @@ add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC
+ 
+ set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
+ 
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network)
+ else()
+-    target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES})
++    target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt6::Core Qt6::Network)
+ endif()
+ 
+ install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} )
+diff --git a/src/DeviceList.cpp b/src/DeviceList.cpp
+index e972318..92e29cc 100644
+--- a/src/DeviceList.cpp
++++ b/src/DeviceList.cpp
+@@ -64,7 +64,7 @@ bool DeviceListPrivate::parse( const QVariant& data )
+         DevicePtr ptr( new Device( var, this ) );
+         m_devicesList.append( ptr );
+         QVariant v;
+-        v.setValue<DevicePtr>( ptr );
++        v.setValue<DevicePtr>( QSharedPointer<mygpo::Device>(ptr) );
+         devList.append( v );
+     }
+     m_devices = devList;
+diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
+index 4f77158..ce63689 100644
+--- a/tests/CMakeLists.txt
++++ b/tests/CMakeLists.txt
+@@ -11,14 +11,18 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU
+ 
+ # UrlBuilder library
+ add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp )
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( UrlBuilder Qt5::Core )
++else()
++    target_link_libraries( UrlBuilder Qt6::Core )
+ endif()
+ # JSONCreator library
+ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h )
+ add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC})
+-if( NOT BUILD_WITH_QT4 )
++if( NOT BUILD_WITH_QT6 )
+     target_link_libraries( JsonCreator Qt5::Core Qt5::Network )
++else()
++    target_link_libraries( JsonCreator Qt6::Core Qt6::Network )
+ endif()
+ 
+ set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} )
+@@ -29,8 +33,10 @@ macro(add_libmygpo_test _source)
+     add_executable(${_name} ${_source} ${${_name}_MOC_SRC})
+     target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY})
+     add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name})
+-    if( NOT BUILD_WITH_QT4 )
++    if( NOT BUILD_WITH_QT6 )
+         target_link_libraries(${_name} Qt5::Network Qt5::Test)
++    else()
++        target_link_libraries(${_name} Qt6::Network Qt6::Test)
+     endif()
+ endmacro(add_libmygpo_test)
+ 

base-commit: b64d3168af697ceb2a96e7e2c62bcf418b8a586a
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v4 2/5] gnu: Add libmygpo-qt6.
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
@ 2025-02-02 17:40   ` Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-02 17:40 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/gpodder.scm (libmygpo-qt6): New variable.

Change-Id: Ie9c0257f570147293ec695df312982a98bc9d1a7
---
 gnu/packages/gpodder.scm | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gnu/packages/gpodder.scm b/gnu/packages/gpodder.scm
index 1baca35f06..a7fb845625 100644
--- a/gnu/packages/gpodder.scm
+++ b/gnu/packages/gpodder.scm
@@ -161,6 +161,17 @@ (define-public libmygpo-qt
 track podcasts.")
       (license license:lgpl2.1+))))
 
+(define-public libmygpo-qt6
+  (package/inherit libmygpo-qt
+    (name "libmygpo-qt6")
+    (arguments
+     (substitute-keyword-arguments (package-arguments libmygpo-qt)
+       ((#:configure-flags flags)
+        #~(append '("-DBUILD_WITH_QT6=ON") #$flags))))
+    (inputs
+     (modify-inputs (package-inputs libmygpo-qt)
+       (replace "qtbase" qtbase)))))
+
 (define-public python-mygpoclient
   (package
     (name "python-mygpoclient")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v4 3/5] gnu: Add taglib-extras.
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
@ 2025-02-02 17:40   ` Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 5/5] gnu: Add amarok Sughosha via Guix-patches via
  3 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-02 17:40 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/mp3.scm (taglib-extras): New variable.

Change-Id: I6b4ad693001c89e576fadbb02d981d43f7d568ab
---
 gnu/packages/mp3.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 9dfce6313f..2c54ba978f 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -63,6 +63,7 @@ (define-module (gnu packages mp3)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix git-download)
+  #:use-module (guix svn-download)
   #:use-module (guix utils)
   #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
@@ -278,6 +279,34 @@ (define-public taglib
     ;; Dual-licensed: user may choose between LGPLv2.1 or MPLv1.1.
     (license (list license:lgpl2.1 license:mpl1.1))))
 
+(define-public taglib-extras
+  (package
+    (name "taglib-extras")
+    ;; 2 changes after mentioning version 1.0.2 in ChangeLog, which fixes
+    ;; finding taglib.
+    (version "1.0.2-2")
+    (source
+     (origin
+       (method svn-fetch)
+       (uri
+        (svn-reference
+          (url "svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib-extras")
+          (revision 1444333)))
+       (file-name (string-append name "-" version "-checkout"))
+       (sha256
+        (base32
+         "1qsima3ln6j63mzdp5y1yjaijxvk3wnriwld5ijdp1xv1dx4hqjc"))))
+    (build-system cmake-build-system)
+    (inputs
+     (list taglib))
+    (arguments
+     (list #:tests? #f)) ;no test suite
+    (home-page "https://websvn.kde.org/trunk/kdesupport/taglib-extras")
+    (synopsis "Additional TagLib plugins")
+    (description
+     "This package provides TagLib plugins for Audible and RealMedia tags.")
+    (license (list license:lgpl2.1+ license:gpl2+))))
+
 (define-public minimp3
   ;; The latest commit is used as there is no release.
   (let ((commit   "afb604c06bc8beb145fecd42c0ceb5bda8795144")
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v4 4/5] gnu: mariadb: Enable embedded server.
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
@ 2025-02-02 17:40   ` Sughosha via Guix-patches via
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 5/5] gnu: Add amarok Sughosha via Guix-patches via
  3 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-02 17:40 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha, Sharlatan Hellseher

* gnu/packages/databases.scm (mariadb)[arguments]<#:configure-flags>: Add
"-DWITH_EMBEDDED_SERVER=ON".

Change-Id: Iac091d06407b3a86b19e7241c93f9c38e451188d
---
 gnu/packages/databases.scm | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 95a9c1fa6c..fce2f206e1 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -988,6 +988,9 @@ (define-public mariadb
          "-DWITH_SSL=system"
          "-DWITH_ZLIB=system"
 
+         ;; Enable embedded server.
+         "-DWITH_EMBEDDED_SERVER=ON"
+
          "-DDEFAULT_CHARSET=utf8"
          "-DDEFAULT_COLLATION=utf8_general_ci"
          "-DMYSQL_DATADIR=/var/lib/mysql"
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [bug#75720] [PATCH v4 5/5] gnu: Add amarok.
  2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
                     ` (2 preceding siblings ...)
  2025-02-02 17:40   ` [bug#75720] [PATCH v4 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
@ 2025-02-02 17:40   ` Sughosha via Guix-patches via
  3 siblings, 0 replies; 22+ messages in thread
From: Sughosha via Guix-patches via @ 2025-02-02 17:40 UTC (permalink / raw)
  To: 75720; +Cc: Sughosha

* gnu/packages/kde-multimedia.scm (amarok): New variable.
* gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch: New file
* gnu/local.mk: Register the new file.

Change-Id: Iff82b2128b231070e6452a8f86a4349f614235b4
---
 gnu/local.mk                                  |   1 +
 gnu/packages/kde-multimedia.scm               | 109 +++++++++++++
 ...amarok-3.2.1-fix-including-mygpo-qt6.patch | 148 ++++++++++++++++++
 3 files changed, 258 insertions(+)
 create mode 100644 gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index b6f62568bf..a6803c26e0 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -982,6 +982,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/ibus-anthy-fix-tests.patch		\
   %D%/packages/patches/ibus-table-paths.patch			\
   %D%/packages/patches/anki-mpv-args.patch			\
+  %D%/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch	\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
   %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
   %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm
index ad0b504268..8390f29f6f 100644
--- a/gnu/packages/kde-multimedia.scm
+++ b/gnu/packages/kde-multimedia.scm
@@ -31,14 +31,19 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (guix utils)
   #:use-module (guix gexp)
   #:use-module (gnu packages)
+  #:use-module (gnu packages algebra)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cdrom)
+  #:use-module (gnu packages check)
+  #:use-module (gnu packages crypto)
+  #:use-module (gnu packages databases)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gpodder)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages gstreamer)
@@ -46,6 +51,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages kde-frameworks)
   #:use-module (gnu packages kde-plasma)
   #:use-module (gnu packages libcanberra)
+  #:use-module (gnu packages libusb)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages music)
@@ -54,6 +60,7 @@ (define-module (gnu packages kde-multimedia)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages xml)
@@ -98,6 +105,108 @@ (define-public audiocd-kio
     (license ;; GPL for programs, FDL for documentation
      (list license:gpl2+ license:fdl1.2+))))
 
+(define-public amarok
+  (package
+    (name "amarok")
+    (version "3.2.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://kde/stable/amarok/" version
+                                  "/amarok-" version ".tar.xz"))
+              (sha256
+               (base32
+                "14r7iismx28nnh3jhkhczhrsmsap9by8p3kfhkp7d5678c7l62g4"))
+              (patches
+               (search-patches "amarok-3.2.1-fix-including-mygpo-qt6.patch"))))
+    (build-system qt-build-system)
+    (arguments
+     (list #:qtbase qtbase
+           #:configure-flags
+           #~(list "-DBUILD_WITH_QT6=ON")
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-before 'configure 'check-setup
+                 (lambda _
+                   ;; Set home directory.
+                   (setenv "HOME" "/tmp")
+                   ;; testplaylistlayout looks for "amarok/data" directory in
+                   ;; $XDG_DATA_DIRS. Maybe it is for testing after installing.
+                   ;; As a workaround, set XDG_DATA_DIRS pointing to $TMPDIR
+                   ;; which contains "amarok/data" directory.
+                   (let ((linktarget (string-append (dirname (getcwd))
+                                                    "/amarok")))
+                     (if (not (equal? (basename (getcwd)) "amarok"))
+                       (symlink (getcwd) linktarget))
+                     (setenv "XDG_DATA_DIRS"
+                             (string-append (getenv "XDG_DATA_DIRS") ":"
+                                            (dirname linktarget))))))
+               (replace 'check
+                 (lambda* (#:key tests? #:allow-other-keys)
+                   (when tests?
+                     ;; testsqlscanmanager fails, even when run manually.
+                     (invoke "ctest" "-E" "testsqlscanmanager")))))))
+    (native-inputs
+       (list extra-cmake-modules googletest kdoctools pkg-config qttools))
+    (inputs
+     (list ffmpeg
+           fftw
+           glib
+           karchive
+           kcodecs
+           kcolorscheme
+           kconfig
+           kconfigwidgets
+           kcoreaddons
+           kcmutils
+           kcrash
+           kdbusaddons
+           kdnssd
+           kglobalaccel
+           kguiaddons
+           ki18n
+           kiconthemes
+           kio
+           kirigami
+           knotifications
+           kpackage
+           kstatusnotifieritem
+           ktexteditor
+           ktextwidgets
+           kwallet
+           kwidgetsaddons
+           kwindowsystem
+           libofa
+           libmtp
+           libmygpo-qt6
+           libxcrypt
+           `(,mariadb "dev")
+           `(,mariadb "lib")
+           openssl
+           phonon
+           phonon-backend-vlc
+           python
+           qt5compat
+           qtsvg
+           qtwebengine
+           solid
+           taglib
+           taglib-extras
+           threadweaver))
+    (home-page "https://amarok.kde.org/")
+    (synopsis "Audio player for KDE")
+    (description
+     "Amarok is a music player and collection manager.  It features:
+@itemize
+@item dynamic playlists matching different criteria,
+@item collection managing with rating support,
+@item support for basic MTP and UMS music player devices,
+@item integrated internet services such as Magnatune, Ampache and more,
+@item scripting support,
+@item cover manager and
+@item replay gain support
+@end itemize")
+    (license license:gpl2+)))
+
 (define-public dragon
   (package
     (name "dragon")
diff --git a/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
new file mode 100644
index 0000000000..d23954cf80
--- /dev/null
+++ b/gnu/packages/patches/amarok-3.2.1-fix-including-mygpo-qt6.patch
@@ -0,0 +1,148 @@
+This patch fixes including headers of libmygpo-qt6 when built with qt6.
+
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastMeta.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastMeta.h	2025-01-21 06:40:56.069282183 +0530
+@@ -22,7 +22,14 @@
+ 
+ #include "core/playlists/PlaylistProvider.h"
+ #include "core/podcasts/PodcastMeta.h"
++
++#include <QtVersionChecks>
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#endif
+ 
+ namespace Podcasts {
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastRequestHandler.h	2025-01-21 05:22:06.974221089 +0530
+@@ -20,7 +20,12 @@
+ #define GPODDERPODCASTREQUESTHANDLER_H_
+ 
+ #include "GpodderServiceModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/PodcastList.h>
++#else
++#include <mygpo-qt6/PodcastList.h>
++#endif
+ 
+ #include <QModelIndex>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderPodcastTreeItem.h	2025-01-21 05:16:21.674470671 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERPODCASTTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/Podcast.h>
++#endif
+ 
+ class GpodderPodcastTreeItem: public GpodderTreeItem
+ {
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderProvider.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderProvider.h	2025-01-21 05:21:29.153812018 +0530
+@@ -23,8 +23,15 @@
+ #include "core/podcasts/PodcastProvider.h"
+ #include "core/podcasts/PodcastReader.h"
+ #include "GpodderPodcastMeta.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/EpisodeActionList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/EpisodeActionList.h>
++#endif
++
+ #include "playlistmanager/file/KConfigSyncRelStore.h"
+ #include "playlistmanager/PlaylistManager.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp
+--- amarok-3.2.1-a/src/services/gpodder/GpodderService.cpp	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderService.cpp	2025-01-21 05:17:27.675190295 +0530
+@@ -27,8 +27,15 @@
+ #include "GpodderServiceModel.h"
+ #include "GpodderServiceView.h"
+ #include "GpodderSortFilterProxyModel.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/Podcast.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/Podcast.h>
++#endif
++
+ #include "playlistmanager/PlaylistManager.h"
+ #include "widgets/SearchWidget.h"
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderServiceModel.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderServiceModel.h	2025-01-21 05:20:32.517198664 +0530
+@@ -20,8 +20,15 @@
+ #define GPODDERSERVICEMODEL_H_
+ 
+ #include "GpodderTreeItem.h"
++
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/ApiRequest.h>
+ #include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ #include "NetworkAccessManagerProxy.h"
+ 
+ #include <QAbstractItemModel>
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTagTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTagTreeItem.h	2025-01-21 05:18:10.983661774 +0530
+@@ -20,7 +20,11 @@
+ #define GPODDERTAGTREEITEM_H_
+ 
+ #include "GpodderTreeItem.h"
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
+ #include <mygpo-qt5/Tag.h>
++#else
++#include <mygpo-qt6/Tag.h>
++#endif
+ 
+ #include <QObject>
+ 
+diff -ruN amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h
+--- amarok-3.2.1-a/src/services/gpodder/GpodderTreeItem.h	2025-01-11 23:47:50.000000000 +0530
++++ amarok-3.2.1-b/src/services/gpodder/GpodderTreeItem.h	2025-01-21 06:33:35.948536483 +0530
+@@ -19,13 +19,18 @@
+ #ifndef GPODDERTREEITEM_H_
+ #define GPODDERTREEITEM_H_
+ 
+-#include <mygpo-qt5/ApiRequest.h>
+-#include <mygpo-qt5/TagList.h>
+-
+ #include <QList>
+ #include <QModelIndex>
+ #include <QVariant>
+ 
++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
++#include <mygpo-qt5/ApiRequest.h>
++#include <mygpo-qt5/TagList.h>
++#else
++#include <mygpo-qt6/ApiRequest.h>
++#include <mygpo-qt6/TagList.h>
++#endif
++
+ 
+ class GpodderTreeItem : public QObject
+ {
-- 
2.47.1





^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2025-02-02 17:42 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-21  2:27 [bug#75720] [PATCH 0/4] gnu: Add amarok Sughosha via Guix-patches via
2025-01-21  2:30 ` [bug#75720] [PATCH 1/4] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
2025-01-21  2:30 ` [bug#75720] [PATCH 2/4] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
2025-01-21  2:30 ` [bug#75720] [PATCH 3/4] gnu: Add taglib-extras Sughosha via Guix-patches via
2025-01-21  2:30 ` [bug#75720] [PATCH 4/4] gnu: Add amarok Sughosha via Guix-patches via
2025-01-22  3:46 ` [bug#75720] [PATCH v2 0/5] " Sughosha via Guix-patches via
2025-01-22  3:48   ` [bug#75720] [PATCH v2 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
2025-01-22  3:48   ` [bug#75720] [PATCH v2 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
2025-01-22  3:48   ` [bug#75720] [PATCH v2 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
2025-01-22  3:48   ` [bug#75720] [PATCH v2 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
2025-01-22  3:48   ` [bug#75720] [PATCH v2 5/5] gnu: Add amarok Sughosha via Guix-patches via
2025-02-01 16:04 ` [bug#75720] [PATCH v3 0/5] " Sughosha via Guix-patches via
2025-02-01 16:04   ` [bug#75720] [PATCH v3 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
2025-02-01 16:04   ` [bug#75720] [PATCH v3 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
2025-02-01 16:04   ` [bug#75720] [PATCH v3 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
2025-02-01 16:04   ` [bug#75720] [PATCH v3 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
2025-02-01 16:04   ` [bug#75720] [PATCH v3 5/5] gnu: Add amarok Sughosha via Guix-patches via
2025-02-02 17:40 ` [bug#75720] [PATCH v4 1/5] gnu: libmygpo-qt: Update to 1.1.0-0.4d1f482 Sughosha via Guix-patches via
2025-02-02 17:40   ` [bug#75720] [PATCH v4 2/5] gnu: Add libmygpo-qt6 Sughosha via Guix-patches via
2025-02-02 17:40   ` [bug#75720] [PATCH v4 3/5] gnu: Add taglib-extras Sughosha via Guix-patches via
2025-02-02 17:40   ` [bug#75720] [PATCH v4 4/5] gnu: mariadb: Enable embedded server Sughosha via Guix-patches via
2025-02-02 17:40   ` [bug#75720] [PATCH v4 5/5] gnu: Add amarok Sughosha via Guix-patches via

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).