diff options
Diffstat (limited to 'pkgs/applications/networking/browsers/firefox/wrapper.nix')
-rw-r--r-- | pkgs/applications/networking/browsers/firefox/wrapper.nix | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/pkgs/applications/networking/browsers/firefox/wrapper.nix b/pkgs/applications/networking/browsers/firefox/wrapper.nix index 1c214230e4ed..bc3a1ed844a4 100644 --- a/pkgs/applications/networking/browsers/firefox/wrapper.nix +++ b/pkgs/applications/networking/browsers/firefox/wrapper.nix @@ -26,8 +26,11 @@ let , icon ? browserName , extraPlugins ? [] , extraNativeMessagingHosts ? [] + , gdkWayland ? false }: + assert gdkWayland -> (browser ? gtk3); # Can only use the wayland backend if gtk3 is being used + let cfg = config.${browserName} or {}; enableAdobeFlash = cfg.enableAdobeFlash or false; @@ -86,7 +89,7 @@ let exec = "${browserName}${nameSuffix} %U"; inherit icon; comment = ""; - desktopName = "${desktopName}${nameSuffix}"; + desktopName = "${desktopName}${nameSuffix}${lib.optionalString gdkWayland " (Wayland)"}"; genericName = "Web Browser"; categories = "Application;Network;WebBrowser;"; mimeType = stdenv.lib.concatStringsSep ";" [ @@ -124,7 +127,9 @@ let --suffix PATH ':' "$out${browser.execdir or "/bin"}" \ --set MOZ_APP_LAUNCHER "${browserName}${nameSuffix}" \ --set MOZ_SYSTEM_DIR "$out/lib/mozilla" \ - ${lib.optionalString (browser ? gtk3) + ${lib.optionalString gdkWayland '' + --set GDK_BACKEND "wayland" \ + ''}${lib.optionalString (browser ? gtk3) ''--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \ --suffix XDG_DATA_DIRS : '${gnome3.defaultIconTheme}/share' '' |