From 2ca2b31da9ac1b7f234a12abded8e2cc26b60a50 Mon Sep 17 00:00:00 2001 From: Andrew Rabert Date: Mon, 5 Apr 2021 13:59:44 -0400 Subject: [PATCH] init --- .SRCINFO | 33 +++++++++++++++++++++ .gitignore | 8 ++++++ CMakeLists.txt.patch | 11 +++++++ PKGBUILD | 49 ++++++++++++++++++++++++++++++++ VersionConfiguration.cmake.patch | 18 ++++++++++++ main.cpp.patch | 20 +++++++++++++ src_CMakeLists.txt.patch | 43 ++++++++++++++++++++++++++++ 7 files changed, 182 insertions(+) create mode 100644 .SRCINFO create mode 100644 .gitignore create mode 100644 CMakeLists.txt.patch create mode 100644 PKGBUILD create mode 100644 VersionConfiguration.cmake.patch create mode 100644 main.cpp.patch create mode 100644 src_CMakeLists.txt.patch diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 0000000..ca4c2cf --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,33 @@ +pkgbase = jellyfin-media-player + pkgdesc = Next generation jellyfin Desktop Client + pkgver = 1.1.0 + pkgrel = 1 + url = https://github.com/iwalton3/jellyfin-media-player + arch = i686 + arch = x86_64 + license = GPL + makedepends = cmake + makedepends = git + depends = mpv + depends = libcec + depends = sdl2 + depends = p8-platform + depends = protobuf + depends = qt5-webengine + depends = qt5-x11extras + depends = qt5-quickcontrols + source = https://github.com/iwalton3/jellyfin-media-player/archive/refs/tags/v1.1.0.tar.gz + source = https://github.com/iwalton3/jellyfin-web-jmp/releases/download/v1.1.0/dist.zip + source = CMakeLists.txt.patch + source = VersionConfiguration.cmake.patch + source = main.cpp.patch + source = src_CMakeLists.txt.patch + sha256sums = 0b26d2c8cccb239bcf85138482f894c1ba6d0c0df8c44e4c38cd86d2fae6ee7c + sha256sums = d2f5e7b3fbe44307dafd99b5212cf11e0c01f780e27211cdf3acb9753d03f0bf + sha256sums = aca0a3ead028ca54c7ffd1eab719809a9bea3b23f5b9a0490c7f3054b47cb2a4 + sha256sums = b8d9c283b4574cf791b46625295cfae8709e96e0e243c80d31754be13066ebcd + sha256sums = 90e5f7966c7999b030dc705a9c2b272f2293884a200617f7587ff9d4edc57467 + sha256sums = 854dd8df54a0e2922e24d40fae6dc390c347f91a932311c239598382c9f83b3e + +pkgname = jellyfin-media-player + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0ef45ad --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +* +!.SRCINFO +!.gitignore +!CMakeLists.txt.patch +!PKGBUILD +!VersionConfiguration.cmake.patch +!main.cpp.patch +!src_CMakeLists.txt.patch diff --git a/CMakeLists.txt.patch b/CMakeLists.txt.patch new file mode 100644 index 0000000..e70e50e --- /dev/null +++ b/CMakeLists.txt.patch @@ -0,0 +1,11 @@ +--- a 21:49:41.000000000 -0400 ++++ b 2021-04-05 13:43:11.972965381 -0400 +@@ -52,8 +52,6 @@ + include(NameConfiguration) + include(PlayerConfiguration) + include(InputConfiguration) +-include(FindBreakpad) +-include(BreakpadSymbols) + include(ClangTidy) + + add_definitions(-DQS_LOG_LINE_NUMBERS -DQS_LOG_SEPARATE_THREAD) diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..9731520 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,49 @@ +# Maintainer: Andrew Rabert + +pkgname=jellyfin-media-player +pkgver=1.1.0 +pkgrel=1 +pkgdesc='Next generation jellyfin Desktop Client' +arch=('i686' 'x86_64') +license=('GPL') +url='https://github.com/iwalton3/jellyfin-media-player' +depends=('mpv' 'libcec' 'sdl2' 'p8-platform' 'protobuf' 'qt5-webengine' 'qt5-x11extras' 'qt5-quickcontrols') +makedepends=('cmake' 'git') +source=("https://github.com/iwalton3/jellyfin-media-player/archive/refs/tags/v${pkgver}.tar.gz" + "https://github.com/iwalton3/jellyfin-web-jmp/releases/download/v${pkgver}/dist.zip" + 'CMakeLists.txt.patch' + 'VersionConfiguration.cmake.patch' + 'main.cpp.patch' + 'src_CMakeLists.txt.patch') +sha256sums=('0b26d2c8cccb239bcf85138482f894c1ba6d0c0df8c44e4c38cd86d2fae6ee7c' + 'd2f5e7b3fbe44307dafd99b5212cf11e0c01f780e27211cdf3acb9753d03f0bf' + 'aca0a3ead028ca54c7ffd1eab719809a9bea3b23f5b9a0490c7f3054b47cb2a4' + 'b8d9c283b4574cf791b46625295cfae8709e96e0e243c80d31754be13066ebcd' + '90e5f7966c7999b030dc705a9c2b272f2293884a200617f7587ff9d4edc57467' + '854dd8df54a0e2922e24d40fae6dc390c347f91a932311c239598382c9f83b3e') + +prepare() { + cd "${srcdir}/jellyfin-media-player-${pkgver}" + + # disable breakpad crash reporter (now in master branch) + patch -u CMakeLists.txt -i ../CMakeLists.txt.patch + patch -u src/CMakeLists.txt -i ../src_CMakeLists.txt.patch + patch -u src/main.cpp -i ../main.cpp.patch + + # fix building without git repo + patch -u CMakeModules/VersionConfiguration.cmake -i ../VersionConfiguration.cmake.patch +} + +build() { + cd "${srcdir}/jellyfin-media-player-${pkgver}" + mkdir -p build + cd build + cp -r "${srcdir}/dist" . + cmake -DCMAKE_INSTALL_PREFIX='/usr/' -DCMAKE_BUILD_TYPE='Release' -DQTROOT=./qt -DCMAKE_SKIP_RPATH=1 .. + make +} + +package() { + cd "${srcdir}/jellyfin-media-player-${pkgver}/build" + DESTDIR="${pkgdir}" make install +} diff --git a/VersionConfiguration.cmake.patch b/VersionConfiguration.cmake.patch new file mode 100644 index 0000000..fd5ece3 --- /dev/null +++ b/VersionConfiguration.cmake.patch @@ -0,0 +1,18 @@ +--- a 21:49:41.000000000 -0400 ++++ b 2021-04-05 13:56:57.658766476 -0400 +@@ -2,15 +2,6 @@ + # include(WebClientVariables) + string(TIMESTAMP CURRENT_DATE "%Y-%m-%d") + +-# Get git revision version +-include(GetGitRevisionDescription) +-get_git_head_revision(REFSPEC FULL_GIT_REVISION) +-if(FULL_GIT_REVISION STREQUAL "GITDIR-NOTFOUND") +- set(GIT_REVISION "git") +-else(FULL_GIT_REVISION STREQUAL "GITDIR-NOTFOUND") +- string(SUBSTRING ${FULL_GIT_REVISION} 0 8 GIT_REVISION) +-endif(FULL_GIT_REVISION STREQUAL "GITDIR-NOTFOUND") +- + # Get the build number if available + if(DEFINED ENV{BUILD_NUMBER}) + set(VERSION_BUILD "$ENV{BUILD_NUMBER}") diff --git a/main.cpp.patch b/main.cpp.patch new file mode 100644 index 0000000..752209c --- /dev/null +++ b/main.cpp.patch @@ -0,0 +1,20 @@ +--- a 21:49:41.000000000 -0400 ++++ b 2021-04-05 13:49:14.963759430 -0400 +@@ -16,7 +16,6 @@ + #include "player/CodecsComponent.h" + #include "player/PlayerComponent.h" + #include "player/OpenGLDetect.h" +-#include "breakpad/CrashDumps.h" + #include "Version.h" + #include "settings/SettingsComponent.h" + #include "settings/SettingsSection.h" +@@ -164,9 +163,6 @@ + PFMoveToApplicationsFolderIfNecessary(); + #endif + +- // init breakpad. +- setupCrashDumper(); +- + UniqueApplication* uniqueApp = new UniqueApplication(); + if (!uniqueApp->ensureUnique()) + return EXIT_SUCCESS; diff --git a/src_CMakeLists.txt.patch b/src_CMakeLists.txt.patch new file mode 100644 index 0000000..9e45181 --- /dev/null +++ b/src_CMakeLists.txt.patch @@ -0,0 +1,43 @@ +--- a 21:49:41.000000000 -0400 ++++ b 2021-04-05 13:45:37.045106120 -0400 +@@ -14,17 +14,6 @@ + + add_definitions(-DPREFIX="${CMAKE_INSTALL_PREFIX}") + +-find_package(Breakpad) +- +-if(BREAKPAD_FOUND) +- include_directories(${BREAKPAD_INCLUDE_DIR}) +- set(BREAKPAD_LIBRARIES ${BREAKPAD_LIBRARY}) +- if(UNIX) +- # cmake issue: breakpad-client.pc adds this, but cmake discards it +- set(BREAKPAD_LIBRARIES ${BREAKPAD_LIBRARIES} -lpthread) +- endif() +-endif() +- + add_subdirectory(shared) + add_subdirectory(core) + add_subdirectory(display) +@@ -33,7 +22,6 @@ + add_subdirectory(ui) + add_subdirectory(input) + add_subdirectory(system) +-add_subdirectory(breakpad) + add_subdirectory(settings) + add_subdirectory(power) + +@@ -187,7 +175,6 @@ + ${EXTRA_LIBS} + ${X11_LIBRARIES} + ${X11_Xrandr_LIB} +- ${BREAKPAD_LIBRARIES} + ${ICU_LIBRARIES} + ${CMAKE_THREAD_LIBS_INIT} + ${RPI_LIBS} +@@ -200,6 +187,4 @@ + set(LIBPATH ${CMAKE_FIND_ROOT_PATH}) + set(SOURCE_ROOT ${CMAKE_SOURCE_DIR}) + +-dumpsyms(${MAIN_TARGET} ${CMAKE_BINARY_DIR}/${MAIN_TARGET}.symbols) +- + include(CompleteBundle)