Package Details: harmony-music-git r581.0754ede-2

Git Clone URL: https://aur.archlinux.org/harmony-music-git.git (read-only, click to copy)
Package Base: harmony-music-git
Description: A cross platform App for streaming Music
Upstream URL: https://github.com/anandnet/Harmony-Music
Licenses: GPL
Conflicts: harmony-music
Provides: harmony-music
Submitter: dann-merlin
Maintainer: dann-merlin
Last Packager: dann-merlin
Votes: 0
Popularity: 0.000000
First Submitted: 2024-03-06 19:02 (UTC)
Last Updated: 2024-03-08 12:45 (UTC)

Latest Comments

je-vv commented on 2025-04-28 23:35 (UTC)

Work around, use this patch:

--- Harmony-Music/linux/CMakeLists.txt  2025-04-22 21:35:10.166756909 -0600
+++ Harmony-Music.new/linux/CMakeLists.txt      2025-04-28 17:02:38.037094493 -0600
@@ -42,6 +42,8 @@
 function(APPLY_STANDARD_SETTINGS TARGET)
   target_compile_features(${TARGET} PUBLIC cxx_std_14)
   target_compile_options(${TARGET} PRIVATE -Wall -Werror)
+  # FIXME: workaround for tray_manager deprecation issue:
+  target_compile_options(${TARGET} PRIVATE -Wno-error=deprecated-declarations) # Allow deprecated warnings
   target_compile_options(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:-O3>")
   target_compile_definitions(${TARGET} PRIVATE "$<$<NOT:$<CONFIG:Debug>>:NDEBUG>")
 endfunction()

I called it deprecated_tray_indicator.patch and use it like this:

--- i/PKGBUILD
+++ w/PKGBUILD
@@ -24,8 +24,9 @@ conflicts=("${pkgname%-git}")
 source=(
                'git+https://github.com/anandnet/Harmony-Music.git'
                'git+https://github.com/flutter/flutter.git'
-               'harmonymusic')
-sha256sums=('SKIP' 'SKIP' 'c3f34067478902a07fa334e3eac2e719d1f26b292318d1a8f5a40e63884c0402')
+               'harmonymusic'
+               'deprecated_tray_indicator.patch')
+sha256sums=('SKIP' 'SKIP' 'c3f34067478902a07fa334e3eac2e719d1f26b292318d1a8f5a40e63884c0402' 'SKIP')

 pkgver() {
        cd "${srcdir}/Harmony-Music"
@@ -38,6 +39,8 @@ prepare() {
        git submodule init
        git config submodule.libs/flutter.url "${srcdir}/flutter"
        git -c protocol.file.allow=always submodule update
+
+       patch -p1 < ../deprecated_tray_indicator.patch
 }

 build() {

@dann-merlin, this should work around the issue, now not sure if it should be brought up upstream as usually upsteam developers providing packages for fluthub or similar disregard when people uses packages from somewhere else...

je-vv commented on 2025-04-23 09:36 (UTC) (edited on 2025-04-23 10:02 (UTC) by je-vv)

Failed to build:

< vm_service 14.2.5 (was 14.3.1) (15.0.0 available)
  web 1.1.0 (1.1.1 available)
  web_socket_channel 2.4.0 (3.0.3 available)
  win32 5.10.1 (5.12.0 available)
Changed 19 dependencies!
80 packages have newer versions incompatible with dependency constraints.
Try `flutter pub outdated` for more information.

<my_path>/harmony-music-git/src/Harmony-Music/build/linux/x64/release/mimalloc/mimalloc-2.1.2/test/test-api.c:73:15: warning: argument 1 value ‘9223372036854775808’ exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
<my_path>/harmony-music-git/src/Harmony-Music/linux/flutter/ephemeral/.plugin_symlinks/tray_manager/linux/tray_manager_plugin.cc:118:17: error: 'app_indicator_new' is deprecated [-Werror,-Wdeprecated-declarations]
Building Linux application...
Build process failed
==> ERROR: A failure occurred in build().
    Aborting...

It seems app_indicator_new should be whether ignored (unsafe) or replaced/removed depending on the expected and current behavior. Not sure which option though.

@dann-merlin?

je-vv commented on 2025-01-26 08:42 (UTC) (edited on 2025-04-23 10:02 (UTC) by je-vv)

Could you consider having a .desktop file, like:

[Desktop Entry]
Name=Harmony-Music
GenericName=YouTube Music Player
Comment=An open source desktop YouTube Music player
Exec=harmonymusic-no-proxy.sh %U
Terminal=false
Type=Application
Icon=youtube-music-desktop-app
MimeType=x-scheme-handler/harmonymusic;
Categories=Network;

I'm bad at those .desktop files, I always reuse prior ones when creating new ones, so it's just like a sample, not like it's a correct one, :(

@dann-merlin?