Commit Graph
2071 Commits
Author SHA1 Message Date
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
Andrew Rabert 93ff9f1deb Build macOS, Windows, and AppImage on pushes to master 2026-02-21 00:14:53 -05:00
Andrew Rabert da88a9a9bf Add AppImage build to GitHub Actions
New build-appimage.yml workflow that builds the AppImage in Docker and
uploads it as an artifact. Wired into the main build.yml orchestrator
alongside the existing platform builds.
2026-02-21 00:02:07 -05:00
Andrew Rabert bcd2326971 Add AppImage build support
Docker-based build on Arch Linux that ships the full library stack
(including glibc) for cross-distro compatibility. Uses the bundled
ld-linux as the interpreter to bypass host glibc version requirements.

GPU/graphics libraries are excluded from the bundle and loaded from
the host system to match the kernel GPU driver.
2026-02-21 00:00:13 -05:00
Andrew Rabert d0d140b762 Merge pull request #1139 from Drumba08/master
fix: segfault when skipping songs rapidly
2026-02-20 22:32:01 -05:00
Andrew Rabert ecf1dbd2f7 Merge pull request #1124 from nvask/fix-mouse-back-forward-double-action
Fix mouse back/forward buttons running action twice (#1115)
2026-02-20 22:11:43 -05:00
Andrew Rabert 378fc7f93f Merge pull request #1128 from jellyfin/dependabot/github_actions/master/appleboy/ssh-action-1.2.5
Bump appleboy/ssh-action from 1.2.4 to 1.2.5
2026-02-20 22:10:25 -05:00
Andrew Rabert edbdfaf64c Merge pull request #1137 from Raywonder/fix/windows-setup-mpv-paths-1103
windows: fix setup.bat mpv extraction path handling
2026-02-20 22:09:38 -05:00
Drumba08 bf19302f89 fix: segfault when skipping songs rapidly
https://github.com/jellyfin/jellyfin-desktop/issues/1138
2026-02-13 12:10:37 +01:00
Raywonder 7dad4e8881 windows: harden setup.bat mpv extraction and tool fallbacks 2026-02-11 23:06:15 -05:00
Nova 21875fe178 Block MouseBottonPress additionally to prevent the long press behaviour 2026-02-04 09:29:51 +02:00
dependabot[bot] 2585317fba Bump appleboy/ssh-action from 1.2.4 to 1.2.5
Bumps [appleboy/ssh-action](https://github.com/appleboy/ssh-action) from 1.2.4 to 1.2.5.
- [Release notes](https://github.com/appleboy/ssh-action/releases)
- [Commits](https://github.com/appleboy/ssh-action/compare/823bd89e131d8d508129f9443cad5855e9ba96f0...0ff4204d59e8e51228ff73bce53f80d53301dee2)

---
updated-dependencies:
- dependency-name: appleboy/ssh-action
  dependency-version: 1.2.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-01 14:22:28 +00:00
Nova af7e9c89bf Fix mouse back/forward buttons triggering on both press and release
Changed MouseButtonPress to MouseButtonRelease for back/forward button
handling in desktop mode to prevent double navigation.

Also added return true after invoking goBack/goForward to properly
consume the event.

Fixes #1115
2026-01-21 14:30:13 +02:00
Andrew Rabert 146c0651bb Merge pull request #1105 from jellyfin/dependabot/github_actions/master/actions/upload-artifact-6
Bump actions/upload-artifact from 4 to 6
2026-01-03 22:25:51 -05:00
Andrew Rabert 2fc28811ec Merge pull request #1104 from jellyfin/dependabot/github_actions/master/appleboy/ssh-action-1.2.4
Bump appleboy/ssh-action from 1.0.3 to 1.2.4
2026-01-03 22:25:30 -05:00
Andrew Rabert 92eae00d5b Merge pull request #1106 from jellyfin/dependabot/github_actions/master/appleboy/scp-action-1.0.0
Bump appleboy/scp-action from 0.1.7 to 1.0.0
2026-01-03 22:25:09 -05:00
Andrew Rabert e866fa1cde Merge pull request #1107 from jellyfin/dependabot/github_actions/master/actions/checkout-6
Bump actions/checkout from 4 to 6
2026-01-03 22:24:47 -05:00
dependabot[bot] e2b41f8eb3 Bump actions/checkout from 4 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [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/v4...v6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 14:02:31 +00:00
dependabot[bot] e4eba717cd Bump appleboy/scp-action from 0.1.7 to 1.0.0
Bumps [appleboy/scp-action](https://github.com/appleboy/scp-action) from 0.1.7 to 1.0.0.
- [Release notes](https://github.com/appleboy/scp-action/releases)
- [Commits](https://github.com/appleboy/scp-action/compare/917f8b81dfc1ccd331fef9e2d61bdc6c8be94634...ff85246acaad7bdce478db94a363cd2bf7c90345)

---
updated-dependencies:
- dependency-name: appleboy/scp-action
  dependency-version: 1.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 14:02:24 +00:00
dependabot[bot] c4ba7e3adb Bump actions/upload-artifact from 4 to 6
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 6.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v6)

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

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 14:02:20 +00:00
dependabot[bot] 0cc66e5428 Bump appleboy/ssh-action from 1.0.3 to 1.2.4
Bumps [appleboy/ssh-action](https://github.com/appleboy/ssh-action) from 1.0.3 to 1.2.4.
- [Release notes](https://github.com/appleboy/ssh-action/releases)
- [Commits](https://github.com/appleboy/ssh-action/compare/029f5b4aeeeb58fdfe1410a5d17f967dacf36262...823bd89e131d8d508129f9443cad5855e9ba96f0)

---
updated-dependencies:
- dependency-name: appleboy/ssh-action
  dependency-version: 1.2.4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-01 14:02:15 +00:00
Andrew Rabert 771fcb7303 Merge pull request #1101 from jellyfin/remove_mistake
Remove accidental symlink
2025-12-30 18:52:38 -05:00
Andrew Rabert 70595095ca Remove accidental symlink 2025-12-30 18:52:14 -05:00
Andrew Rabert e0131002fe Merge pull request #1100 from jellyfin/macos_cursor
Fix macos cursor hiding when outside of Jellyfin Desktop
2025-12-30 18:47:08 -05:00
Andrew Rabert cd8698c0e2 Fix warnings; remove dead code 2025-12-30 18:39:08 -05:00
Andrew Rabert b3885236f1 Fix macos cursor hiding outside of Jellyfin Desktop 2025-12-30 18:10:28 -05:00
Andrew Rabert f3d2382530 Fix severe memory leak
6.10.* has a severe memory leak.
https://qt-project.atlassian.net/browse/QTBUG-141377

6.9.3 works well enough.

resolves https://github.com/jellyfin/jellyfin-desktop/issues/1091
2025-12-29 22:08:50 -05:00
Andrew Rabert 11cbc15697 Merge pull request #1092 from jellyfin/mac-artwork
Set player artwork on macos
2025-12-27 12:03:01 -05:00
Andrew Rabert d3858e2c21 Set player artwork on macos 2025-12-27 12:00:52 -05:00
Andrew Rabert 8a0091cc24 Remove dead code 2025-12-27 11:05:18 -05:00
Andrew Rabert cb42350d24 Merge pull request #1089 from jellyfin/mpris-art-cache
Add MPRIS art cache; refactor profile management
2025-12-27 02:08:17 -05:00
Andrew Rabert 91881c57b3 Delete cache and log dirs when deleting profile 2025-12-27 01:50:42 -05:00
Andrew Rabert c8cd28e6ca Refactor ProfileManager to encapsulate profile IDs
- Make Profile::id private, expose only through ProfileManager
- Add std::optional<Profile> returns for profileByName/defaultProfile
- Add profiles(), createProfile(), deleteProfile(), setDefaultProfile()
- Update setActiveProfile() to take Profile instead of id string
- Move profile operations from main.cpp lambdas into ProfileManager
- Remove profile-aware methods from Paths (dataDir, cacheDir, logDir)
- All callers now use ProfileManager::activeProfile().dataDir() etc.
2025-12-27 01:45:52 -05:00
Andrew Rabert cf2b184fa5 Merge pull request #1088 from jellyfin/fix-mac-ci-build
Fix mac builds
2025-12-27 01:39:00 -05:00
Andrew Rabert 63967910d6 Fix mac builds 2025-12-27 01:38:44 -05:00
Andrew Rabert c563de40ac Add disk cache for MRPIS artwork 2025-12-27 00:25:57 -05:00
Andrew Rabert 0cc41a0d0a Add cache paths 2025-12-27 00:02:21 -05:00
Andrew Rabert d33fa0486f Merge pull request #1087 from jellyfin/dev
Cleanup build instructions and scripts
2025-12-26 23:57:41 -05:00
Andrew Rabert 8c51614a4a Reorganize dev docs/scripts 2025-12-26 23:57:17 -05:00
Andrew Rabert df852c99cb Update artifact names 2025-12-26 23:56:27 -05:00
Andrew Rabert 0233fd2682 Merge pull request #1086 from jellyfin/bundle-portable
Windows: portable install and setup fixes
2025-12-26 19:54:51 -05:00
Andrew Rabert c85aec44c6 Disable pipeline cache in Windows portable mode 2025-12-26 19:32:12 -05:00
Andrew Rabert 0ffccae6e3 Override LOCALAPPDATA for Windows portable mode cache
Move detectOpenGLEarly() after portable mode detection so Qt's
pipeline cache uses the portable cache directory.
2025-12-26 19:09:15 -05:00
Andrew Rabert 47d055a929 Use separate cache and data paths for WebEngine profile 2025-12-26 18:39:25 -05:00
Andrew Rabert 0650372701 Use disk HTTP cache instead of memory cache 2025-12-26 18:30:54 -05:00
Andrew Rabert a8d0f47dc5 Use DATA_NAME for Qt applicationName on Linux
Consolidates APP_NAME into DATA_NAME and removes redundant MainName().
Ensures Qt's QStandardPaths (cache, config dirs) match our Paths code,
fixing duplicate cache directories on Linux.
2025-12-26 17:45:32 -05:00
Andrew Rabert 7ebf46e96c Use qt_add_qml_module for QML AOT compilation
Eliminates runtime qmlcache by compiling webview.qml ahead of time.
Fixes portable mode cache leak where qmlcache was written to system dir.
2025-12-26 16:49:20 -05:00