- Nix 100%
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| .gitignore | ||
| flake.lock | ||
| flake.nix | ||
| README.md | ||
A2Tools DPS Meter (Nix flake)
Unofficial Nix packaging of taengu/A2Tools-DPS-Meter,
a real-time DPS meter and overlay for AION 2. It captures game network
packets to show damage, skills and combat statistics. Upstream is a Tauri 2
desktop app (Rust backend in src-tauri, Vite/TypeScript frontend), not an
egui binary.
This repository is flake-only: the pinned upstream source is fetched and built by Nix; no upstream source is vendored.
- Upstream version: 2.0.75
- Pinned revision:
a8150354f2f418fb7058578e107cf6648bfc6851(tagv2.0.75) - Main binary:
a2tools-dps-meter - License: GPL-3.0 (upstream
LICENSE)
Run
From this checkout:
nix run .#
or by path:
nix run /home/ira/lab/a2tools-dps-meter
nix run starts the GUI. For a build only:
nix build .#
./result/bin/a2t-inspect --help # non-GUI smoke check
The package also installs the upstream helper binaries in result/bin/:
a2tools-hotkeys, a2t-inspect, a2t-probe, a2t-roster and a2t-derive.
Update the pin
-
Choose the new upstream tag (for example
v2.0.76) from the releases page, and resolve it to a full commit SHA. -
Update
versionandrevinflake.nix. -
Refresh the source hash:
nix flake prefetch --json github:taengu/A2Tools-DPS-Meter/<rev>Put the returned
hashintosrcHash. -
Set
cargoHashand thenpmDepshash back tonixpkgs.lib.fakeHash, runnix build .#, and copy the two reportedgot: sha256-...values intocargoHashand thefetchNpmDepshash respectively. -
Optionally run
nix flake update nixpkgs, then rebuild.
Caveats
- x86_64-linux only. Packaging Tauri pulls in a large Rust dependency tree (several hundred crates) plus a Node/Vite frontend build; the first build is slow.
- GTK3/WebKitGTK 4.1 and the rest of the desktop environment are wired up with
wrapGAppsHook3;libpcapandlibX11are added to the wrapper'sLD_LIBRARY_PATHbecause upstream loads them withdlopen. - Packet capture needs
libpcapat runtime andCAP_NET_RAW. Upstream suggestssudo setcap cap_net_raw=ep <meter path>. On NixOS,setcapon a store path does not survive rebuilds; use a systemd unit or another capability wrapper. - AION 2 itself runs through Proton; the meter is a native Linux application.
- The main binary has no
--help/headless mode, so the build is smoke-tested witha2t-inspect --helpand anlddcheck, without launching the GUI. - The data tables from upstream
src/dataare installed as Tauri resources and exposed through the expected$out/lib/a2tools-dps-meterresource path.