README: amane run works now; tools: anim counts 20-500 ms gaps

- README install: the desktop's amane CLI saves ~/.cache/amane/amane-shell,
  so amane compile + amane run is the way to start the shell
- amane-remote.sh anim: with one window per monitor, gaps of 500 ms and
  more are other islands resting, not stutter
This commit is contained in:
server2
2026-10-10 00:42:18 +02:00
parent 036b326b04
commit 826401e28b
2 changed files with 6 additions and 5 deletions
+3 -3
View File
@@ -59,14 +59,14 @@ On the desktop that runs the shell:
## Install and run
The shell lives in `~/.config/amane/`. Copy (or clone) this repo's `src/` there, then build and start:
The shell lives in `~/.config/amane/`. Clone this repo there (or copy its `src/`, `matugen/` and `shell.conf`), then build and start:
```sh
amane compile
~/.cache/amane/project/target/debug/amane-shell
amane run
```
The installed CLI on the current desktop is older than the Amane docs: it doesn't save `~/.cache/amane/amane-shell`, so `amane run` has nothing to start. Run the binary above directly.
`amane compile` saves the shell as `~/.cache/amane/amane-shell`, which `amane run` starts.
## Control it
+3 -2
View File
@@ -7,7 +7,8 @@
# start | stop run / stop the compiled shell, with AMANE_FRAMES=1 logging
# log [N] last N lines of the shell's log (default 30)
# fps [SECONDS] frames drawn over SECONDS (default 3), with average gap and gpu wait
# anim HANDLER 3x `amane ipc call HANDLER open|close`: frames, gaps over 20 ms, every gap
# anim HANDLER 3x `amane ipc call HANDLER open|close`: frames, gaps of 20-500 ms (stutter; longer
# gaps are other windows resting), every gap
# ipc ARGS... amane ipc call ARGS...
# shot NAMESPACE FILE [PAD] screenshot the layer window with that namespace (Hyprland) into local FILE
# players start N | stop run N fake MPRIS players (fake_mpris.py, next to this script)
@@ -81,7 +82,7 @@ anim)
a=\$(wc -l < shell.log); amane ipc call $handler \$action > /dev/null; sleep 1
tail -n +\$((a + 1)) shell.log | grep '^frame' | awk -v act=\$action '
{gap[n++]=\$5; gpu+=\$11}
END {slow=0; for (i=1;i<n;i++) if (gap[i]>20) slow++;
END {slow=0; for (i=1;i<n;i++) if (gap[i]>20 && gap[i]<500) slow++;
printf \"%-5s frames %2d over 20 ms %2d gpu wait %5.2f ms gaps:\", act, n, slow, gpu/n;
for (i=1;i<n && i<26;i++) printf \" %.0f\", gap[i]; print \"\"}'
done; done"