arrowvortex-wine/README.md
2026-05-12 10:56:41 -07:00

57 lines
1.7 KiB
Markdown

# ArrowVortex (Nix flake)
This flake packages [ArrowVortex](https://github.com/uvcat7/ArrowVortex) from the upstream Windows release zip and runs it with Wine. The default Wine prefix is `$XDG_DATA_HOME/arrowvortex/wine` (or `~/.local/share/arrowvortex/wine` when `XDG_DATA_HOME` is unset). Override with `WINEPREFIX` if you want a different prefix.
## Run from a local checkout
```bash
nix run .
```
```bash
nix build .
./result/bin/arrowvortex
```
Run directly from Git
```bash
nix run git+https://git.plebsaber.stream/arrowvortex-wine
```
## Requirements
- Nix with flakes enabled (`experimental-features = nix-command flakes`).
Wine and GUI dependencies come from nixpkgs; you need a working display (X11 or Wayland) for the editor window.
## Debugging
Replace `-all` with focused Wine channels around dialogs, shell integration, and file APIs:
```nix
--set WINEDEBUG "+timestamp,+pid,+tid,+seh,+dialog,+commdlg,+shell,+ole,+file,+loaddll"
```
Most useful pieces:
- `+commdlg`: common file dialog activity, likely the key one for `File > Open`.
- `+dialog`: generic dialog/window creation.
- `+shell`: shell folder / file picker integration.
- `+ole`: COM/OLE calls, often involved in modern shell dialogs.
- `+file`: filesystem open/stat failures after a path is chosen or dialog initializes.
- `+seh`: exceptions that might be swallowed by the app.
- `+loaddll`: missing DLL clues.
- `+timestamp,+pid,+tid`: makes logs easier to follow.
Run it from a terminal and capture stderr, for example:
```bash
WINEDEBUG="+timestamp,+pid,+tid,+seh,+dialog,+commdlg,+shell,+ole,+file,+loaddll" arrowvortex 2>&1 | tee /tmp/arrowvortex-wine.log
```
If that is too noisy, start with:
```bash
WINEDEBUG=+x11drv,+wayland,+commdlg
```