50 lines
1.7 KiB
TOML
50 lines
1.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "orisys-studio"
|
|
version = "0.1.0"
|
|
description = "Orisys Studio desktop app"
|
|
requires-python = ">=3.10"
|
|
authors = [{ name = "Orisys-Tech" }]
|
|
dependencies = [
|
|
# PySide6 is the LGPLv3 Qt binding: the licence, not the API, is why the studio is not
|
|
# on PyQt5 (whose free option is GPLv3-or-commercial). See
|
|
# docs/architecture/studio-3d-design.md §11.1 and apps/studio/tests/test_binding_purity.py.
|
|
"PySide6>=6.6",
|
|
"orisys-app-shared>=0.1.0",
|
|
"orisys>=0.5",
|
|
"scipy>=1.10.1",
|
|
"pyqtgraph>=0.13",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# The three-dimensional view (docs/architecture/studio-3d-design.md §11.1).
|
|
# PyOpenGL is the GL binding; PyOpenGL_accelerate is an optional speed-up and is
|
|
# deliberately not required. Open3D stays out: it is an offline tool, and its ARM
|
|
# support is experimental and its GUI needs a desktop GL profile.
|
|
#
|
|
# The binding does not ship a driver. On a board, do not let pip or a system
|
|
# package replace the BSP's EGL/GLES libraries.
|
|
three-d = [
|
|
"PyOpenGL>=3.1.6",
|
|
]
|
|
# Sealed release packages (stage 5): Ed25519 signatures and AES-256-GCM for
|
|
# `.oryscene`. Separated from `three-d` because a plain package needs neither, and a
|
|
# machine that only ever reads plain packages should not have to install a crypto
|
|
# library to show a mesh. The runtime refuses a sealed package, with its reason, when
|
|
# this extra is missing — it never falls back to reading it as plain.
|
|
protected-assets = [
|
|
"cryptography>=42",
|
|
]
|
|
|
|
[project.scripts]
|
|
orisys-studio = "orisys_studio.main:main"
|
|
|
|
[tool.setuptools]
|
|
package-dir = { "" = "src" }
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|