faaba27ed4
- core/display.py: write_positions() persists Arrangement's drag-and-drop
layout into niri's config.kdl (one output { position x= y= } per output),
validated via `niri validate` on a temp copy with a .kdl.bak backup before
writing — same pattern as core/keybindings.py's rebind(). Previously the
page only ever called `niri msg output … position set`, which niri treats
as live-only and drops on the next login/reload.
- gui/pages/display.py: Arrangement's Apply now runs each output's `niri msg
output … position set` synchronously instead of queuing them all on the
single-shot ProcessRunner (which rejects a second run() while the first is
still async) — a 2-monitor apply previously moved only the first output
and silently dropped the rest. _dock_to_nearest keeps the free axis at the
dragged position (so a shorter display can sit vertically centered next to
a taller rotated one) rather than forcing corner alignment.
- core/panel.py, files/__init__.py: incidental fixes alongside the above.
- packaging/: signing-key generation script + build-user systemd setup for
the [tanin] AUR auto-rebuild pipeline; PKGBUILD bumped to pkgrel=5.
- src/taninux/browser/: new module for browser theme sync (Fuji accent).
41 lines
1.1 KiB
TOML
41 lines
1.1 KiB
TOML
[project]
|
|
name = "taninux"
|
|
version = "0.2.0"
|
|
description = "TANINUX — central Linux maintenance & management TUI for Arch. Pillars: maintain, update, kernel, suggest, health."
|
|
license = "GPL-3.0-or-later"
|
|
license-files = ["LICENSE"]
|
|
requires-python = ">=3.11"
|
|
dependencies = [
|
|
"textual>=0.86",
|
|
]
|
|
|
|
[project.optional-dependencies]
|
|
# GTK-Frontend. PyGObject + libadwaita kommen am besten als System-Pakete
|
|
# (pacman -S python-gobject libadwaita gtk4) — der pip-Build von PyGObject
|
|
# braucht sonst die GTK-Dev-Header. Daher hier bewusst KEIN harter Pin.
|
|
gui = [
|
|
"pygobject>=3.50; sys_platform == 'linux'",
|
|
]
|
|
|
|
[project.scripts]
|
|
taninux = "taninux.cli:main"
|
|
taninux-gtk = "taninux.gui.app:main"
|
|
tsettings = "taninux.gui.app:main_settings"
|
|
thub = "taninux.gui.app:main_hub"
|
|
tfiles = "taninux.files.app:main"
|
|
|
|
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[tool.hatch.build.targets.wheel]
|
|
packages = ["src/taninux"]
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py311"
|
|
|
|
[tool.ruff.lint]
|
|
select = ["E", "F", "W", "B", "UP", "BLE"]
|
|
ignore = ["E501"]
|