nix/home/programs/rofi.nix
2022-10-10 22:40:30 -04:00

98 lines
2.8 KiB
Nix

{
pkgs,
config,
...
}: {
programs.rofi = {
enable = true;
package = pkgs.rofi-wayland;
cycle = true;
font = "IBM Plex Sans 13";
location = "center";
extraConfig = {
modi = "run,ssh,drun,filebrowser";
};
terminal = "${pkgs.kitty}/bin/kitty";
theme = let
inherit (config.lib.formats.rasi) mkLiteral;
in {
"*" = {
accent-color = mkLiteral "#bb9af7ff";
background-color = mkLiteral "#1a1b26ff";
blue = mkLiteral "#7aa2f7ff";
border-color = mkLiteral "#cfc9c2ff";
font = "Input Mono 12";
foreground-color = mkLiteral "#a9b1d6ff";
green = mkLiteral "#73dacaff";
height = 752;
lightfg = mkLiteral "#414868ff";
red = mkLiteral "#f7768eff";
show-icons = true;
width = 500;
display-drun = "";
};
"#button selected" = {
background-color = mkLiteral "@background-color";
text-color = mkLiteral "@accent-color";
};
"#entry" = {
text-color = mkLiteral "@foreground-color";
spacing = mkLiteral "2";
border-radius = mkLiteral "8";
};
"#entry selected" = {
text-color = mkLiteral "@blue";
spacing = mkLiteral "1";
border-radius = mkLiteral "8";
};
"#element-icon" = {
background-color = mkLiteral "@background-color";
text-color = mkLiteral "@foreground-color";
};
"#element-text" = {
background-color = mkLiteral "@background-color";
text-color = mkLiteral "@foreground-color";
};
"#element-text selected" = {
background-color = mkLiteral "@blue";
text-color = mkLiteral "@background-color";
border-radius = mkLiteral "8px";
};
"#element alternate" = {
background-color = mkLiteral "@background-color";
text-color = mkLiteral "@accent-color";
};
"#element normal" = {
background-color = mkLiteral "@blue";
text-color = mkLiteral "@accent-color";
};
"#element selected" = {
background-color = mkLiteral "@blue";
text-color = mkLiteral "@accent-color";
border-radius = mkLiteral "8";
};
"#inputbar" = {
children = map mkLiteral ["prompt" "entry"];
};
"#prompt" = {
text-color = mkLiteral "@accent-color";
};
"#textbox" = {
text-color = mkLiteral "@foreground-color";
};
"#textbox-prompt-colon" = {
expand = true;
str = ":";
margin = mkLiteral "0px 0.3em 0em 0em";
text-color = mkLiteral "@lightfg";
};
"#window" = {
border = mkLiteral "2px";
border-color = mkLiteral "@border-color";
padding = 25;
width = 500;
height = 752;
};
};
};
}