3e779be6f3
CI / test (3.14, ubuntu-24.04-arm) (push) Waiting to run
CI / lint (push) Failing after 13m4s
CI / test (3.11, ubuntu-latest) (push) Failing after 2m4s
CI / test (3.13, ubuntu-latest) (push) Successful in 13m30s
CI / test (3.14, ubuntu-latest) (push) Successful in 17m21s
CI / test (3.12, ubuntu-latest) (push) Successful in 17m55s
CI / discover-apps-ps (push) Successful in 1m56s
CI / test (3.9, ubuntu-latest) (push) Successful in 13m17s
CI / test (3.10, ubuntu-latest) (push) Successful in 26m21s
CI / audit (push) Successful in 13m38s
Deploy site / deploy (push) Has been cancelled
106 lines
3.0 KiB
TOML
106 lines
3.0 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "winpodx"
|
|
version = "0.9.0"
|
|
description = "Windows app integration for Linux desktop"
|
|
readme = "README.md"
|
|
license = "MIT"
|
|
requires-python = ">=3.9"
|
|
authors = [
|
|
{ name = "Kim DaeHyun", email = "kernalix7@kodenet.io" },
|
|
]
|
|
keywords = ["windows", "linux", "desktop-integration", "rdp", "winapps"]
|
|
classifiers = [
|
|
"Development Status :: 2 - Pre-Alpha",
|
|
"Environment :: X11 Applications :: Qt",
|
|
"Intended Audience :: End Users/Desktop",
|
|
"License :: OSI Approved :: MIT License",
|
|
"Operating System :: POSIX :: Linux",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Topic :: Desktop Environment",
|
|
]
|
|
|
|
dependencies = [
|
|
# tomllib is stdlib on Python 3.11+; pull in the pure-Python tomli fallback
|
|
# for 3.9/3.10 so RHEL 9 (python3 == 3.9) can install winpodx without the
|
|
# python3.11 AppStream module.
|
|
"tomli>=1.1.0; python_version < '3.11'",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
gui = [
|
|
"PySide6>=6.5,<7.0",
|
|
]
|
|
docker = [
|
|
"docker>=7.0,<8.0",
|
|
]
|
|
# Reverse-open (#48) icon conversion. Pillow handles raster (PNG/XPM)
|
|
# → multi-resolution ICO; cairosvg handles SVG → PNG; pyxdg drives the
|
|
# freedesktop icon-theme lookup. Without this extra installed, the
|
|
# discovery layer still works but ICO conversion falls back to a
|
|
# logged warning + no file written.
|
|
reverse-open = [
|
|
"Pillow>=10.0,<12.0",
|
|
"cairosvg>=2.7,<3.0",
|
|
"pyxdg>=0.27,<1.0",
|
|
]
|
|
dev = [
|
|
"pytest>=7.0,<9.0",
|
|
"ruff>=0.4,<1.0",
|
|
"pip-audit>=2.7",
|
|
"Pillow>=10.0,<12.0",
|
|
]
|
|
all = [
|
|
"winpodx[gui,docker,reverse-open,dev]",
|
|
]
|
|
|
|
[project.scripts]
|
|
winpodx = "winpodx.cli.main:cli"
|
|
|
|
[project.urls]
|
|
Homepage = "https://github.com/kernalix7/winpodx"
|
|
Repository = "https://github.com/kernalix7/winpodx"
|
|
Issues = "https://github.com/kernalix7/winpodx/issues"
|
|
Funding = "https://ko-fi.com/kernalix7"
|
|
"Funding (KR)" = "https://fairy.hada.io/@kernalix7"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/winpodx"]
|
|
# Keep Cargo build artifacts out of the wheel. The shim is checked in
|
|
# pre-built under shim/bin/; everything under target/ is regenerable
|
|
# and would otherwise inflate the wheel by ~5 MB per accidental build.
|
|
exclude = [
|
|
"config/oem/reverse-open/shim/target",
|
|
"config/oem/reverse-open/shim/target/**",
|
|
"config/oem/reverse-open/shim/Cargo.lock",
|
|
]
|
|
|
|
[tool.hatch.build.targets.wheel.shared-data]
|
|
"data" = "share/winpodx/data"
|
|
"config" = "share/winpodx/config"
|
|
"scripts" = "share/winpodx/scripts"
|
|
"uninstall.sh" = "share/winpodx/uninstall.sh"
|
|
"LICENSE" = "share/winpodx/LICENSE"
|
|
"README.md" = "share/winpodx/README.md"
|
|
"THIRD_PARTY_LICENSES.md" = "share/winpodx/THIRD_PARTY_LICENSES.md"
|
|
|
|
[tool.ruff]
|
|
target-version = "py39"
|
|
line-length = 100
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "I", "W"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
filterwarnings = [
|
|
"error::DeprecationWarning:winpodx.*",
|
|
]
|
|
markers = [
|
|
"hypothesis: property-based tests using the Hypothesis library (skipped if hypothesis is not installed)",
|
|
]
|