{ config, lib, ... }: let cfg = config.jade.zellij; in with lib; { options.jade.zellij= { enable = mkEnableOption "Enable the Zellij multiplexer"; }; config = mkIf cfg.enable { home-manager.users.jade = { pkgs, ... }: { home.file = { zellij-forgot = { target = ".config/zellij/plugins/zellij-forgot.wasm"; source = builtins.fetchurl "https://github.com/karimould/zellij-forgot/releases/download/0.2.0/zellij_forgot.wasm"; }; monocle = { target = ".config/zellij/plugins/monocle.wasm"; source = builtins.fetchurl "https://github.com/imsnif/monocle/releases/download/0.37.2/monocle.wasm"; }; }; programs.zellij = { enable = true; settings = { theme = "gruvbox-dark"; themes.gruvbox-dark = { fg = "#d5c4a1"; bg = "#282828"; black = "#3C3836"; red = "#CC241D"; green = "#98971A"; yellow = "#D79921"; blue = "#3C8588"; magenta = "#B16286"; cyan = "#689D6A"; white = "#665c54"; orange = "#D65D0E"; }; # keybinds = { # session = { # "bind \"o\"" = { # LaunchOrFocusPlugin = ["file:/home/jade/.config/zellij/plugins/monocle.wasm" { floating = true; }]; # }; # }; # }; pane_frames = false; }; }; }; }; }