{ pkgs, lib, hostname, ... }: let wrap_gl = program: let name = lib.strings.getName program.name; in pkgs.symlinkJoin { name = name; paths = [ (pkgs.writeShellScriptBin name '' ${pkgs.nixgl.nixGLIntel}/bin/nixGLIntel ${program}/bin/${name} $@ '') program ]; }; package = if hostname == "deck" then (wrap_gl pkgs.kitty) else pkgs.kitty; in { home.file.".config/kitty/catppuccin.conf" = { source = ./catppuccin.conf; }; programs.kitty = { enable = true; font = { name = "Iosevka Nerd Font"; }; package = package; settings = { "include" = "catppuccin.conf"; "scrollback_lines" = 50000; "shell_integration" = "enabled no-cursor"; "cursor_shape" = "underline"; "cursor_blink_interval" = 0; "disable_ligatures" = "always"; "enable_audio_bell" = "no"; "tab_bar_margin_width" = "10"; "tab_bar_margin_height" = "0 1"; "tab_bar_edge" = "top"; "tab_bar_style" = "powerline"; "tab_powerline_style" = "slanted"; }; }; }