new package: cantata media player (#661)

This commit is contained in:
Yisus7u7 2022-03-23 06:03:55 -05:00 committed by Yaksh Bariya
parent 200632f289
commit ae334ac72f
No known key found for this signature in database
GPG Key ID: F7486BA7D3D27581
4 changed files with 161 additions and 0 deletions

View File

@ -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 <dev.yisus@hotmail.com>"
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"

View File

@ -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 ()

View File

@ -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)*/;
}

View File

@ -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<QString, QString> 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