nixos-config/home/modules/rofi.nix
2024-04-14 17:57:44 +02:00

105 lines
2.6 KiB
Nix

{
config,
pkgs,
inputs,
lib,
...
}: {
programs.rofi = {
enable = true;
package = pkgs.rofi-wayland;
extraConfig = {
terminal = "wezterm";
disable-history = false;
show-icons = true;
sidebar-mode = true;
sort = true;
drun-display-format = "{icon} {name}";
display-drun = " Run ";
modi = lib.strings.concatStringsSep "," [
"run"
"drun"
"filebrowser"
];
font = "Hack Nerd Font Mono 13";
};
theme = let
mkLiteral = config.lib.formats.rasi.mkLiteral;
in {
"*" = {
bg = mkLiteral "#303446FF";
fg = mkLiteral "#D9E0EEFF";
ac = mkLiteral "#8CAAEEFF";
};
"#window" = {
location = mkLiteral "center";
width = mkLiteral "50%";
};
"#prompt" = {
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
};
"#textbox-prompt-colon" = {
text-color = mkLiteral "@fg";
};
"#entry" = {
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
blink = mkLiteral "true";
};
"#inputbar" = {
children = mkLiteral "[ prompt, entry ]";
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
padding = mkLiteral "5px";
};
"#listview" = {
background-color = mkLiteral "@bg";
columns = mkLiteral "1";
lines = mkLiteral "5";
cycle = mkLiteral "false";
dynamic = mkLiteral "true";
};
"#mainbox" = {
background-color = mkLiteral "@bg";
border = mkLiteral "3px";
border-color = mkLiteral "@ac";
children = mkLiteral "[ inputbar, listview ]";
padding = mkLiteral "10px";
};
"#element" = {
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
padding = mkLiteral "5px";
};
"#element-icon" = {
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
size = mkLiteral "32px";
};
"#element-text" = {
background-color = mkLiteral "@bg";
text-color = mkLiteral "@fg";
padding = mkLiteral "5px";
};
"#element selected" = {
border = mkLiteral "3px";
border-color = mkLiteral "@ac";
};
};
};
#home.file.".config/rofi/config.rasi".text = builtins.readFile ../config-files/rofi/config.rasi;
#home.file.".local/share/rofi/themes/catppuccin-mocha.rasi".text = builtins.readFile ../config-files/rofi/catppuccin-mocha.rasi;
}