Adapt the package to upstream's packaging refactor in this release:
- Upstream now downloads a prebuilt ffmpeg from LizardByte/build-deps at
cmake configure time. Fetch it via fetchzip and point cmake at it with
FFMPEG_PREPARED_BINARIES. Sunshine pins build-deps via a git submodule
at third-party/build-deps; the matching release tag is derived from
that commit. Extend updater.sh to refresh both the tag and the
per-architecture tarball hashes.
- The boost version pin in cmake/dependencies/Boost_Sunshine.cmake
bumped to 1.89.0. Switch the substitution to a sed regex so future
upstream bumps don't break the patch.
- The .desktop file now Exec's `/usr/bin/env systemctl start --u
app-@PROJECT_FQDN@`; update the replace-fail pattern. The remaining
@VAR@ placeholders are handled by cmake's configure_file(@ONLY) now.
- packaging/linux/sunshine.service.in was renamed to
packaging/linux/app-dev.lizardbyte.app.Sunshine.service.in and now
uses @SUNSHINE_SERVICE_START_COMMAND@/@SUNSHINE_SERVICE_STOP_COMMAND@
instead of @SUNSHINE_EXECUTABLE_PATH@. Drop the postPatch subst-var-by
lines and set SUNSHINE_EXECUTABLE_PATH via a cmake flag instead.
- cmake/packaging/linux.cmake now installs the .desktop file itself, so
the redundant postInstall is removed.
- Add shaderc (glslc), vulkan-loader, and pipewire to inputs, all new
configure-time requirements.
- glad's generator wants jinja2 + setuptools at configure time. Provide
them via python3.withPackages and set GLAD_SKIP_PIP_INSTALL=ON so
cmake doesn't try to pip-install.
Assisted-by: Claude Code 4.7
(cherry picked from commit 391d69d880)
The script broke when invoked from the package directory: nix-update
looked for a default.nix in the cwd. Move to the nixpkgs root before
calling it.
`--generate-lockfile` and the npmDepsHash refresh are mutually exclusive
in a single nix-update pass, so the ui subpackage hash was never
updated.
Split the ui update into two passes.
Also restore the early-exit when UPDATE_NIX_OLD_VERSION matches, quote
$version, and add the shellcheck shell directive.
Assisted-by: Claude Code 4.7
(cherry picked from commit 0085f4f7a8)
We discussed in #staging:nixos.org (Matrix) that the drivers itself are
helpful for development, but that executing them in Hydra don't provide
a benefit over executing the tests themself.
(cherry picked from commit 04f9176915)
This fixes eval on staging, because there Python 3.14 is the default and
backports-zstd is null, because it is included by default.
(cherry picked from commit 0fd69dc26c)