diff --git a/media-sound/clementine/clementine-1.4.0~git.recipe b/media-sound/clementine/clementine-1.4.1~git.recipe
similarity index 88%
rename from media-sound/clementine/clementine-1.4.0~git.recipe
rename to media-sound/clementine/clementine-1.4.1~git.recipe
index ca5035692..d40318da4 100644
--- a/media-sound/clementine/clementine-1.4.0~git.recipe
+++ b/media-sound/clementine/clementine-1.4.1~git.recipe
@@ -29,12 +29,12 @@ Remote control using a Wii Remote, MPRIS or the command-line.
Copy music to your iPod, iPhone, MTP or mass-storage USB player.
Queue manager."
HOMEPAGE="https://www.clementine-player.org/"
-COPYRIGHT="2010-2020 David Sansome, John Maguire, Arnaud Bienner"
+COPYRIGHT="2010-present David Sansome, John Maguire, Arnaud Bienner"
LICENSE="GNU GPL v3"
-REVISION="4"
-srcGitRev="fc4cb6fc7a71695beef3c30a25fe78c4aabc6017"
+REVISION="1"
+srcGitRev="41bcdca7f7e0ffda8e2105bb49a200e5a7cec795"
SOURCE_URI="https://github.com/clementine-player/Clementine/archive/$srcGitRev.tar.gz"
-CHECKSUM_SHA256="79628e500f37f92539fa522e265bf40bf54da2cdb243589992ad681536f0c86e"
+CHECKSUM_SHA256="1bb1e91fd910ef9c8e25331693af81cd0876c4df46e5a05e1044d154560a3a7a"
SOURCE_DIR="Clementine-$srcGitRev"
PATCHES="clementine-$portVersion.patchset"
ADDITIONAL_FILES="clementine.rdef.in"
@@ -76,14 +76,14 @@ REQUIRES="
BUILD_REQUIRES="
haiku${secondaryArchSuffix}_devel
sparsehash$secondaryArchSuffix
- devel:libboost_atomic$secondaryArchSuffix >= 1.69.0
- devel:libboost_chrono$secondaryArchSuffix >= 1.69.0
- devel:libboost_date_time$secondaryArchSuffix >= 1.69.0
- devel:libboost_filesystem$secondaryArchSuffix >= 1.69.0
- devel:libboost_locale$secondaryArchSuffix >= 1.69.0
- devel:libboost_regex$secondaryArchSuffix >= 1.69.0
- devel:libboost_system$secondaryArchSuffix >= 1.69.0
- devel:libboost_thread$secondaryArchSuffix >= 1.69.0
+ devel:libboost_atomic$secondaryArchSuffix >= 1.85.0
+ devel:libboost_chrono$secondaryArchSuffix >= 1.85.0
+ devel:libboost_date_time$secondaryArchSuffix >= 1.85.0
+ devel:libboost_filesystem$secondaryArchSuffix >= 1.85.0
+ devel:libboost_locale$secondaryArchSuffix >= 1.85.0
+ devel:libboost_regex$secondaryArchSuffix >= 1.85.0
+ devel:libboost_system$secondaryArchSuffix >= 1.85.0
+ devel:libboost_thread$secondaryArchSuffix >= 1.85.0
devel:libcdio$secondaryArchSuffix >= 19
devel:libchromaprint$secondaryArchSuffix
devel:libexecinfo$secondaryArchSuffix
@@ -114,6 +114,7 @@ BUILD_PREREQUIRES="
cmd:gcc$secondaryArchSuffix
cmd:lrelease$secondaryArchSuffix >= 5
cmd:make
+ cmd:msgmerge$secondaryArchSuffix
cmd:orcc$secondaryArchSuffix
cmd:pkg_config$secondaryArchSuffix
"
diff --git a/media-sound/clementine/patches/clementine-1.4.0~git.patchset b/media-sound/clementine/patches/clementine-1.4.1~git.patchset
similarity index 86%
rename from media-sound/clementine/patches/clementine-1.4.0~git.patchset
rename to media-sound/clementine/patches/clementine-1.4.1~git.patchset
index 6e5534977..e9c6545d5 100644
--- a/media-sound/clementine/patches/clementine-1.4.0~git.patchset
+++ b/media-sound/clementine/patches/clementine-1.4.1~git.patchset
@@ -1,15 +1,15 @@
-From 8f82aac3616133df4c550270ffa3f23e1697e53c Mon Sep 17 00:00:00 2001
+From 1c13fcd0a4217b657f4386257be246c9e43a35ba Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 19 Apr 2020 15:30:42 +1000
Subject: Fix build for Haiku
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 600dc6e..e414a18 100644
+index 48b55f4..900fbb0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -49,7 +49,7 @@ find_package(PkgConfig REQUIRED)
- find_package(Protobuf REQUIRED)
+@@ -53,7 +53,7 @@ if(NOT protobuf_FOUND)
+ endif()
find_package(FFTW3)
find_package(ALSA)
-if (NOT APPLE)
@@ -17,7 +17,7 @@ index 600dc6e..e414a18 100644
find_package(X11)
endif()
if(X11_FOUND)
-@@ -398,6 +398,7 @@ if(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES)
+@@ -379,6 +379,7 @@ if(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES)
set(QTIOCOMPRESSOR_LIBRARIES qtiocompressor)
endif(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES)
@@ -25,7 +25,7 @@ index 600dc6e..e414a18 100644
# When/if upstream accepts our or reimplement our patches then these options can be
# used to link to system installed qxt instead.
option(USE_SYSTEM_QXT "Don't set this option unless your system Qxt library has been compiled with the Clementine patches in 3rdparty" OFF)
-@@ -415,6 +416,7 @@ else (USE_SYSTEM_QXT)
+@@ -396,6 +397,7 @@ else (USE_SYSTEM_QXT)
add_subdirectory(3rdparty/qxt)
endif (NOT APPLE)
endif (USE_SYSTEM_QXT)
@@ -34,10 +34,10 @@ index 600dc6e..e414a18 100644
# Use system gmock if it's available
# We need to look for both gmock and gtest
diff --git a/data/data.qrc b/data/data.qrc
-index 757a575..a6b0a8b 100644
+index d4af90d..96eace5 100644
--- a/data/data.qrc
+++ b/data/data.qrc
-@@ -102,6 +102,9 @@
+@@ -101,6 +101,9 @@
icons/22x22/x-clementine-artist.png
icons/22x22/x-clementine-shuffle.png
icons/22x22/zoom-in.png
@@ -47,7 +47,7 @@ index 757a575..a6b0a8b 100644
icons/32x32/application-exit.png
icons/32x32/applications-internet.png
icons/32x32/audio-volume-medium.png
-@@ -188,6 +191,9 @@
+@@ -187,6 +190,9 @@
icons/32x32/x-clementine-artist.png
icons/32x32/x-clementine-shuffle.png
icons/32x32/zoom-in.png
@@ -57,7 +57,7 @@ index 757a575..a6b0a8b 100644
icons/48x48/application-exit.png
icons/48x48/applications-internet.png
icons/48x48/audio-volume-medium.png
-@@ -269,6 +275,9 @@
+@@ -268,6 +274,9 @@
icons/48x48/x-clementine-artist.png
icons/48x48/x-clementine-shuffle.png
icons/48x48/zoom-in.png
@@ -139,24 +139,11 @@ index 0000000..fcdd6f2
@@ -0,0 +1 @@
+view-media-playlist.png
\ No newline at end of file
-diff --git a/ext/libclementine-common/core/logging.cpp b/ext/libclementine-common/core/logging.cpp
-index 8012c0c..89b6ab2 100644
---- a/ext/libclementine-common/core/logging.cpp
-+++ b/ext/libclementine-common/core/logging.cpp
-@@ -315,7 +315,7 @@ QString DemangleSymbol(const QString& symbol) {
- }
-
- void DumpStackTrace() {
--#ifdef Q_OS_UNIX
-+#if defined(Q_OS_UNIX) && !defined(Q_OS_HAIKU)
- void* callstack[128];
- int callstack_size =
- backtrace(reinterpret_cast(&callstack), sizeof(callstack));
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 627b2e7..eb4e239 100644
+index d3e105f..93e2c4f 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
-@@ -912,6 +912,14 @@ optional_source(WIN32
+@@ -926,6 +926,14 @@ optional_source(WIN32
${CMAKE_SOURCE_DIR}/3rdparty/tinysvcmdns
)
@@ -171,7 +158,7 @@ index 627b2e7..eb4e239 100644
# Platform specific - X11
optional_source(HAVE_X11 SOURCES widgets/osd_x11.cpp)
-@@ -1379,7 +1387,7 @@ if (WIN32)
+@@ -1360,7 +1368,7 @@ if (WIN32)
)
endif (WIN32)
@@ -239,10 +226,10 @@ index 1acd08a..44ef7b3 100644
+#endif
}
diff --git a/src/core/utilities.cpp b/src/core/utilities.cpp
-index ddbdb53..d0b97a9 100644
+index 5541b3d..0142a21 100644
--- a/src/core/utilities.cpp
+++ b/src/core/utilities.cpp
-@@ -350,6 +350,9 @@ QString GetConfigPath(ConfigPath config) {
+@@ -355,6 +355,9 @@ QString GetConfigPath(ConfigPath config) {
#ifdef Q_OS_DARWIN
return mac::GetApplicationSupportPath() + "/" +
QCoreApplication::organizationName();
@@ -252,7 +239,7 @@ index ddbdb53..d0b97a9 100644
#else
return QString("%1/%2").arg(
QStandardPaths::writableLocation(QStandardPaths::ConfigLocation),
-@@ -361,7 +364,7 @@ QString GetConfigPath(ConfigPath config) {
+@@ -366,7 +369,7 @@ QString GetConfigPath(ConfigPath config) {
if (Application::kIsPortable) {
return GetConfigPath(Path_Root) + "/cache";
}
@@ -262,10 +249,10 @@ index ddbdb53..d0b97a9 100644
QStandardPaths::GenericCacheLocation),
QCoreApplication::organizationName());
diff --git a/src/library/librarysettingspage.cpp b/src/library/librarysettingspage.cpp
-index 91a8614..3ca9eee 100644
+index 43bb2df..3f3cdb4 100644
--- a/src/library/librarysettingspage.cpp
+++ b/src/library/librarysettingspage.cpp
-@@ -132,7 +132,7 @@ void LibrarySettingsPage::Load() {
+@@ -136,7 +136,7 @@ void LibrarySettingsPage::Load() {
s.beginGroup(LibraryWatcher::kSettingsGroup);
ui_->startup_scan->setChecked(s.value("startup_scan", true).toBool());
@@ -275,10 +262,10 @@ index 91a8614..3ca9eee 100644
QStringList filters = s.value("cover_art_patterns", QStringList() << "front"
<< "cover")
diff --git a/src/main.cpp b/src/main.cpp
-index ec1e1f0..05fc675 100644
+index 5f955b9..49b27ce 100644
--- a/src/main.cpp
+++ b/src/main.cpp
-@@ -462,5 +462,9 @@ int main(int argc, char* argv[]) {
+@@ -477,5 +477,9 @@ int main(int argc, char* argv[]) {
int ret = a.exec();
@@ -321,10 +308,10 @@ index 8508e02..5c51a65 100644
QIcon IconLoader::Load(const QString& name, const IconType& icontype) {
diff --git a/src/ui/mainwindow.cpp b/src/ui/mainwindow.cpp
-index 7f72f32..08c5a80 100644
+index 1528eb2..34bbac0 100644
--- a/src/ui/mainwindow.cpp
+++ b/src/ui/mainwindow.cpp
-@@ -268,13 +268,13 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
+@@ -269,13 +269,13 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
IconLoader::Load("folder-sound", IconLoader::Base),
tr("Library"));
ui_->tabs->addTab(file_view_,
@@ -341,7 +328,7 @@ index 7f72f32..08c5a80 100644
tr("Internet"));
ui_->tabs->addTab(
device_view_container_,
-@@ -389,8 +389,8 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
+@@ -392,8 +392,8 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
IconLoader::Load("document-save", IconLoader::Base));
ui_->action_full_library_scan->setIcon(
IconLoader::Load("view-refresh", IconLoader::Base));
@@ -352,42 +339,15 @@ index 7f72f32..08c5a80 100644
ui_->action_hypnotoad->setIcon(
IconLoader::Load("hypnotoad", IconLoader::Base));
ui_->action_kittens->setIcon(IconLoader::Load("kittens", IconLoader::Base));
-@@ -486,7 +486,7 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
- connect(ui_->action_view_stream_details, SIGNAL(triggered()),
- SLOT(DiscoverStreamDetails()));
+@@ -495,7 +495,7 @@ MainWindow::MainWindow(Application* app, SystemTrayIcon* tray_icon, OSD* osd,
+ connect(this, SIGNAL(NewDebugConsole(Console*)), app_,
+ SIGNAL(NewDebugConsole(Console*)));
- background_streams_->AddAction("Rain", ui_->action_rain);
+// background_streams_->AddAction("Rain", ui_->action_rain);
background_streams_->AddAction("Hypnotoad", ui_->action_hypnotoad);
background_streams_->AddAction("Make it so!", ui_->action_enterprise);
-diff --git a/src/ui/mainwindow.ui b/src/ui/mainwindow.ui
-index bef7b14..0faf4dc 100644
---- a/src/ui/mainwindow.ui
-+++ b/src/ui/mainwindow.ui
-@@ -532,7 +532,6 @@
-
- &Extras
-
--
-
-
-
-@@ -726,14 +725,6 @@
- Cover Manager
-
-
--
--
-- true
--
--
-- Rain
--
--
-
-
- true
diff --git a/src/ui/notificationssettingspage.cpp b/src/ui/notificationssettingspage.cpp
index 75733d3..5fca7e0 100644
--- a/src/ui/notificationssettingspage.cpp
@@ -444,5 +404,38 @@ index 5cdea66..064bce7 100644
show_on_volume_change_ = s.value("ShowOnVolumeChange", false).toBool();
show_art_ = s.value("ShowArt", true).toBool();
--
-2.28.0
+2.48.1
+
+
+From 33723ef16cb91d3083cb108e2c4dbbee916ec87d Mon Sep 17 00:00:00 2001
+From: Ken Mays
+Date: Fri, 2 May 2025 05:13:42 +0004
+Subject: Workaround for backtrace symbols on Haiku
+
+
+diff --git a/ext/libclementine-common/core/logging.cpp b/ext/libclementine-common/core/logging.cpp
+index fbe2693..fa5a915 100644
+--- a/ext/libclementine-common/core/logging.cpp
++++ b/ext/libclementine-common/core/logging.cpp
+@@ -324,18 +324,6 @@ QString DemangleSymbol(const QString& symbol) {
+
+ void DumpStackTrace() {
+ #ifdef Backtrace_FOUND
+- void* callstack[128];
+- int callstack_size =
+- backtrace(reinterpret_cast(&callstack), sizeof(callstack));
+- char** symbols =
+- backtrace_symbols(reinterpret_cast(&callstack), callstack_size);
+- // Start from 1 to skip ourself.
+- for (int i = 1; i < callstack_size; ++i) {
+- std::cerr << DemangleSymbol(QString::fromLatin1(symbols[i])).toStdString()
+- << std::endl;
+- }
+- free(symbols);
+-#else
+ qLog(Debug) << "FIXME: Implement printing stack traces on this platform";
+ #endif
+ }
+--
+2.48.1