ArrowVortex (Nix flake)
This flake packages ArrowVortex from the upstream Windows release zip and runs it with Wine. The default Wine prefix is $XDG_DATA_HOME/arrowvortex/wine-<wine-version> (or ~/.local/share/arrowvortex/wine-<wine-version> when XDG_DATA_HOME is unset). Override with WINEPREFIX if you want a different prefix.
The versioned prefix deliberately leaves the old unversioned arrowvortex/wine prefix alone. It was created by an earlier Wine build and does not reliably show ArrowVortex's native file dialog. The new default starts with a clean compatible prefix; your Windows Z: drive still exposes your normal Linux files.
Run from a local checkout
nix run .
nix build .
./result/bin/arrowvortex
Run directly from Git
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. The packaged Wine 11.0 launcher has been verified on KDE Plasma Wayland: File → Open opens Wine's Open file dialog.
Debugging
The launcher defaults to quiet Wine logging, but respects WINEDEBUG when you set it. Use focused channels around dialogs, shell integration, and file APIs:
Most useful pieces:
+commdlg: common file dialog activity, likely the key one forFile > 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:
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:
WINEDEBUG=+x11drv,+wayland,+commdlg