0642eb4712
The first slice of M6 (gaming-environment checks): detect a user's Steam libraries and the games installed in each — also the D12 "pick a game" foundation. - core/steam.py: multi-install/library discovery (libraryfolders.vdf, symlink dedupe, native/Flatpak/Snap), appmanifest_*.acf scan with runtime/Proton/ redist filtering, scan cache + new-game diff. Stdlib only. VDF keys read case-insensitively (e.g. lastupdated vs SizeOnDisk). - Libraries are opt-in (config steam_libraries); the flat TOML writer now emits list/array values. - GUI Games page: library checkboxes with per-library counts, game list, background rescan on every launch, NEW badge + sidebar count for games installed since the last scan (acknowledged when viewed). - CLI: rigdoctor games / games libraries [--enable|--disable|--all|--json] (headless-complete, D17). - Tests for VDF parse, scan, tool filter, cache diff, config list round-trip. - Docs (MODULES/ROADMAP) updated; version 0.7.3 -> 0.8.0. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
676 B
TOML
27 lines
676 B
TOML
[build-system]
|
|
requires = ["setuptools>=61"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "rigdoctor"
|
|
version = "0.8.0"
|
|
description = "Modular hardware monitoring & crash diagnostics for Linux gamers."
|
|
readme = "README.md"
|
|
requires-python = ">=3.11"
|
|
# Core/CLI/daemon are stdlib-only by design (D2). The GUI/tray modules will add
|
|
# PySide6 via an optional extra when those land.
|
|
dependencies = []
|
|
|
|
[project.optional-dependencies]
|
|
gui = ["PySide6", "pyte"]
|
|
|
|
[project.scripts]
|
|
rigdoctor = "rigdoctor.cli:main"
|
|
rigdoctor-gui = "rigdoctor.gui.app:main"
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
|
|
[tool.setuptools.package-data]
|
|
rigdoctor = ["gui/assets/*.svg"]
|