Jellyfin Desktop Client
Go to file
Vincent Lang 8f19b06385 Separate saving the settings config file
Instead of having a single save() method with a bool parameter, split it
into 2 separate functions. This doesn't really increase code
duplication, as the code was already pretty much duplicated, and makes
it clearer what is happening on the caller site.

Add a saveSection() function, which decides which config file should be
written depending on which file the section belongs to.
2015-10-20 11:31:31 +02:00
bundle Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
CMakeModules Automatic update of web-client 2015-10-19 13:02:14 +02:00
external Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
qt-patches Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
resources Add a hidden setting for disabling HDMI auto power on on RPI 2015-10-20 00:28:31 +02:00
scripts Bump deps 2015-10-20 00:59:01 +02:00
src Separate saving the settings config file 2015-10-20 11:31:31 +02:00
vagrant Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
.clang-format Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
.gitignore Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
.gitmodules Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
BuildQT5-windows.md Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
CMakeLists.txt Initial public commit of Plex Media Player 2015-10-13 11:05:27 +02:00
LICENSE License under GPLv2 2015-10-13 11:06:01 +02:00
README.md README: formatting improvements 2015-10-13 14:11:54 +02:00

Building

You need:

  • Qt 5.6 alpha
  • cmake 3.0 or newer
  • ninja is recommended for building

Special Qt requirements:

  • On Windows, you must apply qt-patches/0003-Always-enable-viewport-stuff.patch for correct window scaling. The patches in qt-patches/qt-5.6-alpha/ fix some stability issues.

  • On OSX, you should apply qt-patches/0002-qtbase-Don-t-show-the-menu-bar-at-all-in-lion-style-fullscr.patch to improve the user experience in fullscreen.

  • You can try to use Qt 5.5, but then you also need to apply the following patches:

    • qt-patches/0001-qtwebengine-Add-a-backgroundColor-property.patch
    • qt-patches/0004-qtwebengine-transparency-window-creation.patch

    Without them, video playback will not work.

Get dependencies:

  • scripts/fetch-binaries.py -p darwin-x86_64

If you're happy just building from the command line then run CMake for the ninja build tool:

  • mkdir build ; cd build
  • cmake -GNinja -DCMAKE_BUILD_TYPE=Debug -DQTROOT=/path/to/qt -DCMAKE_INSTALL_PREFIX=output ..

Build (ninja):

  • ninja

Make a distributable package:

  • ninja install (be patient, it's slow)

Or if you prefer working in Xcode, run CMake for the xcode build):

  • mkdir build ; cd build
  • cmake -GXcode -DQTROOT=/path/to/qt ..

License

Plex Media Player is licensed under GPL v2. See the LICENSE file. Licenses of dependencies are summarized under resources/misc/licenses.txt. This file can also be printed at runtime when using the --licenses option.