Skip to content

Support os_max_ver #157

@hgy59

Description

@hgy59

In October 2025 Synology released DSM 7.3 that does not support PHP < 8.2 anymore.

All packages that do not support PHP 8.2 (i.e. support PHP 7.4 or PHP 8.0 only), must used the os_max_ver attribute in the INFO file to declare a package incompatible with DSM 7.3+.

But such packages must not only declare something like os_max_ver="7.2-81000" but also the spkrepo API must ensure that those are not delivered to DSM 7.3 models.

We already can define OS_MAX_VER = 7.2-81000 in the SPK Makefile to add os_max_ver to the INFO file in the spk, and the package center will avoid the installation with a related error message (i.e. for manual installation).

BUT spksrc (the repository) must evaluate the os_max_ver too, so that packages do not appear in the package center of incompatible DSM version.

So far spkrepo has only os_min_ver implemented - the foreign key firmware_id links to the firmware table with dedicated firmware versions (according to available toolchains).
For os_max_ver this approach is n/a because there are no dedicated max build revisions. We could either define 7.2-99999, 7.2-80000, 7.2-81000, or 7.2-81180 for packages not supported on DSM 7.3+ (I propose an additional column for os_max_ver in the build model).

It would be handy, when os_max_ver could be set in the admin UI, because it must be defined for already published revisions of a package not supported on DSM 7.3+.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions