Files
spoopyghosty0--frameport/pyproject.toml
T
spoopyghosty0 ba68dc76c8 Self-update for the app and the CLI
FramePort finds new GitHub releases by itself and updates in one click: sidebar card + Library bar, a dialog with
the release notes, "Update and restart" (download, SHA256SUMS check, Windows signer check, swap script, relaunch),
optional automatic installs at the next start. CLI: --version, `frameport update [--check] [--yes]` and a
once-a-day hint. One version source (_version.py); releases also ship the CLI wheel and "What's new" from the
annotated tag; CI runs an update smoke test with each OS's archive.
2026-10-01 22:59:56 -04:00

62 lines
1.6 KiB
TOML

[project]
name = "frameport"
dynamic = ["version"]
description = "Port Meta Quest standalone games to the Valve Steam Frame (Lepton): suggested patches, automated validation, one-click install."
readme = "README.md"
license = { text = "GPL-3.0-only" }
requires-python = ">=3.11"
dependencies = [
"flet>=1.0",
"flet-desktop>=1.0",
"paramiko>=3.4",
"zeroconf>=0.132",
"psutil>=5.9",
"pyelftools>=0.31",
"capstone>=5.0",
"UnityPy>=1.20",
"PyYAML>=6.0",
"requests>=2.31",
"typer>=0.12",
"pyaxmlparser>=0.3.31",
]
[project.optional-dependencies]
dev = ["pytest>=8", "flet-web>=1.0", "flet-cli>=1.0", "playwright>=1.40"]
[project.scripts]
frameport = "frameport.cli:app"
frameport-gui = "frameport.ui.app:main"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.version]
path = "src/frameport/_version.py" # the single source of the version
[tool.hatch.build.targets.wheel]
packages = ["src/frameport"]
[tool.hatch.build.targets.wheel.force-include]
"catalog" = "frameport/_data/catalog"
"artifacts" = "frameport/_data/artifacts"
"agent" = "frameport/_data/agent"
"bootstrap" = "frameport/_data/bootstrap"
[tool.pytest.ini_options]
testpaths = ["tests"]
markers = [
"device: needs a reachable Steam Frame (FRAMEPORT_FRAME=user@host)",
"games: needs the local game dumps (FRAMEPORT_GAMES=<downloads dir>)",
"native: compiles native code with the NDK from native/build.py (FRAMEPORT_NATIVE_TESTS=1; slow)",
]
[tool.flet]
org = "dev.frameport"
product = "FramePort"
company = "FramePort"
[tool.flet.app]
path = "src"
module = "main"