diff --git a/modules/programs/ghostty.nix b/modules/programs/ghostty.nix index a7c488e..19ded66 100644 --- a/modules/programs/ghostty.nix +++ b/modules/programs/ghostty.nix @@ -8,6 +8,17 @@ }; flake.modules.homeManager.ghostty = { config, pkgs, lib, ... }: + let + ghosttyPackage = pkgs.symlinkJoin { + name = "ghostty-x11"; + paths = [ (config.lib.nixGL.wrap pkgs.ghostty) ]; + nativeBuildInputs = [ pkgs.makeWrapper ]; + meta.mainProgram = "ghostty"; + postBuild = '' + wrapProgram $out/bin/ghostty --set GDK_BACKEND x11 + ''; + }; + in { home.sessionVariables = { TERMINAL = "ghostty"; @@ -22,7 +33,7 @@ programs.ghostty = { enable = true; enableZshIntegration = true; - package = config.lib.nixGL.wrap pkgs.ghostty; + package = ghosttyPackage; settings = { command = "TERM=xterm-256color ${lib.getExe pkgs.zsh}"; font-size = 12; @@ -60,13 +71,12 @@ # https://github.com/ghostty-org/ghostty/discussions/3763#discussioncomment-11699970 xdg.desktopEntries."com.mitchellh.ghostty" = let - ghosttyCmd = "nixGLMesa ${lib.getExe pkgs.ghostty}"; + ghosttyCmd = lib.getExe ghosttyPackage; in { name = "Ghostty"; type = "Application"; comment = "A terminal emulator"; - # exec = "nixGLMesa ghostty"; exec = ghosttyCmd; icon = "com.mitchellh.ghostty"; terminal = false; @@ -85,7 +95,6 @@ new-window = { name = "New Window"; exec = ghosttyCmd; - # exec = "nixGLMesa ghostty"; }; }; };