nix-community / emacs-overlay

Bleeding edge emacs overlay [maintainer=@adisbladis]
508 stars 168 forks source link

xwidget-webkit-browse-url gives blank screen #442

Closed dvorak0 closed 1 month ago

dvorak0 commented 1 month ago

I am using Emacs with Xwidgets by:

programs.emacs = {
       enable = true;
       package = pkgs.emacsWithPackagesFromUsePackage {
         package = (pkgs.emacs-unstable.override {
           withXwidgets = true;
           withGTK3 = true;
         });
  }

image

How should I debug further?

Thanks

leungbk commented 1 month ago

This is a bug discovered upstream: https://lists.gnu.org/archive/html/bug-gnu-emacs/2024-09/msg00695.html

It is for this reason that we disabled webkit2gtk in the overlay and in the most recent revisions to the stable and unstable channels in nixpkgs.

dvorak0 commented 1 month ago

Thanks. I suspect it's not the reason, as my emacs-overlay and nixpkgs is not the latest: overlay version is at b79423d0334e6397528aa3b4f5ff97b4adeadef5 (Jun 1, 2024), and nixpkgs is at 30c35eb33a2a00caba4f0a4a3350ef3878092e0a (Nov 30, 2023).

I'm sure the compilation works, emacs tells it does see the feature support. The problem is more about it doesn't work normally.

Thanks

leungbk commented 1 month ago

If I use (pkgs.emacs.override { withXwidgets = true; withPgtk = true; withGTK3 = true; }) on commit 1487609749dd31a03b58dd1ffa9ce917b8db1d70 of nixpkgs, which gives Emacs 29.4, I find that xwidget-webkit-browse-url works perfectly fine. I also found that omitting withPgtk = true, which you also omitted, caused xwidget-webkit-browse-url to fail.

The overlay does zero magic related to xwidgets; at most we prescribe defaults for a few boolean flags. The overlay revision you mentioned you were using provided an older Emacs (29.3). If you are having trouble getting things to work with 29.3, I would suggest that you use Emacs 29.4 if you want xwidget support. Recent revisions of the overlay provide only Emacsen that have been shown to be incompatible with the version of webkitgtk used in nixpkgs.