dsmview/pyproject.toml
Jan Vetesnik af63fc7b15 feat: initial dsmview - TUI SSH monitor for Synology DSM 7.x
- Python 3.12+ / Textual TUI with btop-style theme and 4 tabs
  (Dashboard, Logs, Services, Disks)
- Paramiko SSH layer with ssh_config support, key fallback,
  keepalive and reconnect; async executor over a thread pool
- Read-only collectors for system, storage, disks, network,
  logs and services; confirm dialog gates service restart/stop/start
- Click CLI: dsmview ssh [-p PORT] [-i KEY] TARGET
- Homebrew formula using virtualenv_install_with_resources
- GitHub Actions release workflow: builds source tarball,
  regenerates Python resource blocks via homebrew-pypi-poet,
  pushes updated formula to janvete/homebrew-dsmview tap

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-13 16:12:58 +02:00

46 lines
1.3 KiB
TOML

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "dsmview"
version = "0.1.0"
description = "TUI SSH monitor for Synology DSM 7.x"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.12"
authors = [{ name = "Jan Vetesnik" }]
keywords = ["synology", "dsm", "nas", "tui", "ssh", "monitoring"]
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console :: Curses",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: MIT License",
"Operating System :: MacOS",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.12",
"Topic :: System :: Monitoring",
"Topic :: System :: Systems Administration",
]
dependencies = [
"textual>=0.47.0",
"paramiko>=3.4.0",
"click>=8.1.0",
"plotext>=5.2.0",
"textual-plotext>=0.2.1",
]
[project.scripts]
dsmview = "dsmview.cli:main"
[project.urls]
Homepage = "https://github.com/janvete/dsmview"
Repository = "https://github.com/janvete/dsmview"
Issues = "https://github.com/janvete/dsmview/issues"
[tool.hatch.build.targets.wheel]
packages = ["dsmview"]
[tool.hatch.build.targets.sdist]
include = ["/dsmview", "/README.md", "/LICENSE"]