build(python): migrate to uv (#5222)

This commit is contained in:
David Lane
2026-05-30 17:37:14 -04:00
committed by GitHub
parent 4e9e0d4c66
commit 0e35140576
14 changed files with 801 additions and 76 deletions

View File

@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
[project]
name = "Sunshine"
dynamic = ["version"]
version = "0.0.0"
description = "Helper scripts for Sunshine"
requires-python = ">=3.14"
license = {text = "GPL-3.0-only"}
@@ -14,19 +14,19 @@ authors = [
dependencies = []
[project.optional-dependencies]
[dependency-groups]
# glad2 declares Jinja2>=2.7,<4.0 as a dependency, so installing it pulls in jinja2 transitively.
# The platform marker limits this to Linux where the glad generator is actually used.
glad = [
"glad2 @ file:./third-party/glad",
"glad2",
# setuptools provides pkg_resources which glad's plugin.py imports.
# setuptools >= 81 removed pkg_resources; pin to the last series that includes it.
# setuptools 82 removes pkg_resources; pin to the last series that includes it.
"setuptools<82",
]
flatpak = [
"flatpak_node_generator @ file:./packaging/linux/flatpak/deps/flatpak-builder-tools/node",
"flatpak_pip_generator @ file:./packaging/linux/flatpak/deps/flatpak-builder-tools/pip",
"flatpak_node_generator",
"flatpak_pip_generator",
]
lint = [
@@ -46,3 +46,11 @@ test = [
Homepage = "https://app.lizardbyte.dev/Sunshine"
Repository = "https://github.com/LizardByte/Sunshine"
Issues = "https://github.com/LizardByte/Sunshine/issues"
[tool.setuptools]
py-modules = []
[tool.uv.sources]
flatpak_node_generator = { path = "packaging/linux/flatpak/deps/flatpak-builder-tools/node" }
flatpak_pip_generator = { path = "packaging/linux/flatpak/deps/flatpak-builder-tools/pip" }
glad2 = { path = "third-party/glad" }