415 lines
11 KiB
Nix
415 lines
11 KiB
Nix
{ config
|
|
, lib
|
|
, pkgs
|
|
, rosewater
|
|
, flamingo
|
|
, pink
|
|
, mauve
|
|
, red
|
|
, maroon
|
|
, peach
|
|
, yellow
|
|
, green
|
|
, teal
|
|
, sky
|
|
, sapphire
|
|
, blue
|
|
, lavender
|
|
, text
|
|
, subtext1
|
|
, subtext0
|
|
, overlay2
|
|
, overlay1
|
|
, overlay0
|
|
, surface2
|
|
, surface1
|
|
, surface0
|
|
, base
|
|
, mantle
|
|
, crust
|
|
}:
|
|
|
|
with lib;
|
|
let
|
|
cfg = config.my.theming;
|
|
in
|
|
{
|
|
home-manager.users.moritz = {
|
|
programs = {
|
|
kitty.extraConfig = ''
|
|
# vim:ft=kitty
|
|
|
|
## name: Catppuccin-Frappe
|
|
## author: Pocco81 (https://github.com/Pocco81)
|
|
## license: MIT
|
|
## upstream: https://github.com/catppuccin/kitty/blob/main/frappe.conf
|
|
## blurb: Soothing pastel theme for the high-spirited!
|
|
|
|
|
|
|
|
# The basic colors
|
|
foreground #${text}
|
|
background #${base}
|
|
selection_foreground #${base}
|
|
selection_background #${rosewater}
|
|
|
|
# Cursor colors
|
|
cursor #${rosewater}
|
|
cursor_text_color #${base}
|
|
|
|
# URL underline color when hovering with mouse
|
|
url_color #${rosewater}
|
|
|
|
# Kitty window border colors
|
|
active_border_color #${lavender}
|
|
inactive_border_color #${overlay0}
|
|
bell_border_color #${yellow}
|
|
|
|
# OS Window titlebar colors
|
|
wayland_titlebar_color system
|
|
macos_titlebar_color system
|
|
|
|
# Tab bar colors
|
|
active_tab_foreground #${crust}
|
|
active_tab_background #${mauve}
|
|
inactive_tab_foreground #${text}
|
|
inactive_tab_background #${mantle}
|
|
tab_bar_background #${crust}
|
|
|
|
# Colors for marks (marked text in the terminal)
|
|
mark1_foreground #${base}
|
|
mark1_background #${lavender}
|
|
mark2_foreground #${base}
|
|
mark2_background #${mauve}
|
|
mark3_foreground #${base}
|
|
mark3_background #${sapphire}
|
|
|
|
# The 16 terminal colors
|
|
|
|
# black
|
|
color0 #${surface1}
|
|
color8 #${surface2}
|
|
|
|
# red
|
|
color1 #${red}
|
|
color9 #${red}
|
|
|
|
# green
|
|
color2 #${green}
|
|
color10 #${green}
|
|
|
|
# yellow
|
|
color3 #${yellow}
|
|
color11 #${yellow}
|
|
|
|
# blue
|
|
color4 #${blue}
|
|
color12 #${blue}
|
|
|
|
# magenta
|
|
color5 #${pink}
|
|
color13 #${pink}
|
|
|
|
# cyan
|
|
color6 #${teal}
|
|
color14 #${teal}
|
|
|
|
# white
|
|
color7 #${subtext1}
|
|
color15 #${subtext0}
|
|
'';
|
|
zathura.extraConfig = ''
|
|
set window-title-basename "true"
|
|
set selection-clipboard "clipboard"
|
|
|
|
set default-fg "#${text}"
|
|
set default-bg "#${base}"
|
|
|
|
set completion-bg "#${surface0}"
|
|
set completion-fg "#${text}"
|
|
set completion-highlight-bg "#575268"
|
|
set completion-highlight-fg "#${text}"
|
|
set completion-group-bg "#${surface0}"
|
|
set completion-group-fg "#${blue}"
|
|
|
|
set statusbar-fg "#${text}"
|
|
set statusbar-bg "#${surface0}"
|
|
|
|
set notification-bg "#${surface0}"
|
|
set notification-fg "#${text}"
|
|
set notification-error-bg "#${surface0}"
|
|
set notification-error-fg "#${red}"
|
|
set notification-warning-bg "#${surface0}"
|
|
set notification-warning-fg "#FAE3B0"
|
|
|
|
set inputbar-fg "#${text}"
|
|
set inputbar-bg "#${surface0}"
|
|
|
|
set recolor-lightcolor "#${base}"
|
|
set recolor-darkcolor "#${text}"
|
|
|
|
set index-fg "#${text}"
|
|
set index-bg "#${base}"
|
|
set index-active-fg "#${text}"
|
|
set index-active-bg "#${surface0}"
|
|
|
|
set render-loading-bg "#${base}"
|
|
set render-loading-fg "#${text}"
|
|
|
|
set highlight-color "#575268"
|
|
set highlight-fg "#${pink}"
|
|
set highlight-active-color "#${pink}"
|
|
'';
|
|
rofi = {
|
|
theme = "custom";
|
|
extraConfig = {
|
|
show-icons = true;
|
|
terminal = "alacritty";
|
|
drun-display-format = "{icon} {name}";
|
|
location = 0;
|
|
disable-history = false;
|
|
hide-scrollbar = true;
|
|
display-drun = " Apps ";
|
|
display-run = " Run ";
|
|
display-window = " Window";
|
|
display-Network = " Network";
|
|
sidebar-mode = true;
|
|
};
|
|
};
|
|
};
|
|
xsession.windowManager.bspwm.settings = {
|
|
focused_border_color = "#${mauve}";
|
|
normal_border_color = "#${base}";
|
|
active_border_color = "#${base}";
|
|
};
|
|
services = {
|
|
dunst.settings = {
|
|
global = {
|
|
# Defines color of the frame around the notification window.
|
|
frame_color = "#${blue}";
|
|
|
|
# Define a color for the separator.
|
|
# possible values are:
|
|
# * auto: dunst tries to find a color fitting to the background;
|
|
# * foreground: use the same color as the foreground;
|
|
# * frame: use the same color as the frame;
|
|
# * anything else will be interpreted as a X color.
|
|
separator_color = "frame";
|
|
};
|
|
|
|
urgency_low = {
|
|
background = "#${base}";
|
|
foreground = "#${text}";
|
|
};
|
|
urgency_normal = {
|
|
background = "#${base}";
|
|
foreground = "#${text}";
|
|
};
|
|
urgency_critical = {
|
|
background = "#${base}";
|
|
foreground = "#${text}";
|
|
frame_color = "#${peach}";
|
|
};
|
|
};
|
|
polybar = {
|
|
config = {
|
|
"bar/bottom" = {
|
|
background = base;
|
|
foreground = text;
|
|
border-color = base;
|
|
};
|
|
"module/bspwm" = {
|
|
label-focused-foreground = pink;
|
|
label-occupied-foreground = overlay1;
|
|
label-urgent-foreground = maroon;
|
|
label-empty-foreground = overlay1;
|
|
label-separator-foreground = base;
|
|
};
|
|
"module/cpu" = {
|
|
format-foreground = base;
|
|
format-background = green;
|
|
};
|
|
"module/time" = {
|
|
format-foreground = base;
|
|
format-background = blue;
|
|
};
|
|
"module/date" = {
|
|
format-foreground = base;
|
|
format-background = peach;
|
|
};
|
|
"module/memory" = {
|
|
format-foreground = base;
|
|
format-background = blue;
|
|
};
|
|
"module/pulseaudio" = {
|
|
format-volume-foreground = base;
|
|
format-volume-background = mauve;
|
|
label-muted = "婢 muted";
|
|
format-muted-foreground = base;
|
|
format-muted-background = red;
|
|
};
|
|
"module/network" = {
|
|
format-connected-foreground = base;
|
|
format-connected-background = mauve;
|
|
};
|
|
"module/battery" = {
|
|
format-charging-foreground = base;
|
|
format-charging-background = green;
|
|
format-full-foreground = base;
|
|
format-full-background = green;
|
|
format-discharging-foreground = base;
|
|
format-discharging-background = red;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
xdg.configFile = {
|
|
"fish/conf.d/theme.fish".text = ''
|
|
# Catppuccin color palette
|
|
|
|
# --> special
|
|
set -l foreground ${text}
|
|
set -l selection ${surface0}
|
|
|
|
# --> palette
|
|
set -l teal ${teal}
|
|
set -l flamingo ${flamingo}
|
|
set -l mauve ${mauve}
|
|
set -l pink ${pink}
|
|
set -l red ${red}
|
|
set -l peach ${peach}
|
|
set -l green ${green}
|
|
set -l yellow ${yellow}
|
|
set -l blue ${blue}
|
|
set -l gray ${overlay0}
|
|
|
|
# Syntax Highlighting
|
|
set -g fish_color_normal $foreground
|
|
set -g fish_color_command $blue
|
|
set -g fish_color_param $flamingo
|
|
set -g fish_color_keyword $red
|
|
set -g fish_color_quote $green
|
|
set -g fish_color_redirection $pink
|
|
set -g fish_color_end $peach
|
|
set -g fish_color_error $red
|
|
set -g fish_color_gray $gray
|
|
set -g fish_color_selection --background=$selection
|
|
set -g fish_color_search_match --background=$selection
|
|
set -g fish_color_operator $pink
|
|
set -g fish_color_escape $flamingo
|
|
set -g fish_color_autosuggestion $gray
|
|
set -g fish_color_cancel $red
|
|
|
|
# Prompt
|
|
set -g fish_color_cwd $yellow
|
|
set -g fish_color_user $teal
|
|
set -g fish_color_host $blue
|
|
|
|
# Completion Pager
|
|
set -g fish_pager_color_progress $gray
|
|
set -g fish_pager_color_prefix $pink
|
|
set -g fish_pager_color_completion $foreground
|
|
set -g fish_pager_color_description $gray
|
|
'';
|
|
"rofi/custom.rasi".text = ''
|
|
* {
|
|
bg-col: #${base};
|
|
bg-col-light: #${base};
|
|
border-col: #${base};
|
|
selected-col: #${base};
|
|
blue: #${blue};
|
|
fg-col: #${text};
|
|
fg-col2: #${red};
|
|
grey: #${overlay0};
|
|
|
|
width: 900;
|
|
font: "JetBrainsMono Nerd Font 14";
|
|
}
|
|
|
|
element-text, element-icon , mode-switcher {
|
|
background-color: inherit;
|
|
text-color: inherit;
|
|
}
|
|
|
|
window {
|
|
height: 360px;
|
|
border: 3px;
|
|
border-color: @border-col;
|
|
background-color: @bg-col;
|
|
}
|
|
|
|
mainbox {
|
|
background-color: @bg-col;
|
|
}
|
|
|
|
inputbar {
|
|
children: [prompt,entry];
|
|
background-color: @bg-col;
|
|
border-radius: 5px;
|
|
padding: 2px;
|
|
}
|
|
|
|
prompt {
|
|
background-color: @blue;
|
|
padding: 6px;
|
|
text-color: @bg-col;
|
|
border-radius: 3px;
|
|
margin: 20px 0px 0px 20px;
|
|
}
|
|
|
|
textbox-prompt-colon {
|
|
expand: false;
|
|
str: ":";
|
|
}
|
|
|
|
entry {
|
|
padding: 6px;
|
|
margin: 20px 0px 0px 10px;
|
|
text-color: @fg-col;
|
|
background-color: @bg-col;
|
|
}
|
|
|
|
listview {
|
|
border: 0px 0px 0px;
|
|
padding: 6px 0px 0px;
|
|
margin: 10px 0px 0px 20px;
|
|
columns: 2;
|
|
lines: 5;
|
|
background-color: @bg-col;
|
|
}
|
|
|
|
element {
|
|
padding: 5px;
|
|
background-color: @bg-col;
|
|
text-color: @fg-col ;
|
|
}
|
|
|
|
element-icon {
|
|
size: 25px;
|
|
}
|
|
|
|
element selected {
|
|
background-color: @selected-col ;
|
|
text-color: @fg-col2 ;
|
|
}
|
|
|
|
mode-switcher {
|
|
spacing: 0;
|
|
}
|
|
|
|
button {
|
|
padding: 10px;
|
|
background-color: @bg-col-light;
|
|
text-color: @grey;
|
|
vertical-align: 0.5;
|
|
horizontal-align: 0.5;
|
|
}
|
|
|
|
button selected {
|
|
background-color: @bg-col;
|
|
text-color: @blue;
|
|
}
|
|
'';
|
|
};
|
|
};
|
|
}
|