{ pkgs, homeLib, ... }: { programs.zellij = { enable = true; enableBashIntegration = false; layouts.tabs-and-mode = '' layout { pane pane size=1 borderless=true { plugin location="status-bar" } pane size=1 borderless=true { plugin location="tab-bar" } } ''; layouts.zoxide-picker = '' layout { pane command="${homeLib.zellijNewTabZoxide}/bin/zellij-new-tab-zoxide" close_on_exit=true pane size=1 borderless=true { plugin location="compact-bar" } } ''; settings = { default_shell = "bash"; default_layout = "zoxide-picker"; pane_frames = false; simplified_ui = true; mouse_mode = true; copy_on_select = true; show_startup_tips = false; show_release_notes = false; attach_to_session = true; session_name = "main"; on_force_close = "detach"; session_serialization = true; serialize_pane_viewport = true; ui = { pane_frames = { hide_session_name = true; }; }; }; extraConfig = '' keybinds { tab { bind "n" { NewTab { layout "zoxide-picker"; }; SwitchToMode "Normal"; } bind "N" { NewTab; SwitchToMode "Normal"; } } } ''; }; programs.kitty = { enable = true; settings = { hide_window_decorations = "yes"; draw_minimal_borders = "yes"; font_family = "CommitMono Nerd Font"; font_size = "12"; confirm_os_window_close = "0"; enable_audio_bell = "no"; }; themeFile = "GitHub_Dark_High_Contrast"; }; xdg.desktopEntries.kitty = { name = "Kitty"; genericName = "Terminal Emulator"; exec = "${pkgs.kitty}/bin/kitty --start-as=fullscreen ${homeLib.zellijPersistentSession}/bin/zellij-persistent-session"; icon = "kitty"; type = "Application"; categories = [ "System" "TerminalEmulator" ]; comment = "Fast, featureful, GPU based terminal emulator"; }; }