diff --git a/x11-packages/cantata/build.sh b/x11-packages/cantata/build.sh new file mode 100644 index 000000000..85ff471f8 --- /dev/null +++ b/x11-packages/cantata/build.sh @@ -0,0 +1,9 @@ +TERMUX_PKG_HOMEPAGE=https://github.com/CDrummond/cantata +TERMUX_PKG_DESCRIPTION="Qt client for the music player daemon (MPD)" +TERMUX_PKG_LICENSE="GPL-3.0" +TERMUX_PKG_MAINTAINER="Yisus7u7 " +TERMUX_PKG_VERSION=2.5.0 +TERMUX_PKG_SRCURL=https://github.com/CDrummond/cantata/releases/download/v${TERMUX_PKG_VERSION}/cantata-${TERMUX_PKG_VERSION}.tar.bz2 +TERMUX_PKG_SHA256=eb7e00ab3f567afaa02ea2c86e2fe811a475afab93182b95922c6eb126821724 +TERMUX_PKG_DEPENDS="qt5-qtbase, qt5-qtmultimedia, qt5-qtsvg, qt5-qtxmlpatterns, zlib, taglib, ffmpeg, mpg123, avahi, libcddb, libmusicbrainz, mpd" +TERMUX_PKG_BUILD_DEPENDS="qt5-qtbase-cross-tools, qt5-qttools-cross-tools" diff --git a/x11-packages/cantata/no_pthread.patch b/x11-packages/cantata/no_pthread.patch new file mode 100644 index 000000000..3b4ef2f8d --- /dev/null +++ b/x11-packages/cantata/no_pthread.patch @@ -0,0 +1,26 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index b99e161..5c8d0a3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -554,7 +554,7 @@ if (UNIX AND NOT APPLE) + install(PROGRAMS ${CMAKE_BINARY_DIR}/cantata-remote DESTINATION ${SHARE_INSTALL_PREFIX}/${CMAKE_PROJECT_NAME}/scripts) + install(FILES cantata.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}) + endif () +- target_link_libraries(cantata -lpthread) ++ target_link_libraries(cantata) + endif () + + configure_file(config.h.cmake ${CMAKE_BINARY_DIR}/config.h) +diff --git a/replaygain/CMakeLists.txt b/replaygain/CMakeLists.txt +index ae456ea..864066c 100644 +--- a/replaygain/CMakeLists.txt ++++ b/replaygain/CMakeLists.txt +@@ -45,7 +45,7 @@ if (FFMPEG_FOUND OR MPG123_FOUND) + endif () + target_link_libraries(cantata-replaygain ${QTCORELIBS}) + if (UNIX AND NOT APPLE) +- target_link_libraries(cantata-replaygain -lpthread) ++ target_link_libraries(cantata-replaygain) + endif () + endif () + diff --git a/x11-packages/cantata/no_udisks2.patch b/x11-packages/cantata/no_udisks2.patch new file mode 100644 index 000000000..7fac59c94 --- /dev/null +++ b/x11-packages/cantata/no_udisks2.patch @@ -0,0 +1,17 @@ +diff --git a/3rdparty/solid-lite/managerbase.cpp b/3rdparty/solid-lite/managerbase.cpp +index 001af38..5161fb0 100644 +--- a/3rdparty/solid-lite/managerbase.cpp ++++ b/3rdparty/solid-lite/managerbase.cpp +@@ -87,11 +87,7 @@ void Solid::ManagerBasePrivate::loadBackends() + # if defined(UDEV_FOUND) + m_backends << new Solid::Backends::UDev::UDevManager(nullptr); + # endif +-# if defined(WITH_SOLID_UDISKS2) +- m_backends << new Solid::Backends::UDisks2::Manager(nullptr) +-# else +- m_backends << new Solid::Backends::UDisks::UDisksManager(0) +-# endif ++ + /*<< new Solid::Backends::UPower::UPowerManager(0) + << new Solid::Backends::Fstab::FstabManager(0)*/; + } diff --git a/x11-packages/cantata/use_termux_path.patch b/x11-packages/cantata/use_termux_path.patch new file mode 100644 index 000000000..a5cde1804 --- /dev/null +++ b/x11-packages/cantata/use_termux_path.patch @@ -0,0 +1,109 @@ +diff --git a/3rdparty/solid-lite/backends/hal/halfstabhandling.cpp b/3rdparty/solid-lite/backends/hal/halfstabhandling.cpp +index 535343f..1ae444d 100644 +--- a/3rdparty/solid-lite/backends/hal/halfstabhandling.cpp ++++ b/3rdparty/solid-lite/backends/hal/halfstabhandling.cpp +@@ -36,9 +36,9 @@ + #endif + + #ifdef Q_OS_SOLARIS +-#define FSTAB "/etc/vfstab" ++#define FSTAB "@TERMUX_PREFIX@/etc/vfstab" + #else +-#define FSTAB "/etc/fstab" ++#define FSTAB "@TERMUX_PREFIX@/etc/fstab" + #endif + + typedef QMultiHash QStringMultiHash; +@@ -167,7 +167,7 @@ QProcess *Solid::Backends::Hal::FstabHandling::callSystemCommand(const QString & + QObject *obj, const char *slot) + { + QStringList env = QProcess::systemEnvironment(); +- env.replaceInStrings(QRegExp("^PATH=(.*)", Qt::CaseInsensitive), "PATH=/sbin:/bin:/usr/sbin/:/usr/bin"); ++ env.replaceInStrings(QRegExp("^PATH=(.*)", Qt::CaseInsensitive), "PATH=@TERMUX_PREFIX@/bin:@TERMUX_PREFIX@/local/bin"); + + QProcess *process = new QProcess(obj); + +diff --git a/3rdparty/solid-lite/xdgbasedirs.cpp b/3rdparty/solid-lite/xdgbasedirs.cpp +index d6ba5a0..3bae748 100644 +--- a/3rdparty/solid-lite/xdgbasedirs.cpp ++++ b/3rdparty/solid-lite/xdgbasedirs.cpp +@@ -70,12 +70,12 @@ QStringList Solid::XdgBaseDirs::systemPathList( const char *resource ) + { + if ( qstrncmp( "data", resource, 4 ) == 0 ) { + if ( instance()->mDataDirs.isEmpty() ) { +- instance()->mDataDirs = instance()->systemPathList( "XDG_DATA_DIRS", "/usr/local/share:/usr/share" ); ++ instance()->mDataDirs = instance()->systemPathList( "XDG_DATA_DIRS", "@TERMUX_PREFIX@/local/share:@TERMUX_PREFIX@/share" ); + } + return instance()->mDataDirs; + } else if ( qstrncmp( "config", resource, 6 ) == 0 ) { + if ( instance()->mConfigDirs.isEmpty() ) { +- instance()->mConfigDirs = instance()->systemPathList( "XDG_CONFIG_DIRS", "/etc/xdg" ); ++ instance()->mConfigDirs = instance()->systemPathList( "XDG_CONFIG_DIRS", "@TERMUX_PREFIX@/etc/xdg" ); + } + return instance()->mConfigDirs; + } +diff --git a/gui/settings.cpp b/gui/settings.cpp +index 5c77961..82906ee 100644 +--- a/gui/settings.cpp ++++ b/gui/settings.cpp +@@ -39,7 +39,7 @@ struct MpdDefaults + { + MpdDefaults() + : host("localhost") +- , dir("/var/lib/mpd/music/") ++ , dir("@TERMUX_PREFIX@/var/lib/mpd/music/") + , port(6600) { + } + +@@ -58,7 +58,7 @@ struct MpdDefaults + }; + + void read() { +- QFile f("/etc/mpd.conf"); ++ QFile f("@TERMUX_PREFIX@/etc/mpd.conf"); + + if (f.open(QIODevice::ReadOnly|QIODevice::Text)) { + int details=0; +diff --git a/playlists/cantata-dynamic b/playlists/cantata-dynamic +index 110f65a..800bb46 100755 +--- a/playlists/cantata-dynamic ++++ b/playlists/cantata-dynamic +@@ -1071,8 +1071,8 @@ sub stop() { + # ##################################### + # SERVER MODE + # ##################################### +-$filesDir="/var/lib/mpd/dynamic"; +-$pidFile="/var/run/cantata-dynamic/pid"; ++$filesDir="@TERMUX_PREFIX@/var/lib/mpd/dynamic"; ++$pidFile="@TERMUX_PREFIX@/var/run/cantata-dynamic/pid"; + + sub encodeString() { + my $str=shift; +@@ -1098,10 +1098,10 @@ sub decodeString() { + sub loadConfig() { + my $config=shift; + if (!$config || ($config=~ m/^(default)/)) { +- $config="/etc/cantata-dynamic.conf"; ++ $config="@TERMUX_PREFIX@/etc/cantata-dynamic.conf"; + } + open(my $fileHandle, $config) || die "ERROR: Failed to load config $config - $!\n"; +- $activeFile="/var/run/cantata-dynamic/rules"; ++ $activeFile="@TERMUX_PREFIX@/var/run/cantata-dynamic/rules"; + if (tell($fileHandle) != -1) { + my @lines = <$fileHandle>; # Read into an array... + close($fileHandle); +diff --git a/playlists/cantata-dynamic.service b/playlists/cantata-dynamic.service +index 53ebc41..1a91512 100755 +--- a/playlists/cantata-dynamic.service ++++ b/playlists/cantata-dynamic.service +@@ -7,8 +7,8 @@ After=mpd.service + User=mpd + Group=audio + Type=forking +-ExecStart=/usr/share/cantata/scripts/cantata-dynamic server /etc/cantata-dynamic.conf +-ExecStop=/usr/share/cantata/scripts/cantata-dynamic stopserver /etc/cantata-dynamic.conf ++ExecStart=@TERMUX_PREFIX@/share/cantata/scripts/cantata-dynamic server @TERMUX_PREFIX@/etc/cantata-dynamic.conf ++ExecStop=@TERMUX_PREFIX@/share/cantata/scripts/cantata-dynamic stopserver @TERMUX_PREFIX@/etc/cantata-dynamic.conf + RuntimeDirectory=cantata-dynamic + PIDFile=/run/cantata-dynamic/pid +