From cb142548996d72977396c7a5dda01045950a906f Mon Sep 17 00:00:00 2001 From: Tigor Hutasuhut Date: Sun, 4 Aug 2024 16:26:21 +0700 Subject: [PATCH] zellij: refactored themes section to accept path config --- home/programs/default.nix | 2 +- .../{zellij.nix => zellij/default.nix} | 32 +-- .../themes/zjstatus/catppuccin-frappe.nix | 99 ++++++++++ .../themes/zjstatus/catppuccin-latte.nix | 99 ++++++++++ .../themes/zjstatus/catppuccin-macchiato.nix | 99 ++++++++++ .../themes/zjstatus/catppuccin-mocha.nix | 183 ++++++++++++++++++ options/programs.nix | 5 + 7 files changed, 487 insertions(+), 32 deletions(-) rename home/programs/{zellij.nix => zellij/default.nix} (84%) create mode 100644 home/programs/zellij/themes/zjstatus/catppuccin-frappe.nix create mode 100644 home/programs/zellij/themes/zjstatus/catppuccin-latte.nix create mode 100644 home/programs/zellij/themes/zjstatus/catppuccin-macchiato.nix create mode 100644 home/programs/zellij/themes/zjstatus/catppuccin-mocha.nix diff --git a/home/programs/default.nix b/home/programs/default.nix index 2553238..d69b08e 100644 --- a/home/programs/default.nix +++ b/home/programs/default.nix @@ -28,10 +28,10 @@ ./vscode.nix ./whatsapp.nix ./zathura.nix - ./zellij.nix ./zsh.nix ./wezterm + ./zellij ]; programs.fzf = { diff --git a/home/programs/zellij.nix b/home/programs/zellij/default.nix similarity index 84% rename from home/programs/zellij.nix rename to home/programs/zellij/default.nix index 119b6d8..96d1203 100644 --- a/home/programs/zellij.nix +++ b/home/programs/zellij/default.nix @@ -217,36 +217,6 @@ in } ''; - home.file.".config/zellij/layouts/default.kdl".text = /*kdl*/ '' - layout { - pane split_direction="vertical" { - pane - } - - pane size=1 borderless=true { - plugin location="file:${plugins.zj-status}" { - format_left "{mode}#[fg=black,bg=blue,bold]{session} #[fg=blue,bg=#181825]{tabs}" - format_right "#[fg=#181825,bg=#b1bbfa]{datetime}" - format_space "#[bg=#181825]" - - hide_frame_for_single_pane "true" - - mode_normal "#[bg=blue] " - - tab_normal "#[fg=#181825,bg=#4C4C59] #[fg=#000000,bg=#4C4C59]{index}  {name} #[fg=#4C4C59,bg=#181825]" - tab_normal_fullscreen "#[fg=#6C7086,bg=#181825] {index} {name} [] " - tab_normal_sync "#[fg=#6C7086,bg=#181825] {index} {name} <> " - tab_active "#[fg=#181825,bg=#ffffff,bold,italic] {index}  {name} #[fg=#ffffff,bg=#181825]" - tab_active_fullscreen "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} [] " - tab_active_sync "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} <> " - - - datetime "#[fg=#6C7086,bg=#b1bbfa,bold] {format} " - datetime_format "%A, %d %b %Y %H:%M" - datetime_timezone "Europe/Berlin" - } - } - } - ''; + home.file.".config/zellij/layouts/default.kdl".text = import cfg.zjstatus.theme { inherit plugins; }; }; } diff --git a/home/programs/zellij/themes/zjstatus/catppuccin-frappe.nix b/home/programs/zellij/themes/zjstatus/catppuccin-frappe.nix new file mode 100644 index 0000000..9da6fda --- /dev/null +++ b/home/programs/zellij/themes/zjstatus/catppuccin-frappe.nix @@ -0,0 +1,99 @@ +{ plugins, ... }: +/*kdl*/ '' + layout { + pane split_direction="vertical" { + pane + } + + pane size=1 borderless=true { + plugin location="file:${plugins.zj-status}" { + // -- Catppuccin Frappé -- + color_rosewater "#f2d5cf" + color_flamingo "#eebebe" + color_pink "#f4b8e4" + color_mauve "#ca9ee6" + color_red "#e78284" + color_maroon "#ea999c" + color_peach "#ef9f76" + color_yellow "#e5c890" + color_green "#a6d189" + color_teal "#81c8be" + color_sky "#99d1db" + color_sapphire "#85c1dc" + color_blue "#8caaee" + color_lavender "#babbf1" + color_text "#c6d0f5" + color_subtext1 "#b5bfe2" + color_subtext0 "#a5adce" + color_overlay2 "#949cbb" + color_overlay1 "#838ba7" + color_overlay0 "#737994" + color_surface2 "#626880" + color_surface1 "#51576d" + color_surface0 "#414559" + color_base "#303446" + color_mantle "#292c3c" + color_crust "#232634" + + format_left "#[bg=$surface0,fg=$sapphire]#[bg=$sapphire,fg=$crust,bold] {session} #[bg=$surface0] {mode}#[bg=$surface0] {tabs}" + format_center "{notifications}" + format_right "#[bg=$surface0,fg=$flamingo]#[fg=$crust,bg=$flamingo] #[bg=$surface1,fg=$flamingo,bold] {command_user}@{command_host}#[bg=$surface0,fg=$surface1]#[bg=$surface0,fg=$maroon]#[bg=$maroon,fg=$crust]󰃭 #[bg=$surface1,fg=$maroon,bold] {datetime}#[bg=$surface0,fg=$surface1]" + format_space "#[bg=$surface0]" + format_hide_on_overlength "true" + format_precedence "lrc" + + border_enabled "false" + border_char "─" + border_format "#[bg=$surface0]{char}" + border_position "top" + + hide_frame_for_single_pane "true" + + mode_normal "#[bg=$green,fg=$crust,bold] NORMAL#[bg=$surface0,fg=$green]" + mode_tmux "#[bg=$mauve,fg=$crust,bold] TMUX#[bg=$surface0,fg=$mauve]" + mode_locked "#[bg=$red,fg=$crust,bold] LOCKED#[bg=$surface0,fg=$red]" + mode_pane "#[bg=$teal,fg=$crust,bold] PANE#[bg=$surface0,fg=teal]" + mode_tab "#[bg=$teal,fg=$crust,bold] TAB#[bg=$surface0,fg=$teal]" + mode_scroll "#[bg=$flamingo,fg=$crust,bold] SCROLL#[bg=$surface0,fg=$flamingo]" + mode_enter_search "#[bg=$flamingo,fg=$crust,bold] ENT-SEARCH#[bg=$surfaco,fg=$flamingo]" + mode_search "#[bg=$flamingo,fg=$crust,bold] SEARCHARCH#[bg=$surfac0,fg=$flamingo]" + mode_resize "#[bg=$yellow,fg=$crust,bold] RESIZE#[bg=$surfac0,fg=$yellow]" + mode_rename_tab "#[bg=$yellow,fg=$crust,bold] RENAME-TAB#[bg=$surface0,fg=$yellow]" + mode_rename_pane "#[bg=$yellow,fg=$crust,bold] RENAME-PANE#[bg=$surface0,fg=$yellow]" + mode_move "#[bg=$yellow,fg=$crust,bold] MOVE#[bg=$surface0,fg=$yellow]" + mode_session "#[bg=$pink,fg=$crust,bold] SESSION#[bg=$surface0,fg=$pink]" + mode_prompt "#[bg=$pink,fg=$crust,bold] PROMPT#[bg=$surface0,fg=$pink]" + + tab_normal "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_fullscreen "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_sync "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_active "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_fullscreen "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_sync "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_separator "#[bg=$surface0] " + + tab_sync_indicator " " + tab_fullscreen_indicator " 󰊓" + tab_floating_indicator " 󰹙" + + notification_format_unread "#[bg=surface0,fg=$yellow]#[bg=$yellow,fg=$crust] #[bg=$surface1,fg=$yellow] {message}#[bg=$surface0,fg=$yellow]" + notification_format_no_notifications "" + notification_show_interval "10" + + command_host_command "uname -n" + command_host_format "{stdout}" + command_host_interval "0" + command_host_rendermode "static" + + command_user_command "whoami" + command_user_format "{stdout}" + command_user_interval "10" + command_user_rendermode "static" + + datetime "{format}" + datetime_format "%Y-%m-%d 󰅐 %H:%M" + datetime_timezone "Europe/Stockholm" + } + } + } +'' diff --git a/home/programs/zellij/themes/zjstatus/catppuccin-latte.nix b/home/programs/zellij/themes/zjstatus/catppuccin-latte.nix new file mode 100644 index 0000000..1f61f46 --- /dev/null +++ b/home/programs/zellij/themes/zjstatus/catppuccin-latte.nix @@ -0,0 +1,99 @@ +{ plugins, ... }: +/*kdl*/ '' + layout { + pane split_direction="vertical" { + pane + } + + pane size=1 borderless=true { + plugin location="file:${plugins.zj-status}" { + // -- Catppuccin Latte -- + color_rosewater "#dc8a78" + color_flamingo "#dd7878" + color_pink "#ea76cb" + color_mauve "#8839ef" + color_red "#d20f39" + color_maroon "#e64553" + color_peach "#fe640b" + color_yellow "#df8e1d" + color_green "#40a02b" + color_teal "#179299" + color_sky "#04a5e5" + color_sapphire "#209fb5" + color_blue "#1e66f5" + color_lavender "#7287fd" + color_text "#4c4f69" + color_subtext1 "#5c5f77" + color_subtext0 "#6c6f85" + color_overlay2 "#7c7f93" + color_overlay1 "#8c8fa1" + color_overlay0 "#9ca0b0" + color_surface2 "#acb0be" + color_surface1 "#bcc0cc" + color_surface0 "#ccd0da" + color_base "#eff1f5" + color_mantle "#e6e9ef" + color_crust "#dce0e8" + + format_left "#[bg=$surface0,fg=$sapphire]#[bg=$sapphire,fg=$crust,bold] {session} #[bg=$surface0] {mode}#[bg=$surface0] {tabs}" + format_center "{notifications}" + format_right "#[bg=$surface0,fg=$flamingo]#[fg=$crust,bg=$flamingo] #[bg=$surface1,fg=$flamingo,bold] {command_user}@{command_host}#[bg=$surface0,fg=$surface1]#[bg=$surface0,fg=$maroon]#[bg=$maroon,fg=$crust]󰃭 #[bg=$surface1,fg=$maroon,bold] {datetime}#[bg=$surface0,fg=$surface1]" + format_space "#[bg=$surface0]" + format_hide_on_overlength "true" + format_precedence "lrc" + + border_enabled "false" + border_char "─" + border_format "#[bg=$surface0]{char}" + border_position "top" + + hide_frame_for_single_pane "true" + + mode_normal "#[bg=$green,fg=$crust,bold] NORMAL#[bg=$surface0,fg=$green]" + mode_tmux "#[bg=$mauve,fg=$crust,bold] TMUX#[bg=$surface0,fg=$mauve]" + mode_locked "#[bg=$red,fg=$crust,bold] LOCKED#[bg=$surface0,fg=$red]" + mode_pane "#[bg=$teal,fg=$crust,bold] PANE#[bg=$surface0,fg=teal]" + mode_tab "#[bg=$teal,fg=$crust,bold] TAB#[bg=$surface0,fg=$teal]" + mode_scroll "#[bg=$flamingo,fg=$crust,bold] SCROLL#[bg=$surface0,fg=$flamingo]" + mode_enter_search "#[bg=$flamingo,fg=$crust,bold] ENT-SEARCH#[bg=$surfaco,fg=$flamingo]" + mode_search "#[bg=$flamingo,fg=$crust,bold] SEARCHARCH#[bg=$surfac0,fg=$flamingo]" + mode_resize "#[bg=$yellow,fg=$crust,bold] RESIZE#[bg=$surfac0,fg=$yellow]" + mode_rename_tab "#[bg=$yellow,fg=$crust,bold] RENAME-TAB#[bg=$surface0,fg=$yellow]" + mode_rename_pane "#[bg=$yellow,fg=$crust,bold] RENAME-PANE#[bg=$surface0,fg=$yellow]" + mode_move "#[bg=$yellow,fg=$crust,bold] MOVE#[bg=$surface0,fg=$yellow]" + mode_session "#[bg=$pink,fg=$crust,bold] SESSION#[bg=$surface0,fg=$pink]" + mode_prompt "#[bg=$pink,fg=$crust,bold] PROMPT#[bg=$surface0,fg=$pink]" + + tab_normal "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_fullscreen "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_sync "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_active "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_fullscreen "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_sync "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_separator "#[bg=$surface0] " + + tab_sync_indicator " " + tab_fullscreen_indicator " 󰊓" + tab_floating_indicator " 󰹙" + + notification_format_unread "#[bg=surface0,fg=$yellow]#[bg=$yellow,fg=$crust] #[bg=$surface1,fg=$yellow] {message}#[bg=$surface0,fg=$yellow]" + notification_format_no_notifications "" + notification_show_interval "10" + + command_host_command "uname -n" + command_host_format "{stdout}" + command_host_interval "0" + command_host_rendermode "static" + + command_user_command "whoami" + command_user_format "{stdout}" + command_user_interval "10" + command_user_rendermode "static" + + datetime "{format}" + datetime_format "%Y-%m-%d 󰅐 %H:%M" + datetime_timezone "Europe/Stockholm" + } + } + } +'' diff --git a/home/programs/zellij/themes/zjstatus/catppuccin-macchiato.nix b/home/programs/zellij/themes/zjstatus/catppuccin-macchiato.nix new file mode 100644 index 0000000..38943be --- /dev/null +++ b/home/programs/zellij/themes/zjstatus/catppuccin-macchiato.nix @@ -0,0 +1,99 @@ +{ plugins, ... }: +/*kdl*/ '' + layout { + pane split_direction="vertical" { + pane + } + + pane size=1 borderless=true { + plugin location="file:${plugins.zj-status}" { + // -- Catppuccin Macchiato -- + color_rosewater "#f4dbd6" + color_flamingo "#f0c6c6" + color_pink "#f5bde6" + color_mauve "#c6a0f6" + color_red "#ed8796" + color_maroon "#ee99a0" + color_peach "#f5a97f" + color_yellow "#eed49f" + color_green "#a6da95" + color_teal "#8bd5ca" + color_sky "#91d7e3" + color_sapphire "#7dc4e4" + color_blue "#8aadf4" + color_lavender "#b7bdf8" + color_text "#cad3f5" + color_subtext1 "#b8c0e0" + color_subtext0 "#a5adcb" + color_overlay2 "#939ab7" + color_overlay1 "#8087a2" + color_overlay0 "#6e738d" + color_surface2 "#5b6078" + color_surface1 "#494d64" + color_surface0 "#363a4f" + color_base "#24273a" + color_mantle "#1e2030" + color_crust "#181926" + + format_left "#[bg=$surface0,fg=$sapphire]#[bg=$sapphire,fg=$crust,bold] {session} #[bg=$surface0] {mode}#[bg=$surface0] {tabs}" + format_center "{notifications}" + format_right "#[bg=$surface0,fg=$flamingo]#[fg=$crust,bg=$flamingo] #[bg=$surface1,fg=$flamingo,bold] {command_user}@{command_host}#[bg=$surface0,fg=$surface1]#[bg=$surface0,fg=$maroon]#[bg=$maroon,fg=$crust]󰃭 #[bg=$surface1,fg=$maroon,bold] {datetime}#[bg=$surface0,fg=$surface1]" + format_space "#[bg=$surface0]" + format_hide_on_overlength "true" + format_precedence "lrc" + + border_enabled "false" + border_char "─" + border_format "#[bg=$surface0]{char}" + border_position "top" + + hide_frame_for_single_pane "true" + + mode_normal "#[bg=$green,fg=$crust,bold] NORMAL#[bg=$surface0,fg=$green]" + mode_tmux "#[bg=$mauve,fg=$crust,bold] TMUX#[bg=$surface0,fg=$mauve]" + mode_locked "#[bg=$red,fg=$crust,bold] LOCKED#[bg=$surface0,fg=$red]" + mode_pane "#[bg=$teal,fg=$crust,bold] PANE#[bg=$surface0,fg=teal]" + mode_tab "#[bg=$teal,fg=$crust,bold] TAB#[bg=$surface0,fg=$teal]" + mode_scroll "#[bg=$flamingo,fg=$crust,bold] SCROLL#[bg=$surface0,fg=$flamingo]" + mode_enter_search "#[bg=$flamingo,fg=$crust,bold] ENT-SEARCH#[bg=$surfaco,fg=$flamingo]" + mode_search "#[bg=$flamingo,fg=$crust,bold] SEARCHARCH#[bg=$surfac0,fg=$flamingo]" + mode_resize "#[bg=$yellow,fg=$crust,bold] RESIZE#[bg=$surfac0,fg=$yellow]" + mode_rename_tab "#[bg=$yellow,fg=$crust,bold] RENAME-TAB#[bg=$surface0,fg=$yellow]" + mode_rename_pane "#[bg=$yellow,fg=$crust,bold] RENAME-PANE#[bg=$surface0,fg=$yellow]" + mode_move "#[bg=$yellow,fg=$crust,bold] MOVE#[bg=$surface0,fg=$yellow]" + mode_session "#[bg=$pink,fg=$crust,bold] SESSION#[bg=$surface0,fg=$pink]" + mode_prompt "#[bg=$pink,fg=$crust,bold] PROMPT#[bg=$surface0,fg=$pink]" + + tab_normal "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_fullscreen "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_sync "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_active "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_fullscreen "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_sync "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_separator "#[bg=$surface0] " + + tab_sync_indicator " " + tab_fullscreen_indicator " 󰊓" + tab_floating_indicator " 󰹙" + + notification_format_unread "#[bg=surface0,fg=$yellow]#[bg=$yellow,fg=$crust] #[bg=$surface1,fg=$yellow] {message}#[bg=$surface0,fg=$yellow]" + notification_format_no_notifications "" + notification_show_interval "10" + + command_host_command "uname -n" + command_host_format "{stdout}" + command_host_interval "0" + command_host_rendermode "static" + + command_user_command "whoami" + command_user_format "{stdout}" + command_user_interval "10" + command_user_rendermode "static" + + datetime "{format}" + datetime_format "%Y-%m-%d 󰅐 %H:%M" + datetime_timezone "Europe/Stockholm" + } + } + } +'' diff --git a/home/programs/zellij/themes/zjstatus/catppuccin-mocha.nix b/home/programs/zellij/themes/zjstatus/catppuccin-mocha.nix new file mode 100644 index 0000000..c2d1f97 --- /dev/null +++ b/home/programs/zellij/themes/zjstatus/catppuccin-mocha.nix @@ -0,0 +1,183 @@ +{ plugins, ... }: +/*kdl*/ '' + layout { + pane split_direction="vertical" { + pane + } + + pane size=1 borderless=true { + plugin location="file:${plugins.zj-status}" { + // -- Catppuccin Mocha -- + color_rosewater "#f5e0dc" + color_flamingo "#f2cdcd" + color_pink "#f5c2e7" + color_mauve "#cba6f7" + color_red "#f38ba8" + color_maroon "#eba0ac" + color_peach "#fab387" + color_yellow "#f9e2af" + color_green "#a6e3a1" + color_teal "#94e2d5" + color_sky "#89dceb" + color_sapphire "#74c7ec" + color_blue "#89b4fa" + color_lavender "#b4befe" + color_text "#cdd6f4" + color_subtext1 "#bac2de" + color_subtext0 "#a6adc8" + color_overlay2 "#9399b2" + color_overlay1 "#7f849c" + color_overlay0 "#6c7086" + color_surface2 "#585b70" + color_surface1 "#45475a" + color_surface0 "#313244" + color_base "#1e1e2e" + color_mantle "#181825" + color_crust "#11111b" + + // -- Catppuccin Latte -- + //color_rosewater "#dc8a78" + //color_flamingo "#dd7878" + //color_pink "#ea76cb" + //color_mauve "#8839ef" + //color_red "#d20f39" + //color_maroon "#e64553" + //color_peach "#fe640b" + //color_yellow "#df8e1d" + //color_green "#40a02b" + //color_teal "#179299" + //color_sky "#04a5e5" + //color_sapphire "#209fb5" + //color_blue "#1e66f5" + //color_lavender "#7287fd" + //color_text "#4c4f69" + //color_subtext1 "#5c5f77" + //color_subtext0 "#6c6f85" + //color_overlay2 "#7c7f93" + //color_overlay1 "#8c8fa1" + //color_overlay0 "#9ca0b0" + //color_surface2 "#acb0be" + //color_surface1 "#bcc0cc" + //color_surface0 "#ccd0da" + //color_base "#eff1f5" + //color_mantle "#e6e9ef" + //color_crust "#dce0e8" + + // -- Catppuccin Frappé -- + //color_rosewater "#f2d5cf" + //color_flamingo "#eebebe" + //color_pink "#f4b8e4" + //color_mauve "#ca9ee6" + //color_red "#e78284" + //color_maroon "#ea999c" + //color_peach "#ef9f76" + //color_yellow "#e5c890" + //color_green "#a6d189" + //color_teal "#81c8be" + //color_sky "#99d1db" + //color_sapphire "#85c1dc" + //color_blue "#8caaee" + //color_lavender "#babbf1" + //color_text "#c6d0f5" + //color_subtext1 "#b5bfe2" + //color_subtext0 "#a5adce" + //color_overlay2 "#949cbb" + //color_overlay1 "#838ba7" + //color_overlay0 "#737994" + //color_surface2 "#626880" + //color_surface1 "#51576d" + //color_surface0 "#414559" + //color_base "#303446" + //color_mantle "#292c3c" + //color_crust "#232634" + + // -- Catppuccin Macchiato -- + //color_rosewater "#f4dbd6" + //color_flamingo "#f0c6c6" + //color_pink "#f5bde6" + //color_mauve "#c6a0f6" + //color_red "#ed8796" + //color_maroon "#ee99a0" + //color_peach "#f5a97f" + //color_yellow "#eed49f" + //color_green "#a6da95" + //color_teal "#8bd5ca" + //color_sky "#91d7e3" + //color_sapphire "#7dc4e4" + //color_blue "#8aadf4" + //color_lavender "#b7bdf8" + //color_text "#cad3f5" + //color_subtext1 "#b8c0e0" + //color_subtext0 "#a5adcb" + //color_overlay2 "#939ab7" + //color_overlay1 "#8087a2" + //color_overlay0 "#6e738d" + //color_surface2 "#5b6078" + //color_surface1 "#494d64" + //color_surface0 "#363a4f" + //color_base "#24273a" + //color_mantle "#1e2030" + //color_crust "#181926" + + format_left "#[bg=$surface0,fg=$sapphire]#[bg=$sapphire,fg=$crust,bold] {session} #[bg=$surface0] {mode}#[bg=$surface0] {tabs}" + format_center "{notifications}" + format_right "#[bg=$surface0,fg=$flamingo]#[fg=$crust,bg=$flamingo] #[bg=$surface1,fg=$flamingo,bold] {command_user}@{command_host}#[bg=$surface0,fg=$surface1]#[bg=$surface0,fg=$maroon]#[bg=$maroon,fg=$crust]󰃭 #[bg=$surface1,fg=$maroon,bold] {datetime}#[bg=$surface0,fg=$surface1]" + format_space "#[bg=$surface0]" + format_hide_on_overlength "true" + format_precedence "lrc" + + border_enabled "false" + border_char "─" + border_format "#[bg=$surface0]{char}" + border_position "top" + + hide_frame_for_single_pane "true" + + mode_normal "#[bg=$green,fg=$crust,bold] NORMAL#[bg=$surface0,fg=$green]" + mode_tmux "#[bg=$mauve,fg=$crust,bold] TMUX#[bg=$surface0,fg=$mauve]" + mode_locked "#[bg=$red,fg=$crust,bold] LOCKED#[bg=$surface0,fg=$red]" + mode_pane "#[bg=$teal,fg=$crust,bold] PANE#[bg=$surface0,fg=teal]" + mode_tab "#[bg=$teal,fg=$crust,bold] TAB#[bg=$surface0,fg=$teal]" + mode_scroll "#[bg=$flamingo,fg=$crust,bold] SCROLL#[bg=$surface0,fg=$flamingo]" + mode_enter_search "#[bg=$flamingo,fg=$crust,bold] ENT-SEARCH#[bg=$surfaco,fg=$flamingo]" + mode_search "#[bg=$flamingo,fg=$crust,bold] SEARCHARCH#[bg=$surfac0,fg=$flamingo]" + mode_resize "#[bg=$yellow,fg=$crust,bold] RESIZE#[bg=$surfac0,fg=$yellow]" + mode_rename_tab "#[bg=$yellow,fg=$crust,bold] RENAME-TAB#[bg=$surface0,fg=$yellow]" + mode_rename_pane "#[bg=$yellow,fg=$crust,bold] RENAME-PANE#[bg=$surface0,fg=$yellow]" + mode_move "#[bg=$yellow,fg=$crust,bold] MOVE#[bg=$surface0,fg=$yellow]" + mode_session "#[bg=$pink,fg=$crust,bold] SESSION#[bg=$surface0,fg=$pink]" + mode_prompt "#[bg=$pink,fg=$crust,bold] PROMPT#[bg=$surface0,fg=$pink]" + + tab_normal "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_fullscreen "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_normal_sync "#[bg=$surface0,fg=$blue]#[bg=$blue,fg=$crust,bold]{index} #[bg=$surface1,fg=$blue,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_active "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{floating_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_fullscreen "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{fullscreen_indicator}#[bg=$surface0,fg=$surface1]" + tab_active_sync "#[bg=$surface0,fg=$peach]#[bg=$peach,fg=$crust,bold]{index} #[bg=$surface1,fg=$peach,bold] {name}{sync_indicator}#[bg=$surface0,fg=$surface1]" + tab_separator "#[bg=$surface0] " + + tab_sync_indicator " " + tab_fullscreen_indicator " 󰊓" + tab_floating_indicator " 󰹙" + + notification_format_unread "#[bg=surface0,fg=$yellow]#[bg=$yellow,fg=$crust] #[bg=$surface1,fg=$yellow] {message}#[bg=$surface0,fg=$yellow]" + notification_format_no_notifications "" + notification_show_interval "10" + + command_host_command "uname -n" + command_host_format "{stdout}" + command_host_interval "0" + command_host_rendermode "static" + + command_user_command "whoami" + command_user_format "{stdout}" + command_user_interval "10" + command_user_rendermode "static" + + datetime "{format}" + datetime_format "%Y-%m-%d 󰅐 %H:%M" + datetime_timezone "Europe/Stockholm" + } + } + } +'' diff --git a/options/programs.nix b/options/programs.nix index 3f5beac..4d148eb 100644 --- a/options/programs.nix +++ b/options/programs.nix @@ -94,6 +94,11 @@ default = "Ctrl a"; description = "Mod key to use for zellij to enter tmux mode and exits locked mode."; }; + zjstatus.theme = lib.mkOption { + type = lib.types.path; + default = ../home/programs/zellij/themes/zjstatus/catppuccin-mocha.nix; + description = "Default zellij status theme"; + }; }; foot.enable = lib.mkEnableOption "foot"; };