jellyfin-media-player: working qt6 build
haven't checked cross compilation
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index bcebe43..a15b0ef 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -107,8 +107,8 @@ endif()
|
||||||
|
set(RESOURCE_ROOT .)
|
||||||
|
if(APPLE)
|
||||||
|
set(RESOURCE_ROOT Resources)
|
||||||
|
- add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DEST ${RESOURCE_ROOT}/web-client/desktop)
|
||||||
|
- add_resources(TARGET ${MAIN_TARGET} SOURCES ${CMAKE_SOURCE_DIR}/native/ DEST ${RESOURCE_ROOT}/web-client/extension)
|
||||||
|
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${RESOURCE_ROOT}/web-client/desktop)
|
||||||
|
+ install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${RESOURCE_ROOT}/web-client/extension)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT APPLE)
|
||||||
|
@@ -121,7 +121,7 @@ if(NOT APPLE)
|
||||||
|
install(FILES ${loc}/qtwebengine_devtools_resources.pak DESTINATION resources)
|
||||||
|
endif()
|
||||||
|
endforeach()
|
||||||
|
- install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../dist/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
|
||||||
|
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/../../jellyfin-web/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/desktop)
|
||||||
|
install(DIRECTORY ${CMAKE_SOURCE_DIR}/native/ DESTINATION ${INSTALL_RESOURCE_DIR}/web-client/extension)
|
||||||
|
endif()
|
||||||
|
|
@@ -0,0 +1,13 @@
|
|||||||
|
diff --git a/src/input/InputComponent.cpp b/src/input/InputComponent.cpp
|
||||||
|
index 0f5f129..94596b6 100644
|
||||||
|
--- a/src/input/InputComponent.cpp
|
||||||
|
+++ b/src/input/InputComponent.cpp
|
||||||
|
@@ -132,7 +132,7 @@ void InputComponent::handleAction(const QString& action)
|
||||||
|
else
|
||||||
|
{
|
||||||
|
qDebug() << "Invoking slot" << qPrintable(recvSlot->m_slot.data());
|
||||||
|
- QGenericArgument arg0 = QGenericArgument();
|
||||||
|
+ QMetaMethodArgument arg0;
|
||||||
|
|
||||||
|
if (recvSlot->m_hasArguments)
|
||||||
|
arg0 = Q_ARG(const QString&, hostArguments);
|
@@ -1,4 +1,5 @@
|
|||||||
{ lib
|
{ lib
|
||||||
|
, cmake
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
, jellyfin-media-player
|
, jellyfin-media-player
|
||||||
, libGL
|
, libGL
|
||||||
@@ -6,11 +7,14 @@
|
|||||||
, libXrandr
|
, libXrandr
|
||||||
, libvdpau
|
, libvdpau
|
||||||
, mpv
|
, mpv
|
||||||
|
, ninja
|
||||||
|
, pkg-config
|
||||||
|
, python3
|
||||||
, qt6
|
, qt6
|
||||||
, SDL2
|
, SDL2
|
||||||
, stdenv
|
, stdenv
|
||||||
}:
|
}:
|
||||||
jellyfin-media-player.overrideAttrs (upstream: {
|
(jellyfin-media-player.overrideAttrs (upstream: {
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "jellyfin";
|
owner = "jellyfin";
|
||||||
repo = "jellyfin-media-player";
|
repo = "jellyfin-media-player";
|
||||||
@@ -18,9 +22,12 @@ jellyfin-media-player.overrideAttrs (upstream: {
|
|||||||
hash = "sha256-saR/P2daqjF0G8N7BX6Rtsb1dWGjdf5MPDx1lhoioEw=";
|
hash = "sha256-saR/P2daqjF0G8N7BX6Rtsb1dWGjdf5MPDx1lhoioEw=";
|
||||||
};
|
};
|
||||||
# nixos ships two patches:
|
# nixos ships two patches:
|
||||||
# - the first fixes "web paths" and has *mostly* been upstreamed (so skip)
|
# - the first fixes "web paths" and has *mostly* been upstreamed (so skip and manually tweak a bit)
|
||||||
# - the second disables auto-update notifications (keep)
|
# - the second disables auto-update notifications (keep)
|
||||||
patches = builtins.tail upstream.patches;
|
patches = (builtins.tail upstream.patches) ++ [
|
||||||
|
./0001-fix-web-path.patch
|
||||||
|
./0002-qt6-build-fixes.patch
|
||||||
|
];
|
||||||
buildInputs = [
|
buildInputs = [
|
||||||
SDL2
|
SDL2
|
||||||
libGL
|
libGL
|
||||||
@@ -36,7 +43,24 @@ jellyfin-media-player.overrideAttrs (upstream: {
|
|||||||
qt6.qtwayland
|
qt6.qtwayland
|
||||||
];
|
];
|
||||||
|
|
||||||
|
nativeBuildInputs = [
|
||||||
|
cmake
|
||||||
|
ninja
|
||||||
|
pkg-config
|
||||||
|
python3
|
||||||
|
|
||||||
|
# new packages which weren't needed before
|
||||||
|
qt6.wrapQtAppsHook # replaces the implicit qt5 version
|
||||||
|
qt6.qt5compat
|
||||||
|
];
|
||||||
|
|
||||||
|
cmakeFlags = [
|
||||||
|
"-DCMAKE_BUILD_TYPE=Release"
|
||||||
|
"-DQTROOT=${qt6.qtbase}"
|
||||||
|
"-GNinja"
|
||||||
|
];
|
||||||
|
|
||||||
meta = upstream.meta // {
|
meta = upstream.meta // {
|
||||||
platforms = upstream.meta.platforms ++ [ "aarch64-linux" ];
|
platforms = upstream.meta.platforms ++ [ "aarch64-linux" ];
|
||||||
};
|
};
|
||||||
})
|
}))
|
||||||
|
Reference in New Issue
Block a user