Commit Graph
2117 Commits
Author SHA1 Message Date
Niels van Velzen 4e1010b90f Merge pull request #1230 from jellyfin/nvv-pr-template
Add pull request template
2026-08-14 21:50:07 +02:00
Niels van Velzen 5fcec2c5cc Add pull request template 2026-08-14 17:53:15 +02:00
Niels van Velzen 3d759cb4d0 Merge pull request #1226 from andersonvom/bundle-sdl3
fix(macos): bundle SDL3 for sdl2-compat at install time
2026-08-13 07:25:05 +02:00
Anderson Mesquita f3c6af0b7b fix(macos): bundle SDL3 for sdl2-compat at install time
Homebrew replaced its `sdl2` formula with `sdl2-compat`, a compatibility
layer that provides the SDL2 API by `dlopen`-ing the real SDL3 library
at runtime. The macOS CI build (`build-macos.yml`) pulls this via `brew
install mpv`, so the app now links `libSDL2-2.0.0.dylib` which is
actually `sdl2-compat`, and every nightly ships it in
`Contents/Frameworks`.

SDL3 is not a linker dependency, so it never shows up in `otool -L`
output and the `CompleteBundleMac` fixup loop never copies it into the
app bundle. At runtime `sdl2-compat` looks for `libSDL3.dylib` relative
to its own loader path, cannot find it, prints "Failed loading SDL3
library." and aborts during dyld initialization, since the library is
missing. This regression appeared once Homebrew's SDL2 became the
`sdl2-compat` shim, so older nightly builds (built against genuine SDL2)
are unaffected.

This detects `sdl2-compat` inside the bundle (it is the only
`libSDL2-2.0.0.dylib` containing the `libSDL3.dylib` loader string) and
explicitly copies libSDL3 from the Homebrew prefix into
`Contents/Frameworks/libSDL3.dylib`, using the same `install-id`
convention as the other bundled dylibs so `codesign` and the existing
fixup steps keep working. If SDL3 cannot be found at install time a
warning is printed instead of failing silently.

Fixes #1225
2026-08-12 22:38:42 -04:00
Niels van Velzen 9fad78e485 Merge pull request #1224 from npinto97/ci/fix-windows-msvc-path
ci: fix Windows MSVC path resolution and Qt configuration
2026-08-11 20:26:52 +02:00
npinto97 ab723427c1 feat(windows): add Windows build pipeline and Qt configuration support 2026-08-11 01:04:11 +02:00
npinto97 cc39a53c42 ci(windows): dynamically resolve MSVC path using vswhere 2026-08-11 00:52:06 +02:00
Niels van Velzen a8bab929c8 Merge pull request #1219 from rodis120/old-debug-info
Bring back old debug info
2026-08-08 19:38:14 +02:00
Rogal eb5e07edc8 Bring back old debug info 2026-08-08 18:02:08 +02:00
Niels van Velzen 069e73f122 Merge pull request #1218 from jellyfin/revert-1179-andrewrabert-patch-1
Revert "Update bug_report.md"
2026-08-08 12:09:29 +02:00
Niels van Velzen b57f12b344 Revert "Update bug_report.md (#1179)"
This reverts commit ec351bacae.
2026-08-08 09:24:33 +02:00
Niels van Velzen 0bc3186fb4 Merge pull request #1216 from LucBennett/feat/linux-dev-scripts
Add Debian/Ubuntu build instructions and scripts
2026-08-08 09:24:08 +02:00
LucBennett 0af9b429aa Add debian/ubuntu build instructions and scripts 2026-08-07 17:32:04 -07:00
Niels van Velzen ec73ee4162 Merge pull request #1207 from jellyfin/dependabot/github_actions/master/actions/checkout-7
Bump actions/checkout from 6 to 7
2026-08-07 19:37:45 +02:00
Niels van Velzen a06a8ddd2e Merge pull request #1213 from LucBennett/fix/labs-platform-dep
Add missing runtime dependency: qml6-module-qt-labs-platform
2026-08-07 19:37:33 +02:00
Niels van Velzen 06f4957399 Merge pull request #1210 from n-peugnet/fix-mpvqt1.2.0
Fix build with mpvqt 1.2.0
2026-08-07 19:37:20 +02:00
LucBennett 5eeba6ee2c Add missing runtime dependency: qml6-module-qt-labs-platform 2026-08-03 20:33:49 -07:00
Nicolas Peugnet 0d14934839 Fix build with mpvqt 1.2.0
Since [b3dbc4b], command() takes a QStringList instead of a
QVariantList. Replace the usage of QVariantList with QStringList for
each call of command(), and do not use a QVariantMap to build the
extraArgs, instead, we now need to build the option list as a string
separated by commas.

[b3dbc4b]: https://github.com/KDE/mpvqt/commit/b3dbc4b1f51121da81865ca051eaa8f8a63e3f15
2026-08-01 17:26:56 +02:00
Niels van Velzen 400f062c5c Merge pull request #1208 from jellyfin/nvv-readme
Remove obsolete deprecation warning from README
2026-07-29 18:14:19 +02:00
Niels van Velzen f980475a88 Remove obsolete deprecation warning from README 2026-07-29 18:11:57 +02:00
dependabot[bot] b860e140df Bump actions/checkout from 6 to 7
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-29 16:11:45 +00:00
Andrew Rabert 105fec6003 Deprecation Notice 2026-03-27 22:13:53 -04:00
Andrew Rabert 75c44fa291 Update README.md (#1203) 2026-03-17 20:34:24 -04:00
Eric Gregory f8c6524bab DisplayManager tests (#1192) 2026-03-15 22:46:15 -04:00
Eric Gregory 12ab4c8753 Add tests for settings classes (#1188) 2026-03-15 22:45:37 -04:00
Ditin2 7a251c5fff Use delayed variable expansion in setup.bat (#1168)
* Rename variable 7ZIP to SEVENZIP

Currently this script fails, as %7ZIP% is interpreted as "ZIP", because %7 is treated as the 7th positional argument in bash scripts. Alternatively you could use !7ZIP! as this uses the already enabled DelayedExpansion.

* Update setup.bat to use delayed variable expansion
2026-03-01 20:10:07 -05:00
Eric Gregory 134d43352b Add test runner scripts (#1171) 2026-03-01 15:38:11 -05:00
Eric Gregory b582091e9b Add unit tests for settings (#1169) 2026-03-01 15:37:27 -05:00
Eric Gregory f057bca04a Fix SystemComponent unit tests (#1170)
Turns SystemComponent::extractBaseUrl() into a static method so that the unit tests pass when run locally.
2026-03-01 15:36:50 -05:00
Eric Gregory 56e8916285 Minor code cleanup (#1180)
Removes unused #includes and extra #defines
2026-03-01 15:36:29 -05:00
dependabot[bot] 15604c7cfe Bump actions/upload-artifact from 4 to 7 (#1184)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-01 15:36:00 -05:00
dependabot[bot] ded84f8d96 Bump actions/download-artifact from 4 to 8 (#1185)
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v4...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-01 15:35:46 -05:00
Andrew Rabert ec351bacae Update bug_report.md (#1179) 2026-02-28 18:16:59 -05:00
Andrew Rabert 0ced876bec Update README.md (#1177) 2026-02-28 16:31:27 -05:00
Andrew Rabert ece1c034d5 Expose mpv buffered ranges to the web player (#1166)
Observe demuxer-cache-state from mpv, extract seekable-ranges, and emit
them as a QVariantList signal. JavaScript connects to the signal and
stores the ranges for getBufferedRanges().
2026-02-26 21:38:45 -05:00
Eric Gregory 75d19da3a0 Add unit tests for logging (#1163)
Checks different types of logs, API key removal from logged strings
2026-02-26 20:46:44 -05:00
Eric Gregory 351e48013c Add code coverage as PR comment (#1162)
* Add code coverage as PR comment

* Workaround for test coverage permission issue
2026-02-26 20:39:26 -05:00
Fil b6c96133c6 Fall back to the first audio track when DefaultAudioStreamIndex is undefined (#1165)
Live TV omits audioStreamIndex causing DefaultAudioStreamIndex to be undefined,
which previously mapped to -1 and disabled audio in the MPV backend. Fall back
to the first embedded audio track so Live TV plays with audio.
2026-02-26 20:36:23 -05:00
Eric Gregory 95fb02916c Update dev README with QML logging instructions (#1161)
Added instructions for enabling QML logging in the README.
2026-02-25 11:57:42 -05:00
Eric Gregory 2bc0c4fe8c Close to system tray option on Windows (#1159)
Displays a system tray icon when enabled. Closing the window (clicking the X or Alt+F4) hides the window.

The window can be restored by clicking the icon, or via its context menu. The application can be quit via the context menu or Ctrl+Q.

Default: Disabled

Closes #470
2026-02-24 21:07:47 -05:00
Eric Gregory 00c44bc74d Simplify configuration for Qt Creator builds (#1154)
* Simplify building with Qt Creator

* Auto-generate preseets

* Use template for CMakePresets
2026-02-24 21:07:22 -05:00
Andrew Rabert 676758b608 Merge pull request #1152 from MrEricSir/update_windows_mpv_version
Update version of MPV on Windows
2026-02-22 21:59:11 -05:00
MrEricSir 3147541c2d Update version of MPV on Windows 2026-02-22 18:43:32 -08:00
Andrew Rabert 0362680f96 Merge pull request #1151 from jellyfin/positioner-fix
AppImage: Fix xhttps://github.com/jellyfin/jellyfin-desktop/issuesdg_positioner.set_size(0,0) crash ubuntu 24.04
2026-02-22 14:08:44 -05:00
Andrew Rabert a97fb04ce8 AppImage: Fix xdg_positioner.set_size(0,0) crash ubuntu 24.04 2026-02-22 13:58:54 -05:00
Andrew Rabert 567c447726 Merge pull request #1150 from jellyfin/appimage-ubuntu
Fix AppImage crashes on Ubuntu and other non-Arch distros
2026-02-21 17:33:35 -05:00
Andrew Rabert 6ea2a4395a Fix AppImage crashes on Ubuntu and other non-Arch distros
Three fixes for cross-distro compatibility:

- Keep libvdpau.so in the bundle. It's a dispatcher library, not a
  GPU driver. The backend drivers in /usr/lib/vdpau/ are still excluded.
  Without the dispatcher, the AppImage fails to start on distros where
  libvdpau isn't installed by default (e.g. Ubuntu 24.04).

- Replace the QtWebEngineProcess bash wrapper with a statically-linked
  C binary. The bash wrapper was crashing on Ubuntu because the host's
  /bin/bash was loaded by the host's dynamic linker, which then picked
  up the bundled Arch glibc via LD_LIBRARY_PATH — an ABI mismatch that
  segfaults. A static binary has no shared library dependencies, so
  LD_LIBRARY_PATH is irrelevant to it.

- Improve APPDIR derivation in the wrapper. Instead of relying solely
  on the APPDIR environment variable (which may not be inherited by
  subprocesses), derive it from the binary's own path via
  /proc/self/exe.
2026-02-21 17:31:28 -05:00
Andrew Rabert 451417da63 Merge pull request #1149 from jellyfin/readme
Add development build download links to README
2026-02-21 00:29:14 -05:00
Andrew Rabert 9469904309 Add development build download links to README 2026-02-21 00:28:43 -05:00
Andrew Rabert a62ccd82ee Merge pull request #1148 from jellyfin/appimage
Appimage
2026-02-21 00:19:11 -05:00