Conversation
|
I've tried on my machine and I get another failure I'm going to try again enabling debug, to see if I get more info |
495cae0 to
c4d8032
Compare
|
I got a derivation here that now manages to build and launch, but the resulting binary is slow and buggy with critical features like key input not working. My suspicion is that Nyxt currently only works with the XQuartz GTK backend, and it needs some fixing before it can work with the native Quartz backend. |
|
Yes same (currently the derivation builds for me too with this PR, it's just also extremely slow) |
|
Does keyboard input work for you? So far, I'm only able to supply non-alphanumerical input. |
|
Yes, if I hold down cmd |
|
After further debugging, it seems likely that the keyboard input problem is caused by Nyxt itself. I traced the Here's the result of pressing "a" in a Nyxt window: Looking around the code, there seems to be some Darwin-specific workaround for key handling, so that looks kind of suspicious: |
|
The work around was due to modifiers being incorrectly handled on macOS. I could not reliably query GTK for the active modifiers. Instead, I had to capture them at keypress time and manually toggle them on/off. With regards to Quartz being a problem, I was able to run directly in Quartz without using XQuartz (though I did notice some strange problems). If you can, I strongly suggest attempting to use the GK-GTK renderer instead of just the GTK version as provided in this PR. It may fix many of your issues. |
|
is the GK-GTK renderer just a flag we can enable? I'll look into it :) |
|
GI-GTK is a flag in the makefile |
|
@jmercouris Thanks for looking into this. I've enabled the GI-GTK renderer in my branch, but the problem still remains. Judging from the debug logs, the key inputs seem to be forwarded to webkit-gtk, so I'm now attempting to get debug logs out of WebKit. I've also created a fix for the GI-GTK renderer in atlas-engineer/nyxt#1476 to fix a Darwin crash. |
|
@midchildan would you like to open a PR and continue discussions there? Otherwise I'll integrate the changes in this PR. |
|
@mjlbach I have some few additional fixes, so I created a new PR in #126082. The problem with ignored keypresses still remains, but it turned out to be a problem with the WebKitGTK package, so it deserves a separate issue. Since critical issues in the Nyxt package has now been addressed, I believe this is now ready for review. Could you please take look? |
Motivation for this change
Now that webkitgtk is fixed, trying to get nyxt to build on darwin. Notify-osd is no longer a dependency of nyxt per the 2.0 changelog, so this can be removed from the buildinputs.
The makefile of nyxt includes install-app-bundle as a dependency of the install target, which is what is causing the remaining failure. https://github.com/atlas-engineer/nyxt/blob/23858171e28e06f2841bd06ff22dd30c5e649fe8/Makefile#L53-L55
I don't actually know where make install is called in the darwin builder, so any advice on fixing this last hurdle is appreciated!
Things done
sandboxinnix.confon non-NixOS linux)nix-shell -p nixpkgs-review --run "nixpkgs-review wip"./result/bin/)