mirror of
https://github.com/anotherhadi/nixy.git
synced 2026-07-06 16:12:33 +02:00
137 lines
3.6 KiB
Nix
137 lines
3.6 KiB
Nix
{ config, pkgs, ... }: let
|
|
c = config.lib.stylix.colors;
|
|
font = config.stylix.fonts.sansSerif.name;
|
|
fontSize = toString config.stylix.fonts.sizes.applications;
|
|
gaps = toString config.theme.gaps-out;
|
|
theme = pkgs.writeText "launcher.rasi" ''
|
|
configuration {
|
|
modi: "drun,run";
|
|
case-sensitive: false;
|
|
cycle: true;
|
|
normalize-match: true;
|
|
show-icons: false;
|
|
matching: "normal";
|
|
tokenize: true;
|
|
kb-cancel: "Escape,MousePrimary";
|
|
drun-match-fields: "name,exec,generic,comment";
|
|
drun-display-format: "{name}";
|
|
drun-url-launcher: "xdg-open";
|
|
drun-show-actions: false;
|
|
disable-history: false;
|
|
sorting-method: "normal";
|
|
terminal: "ghostty";
|
|
hover-select: true;
|
|
me-select-entry: "";
|
|
me-accept-entry: [ "MousePrimary" ];
|
|
}
|
|
|
|
* {
|
|
background: transparent;
|
|
background-alt: #${c.base01}ff;
|
|
foreground: #${c.base05}ff;
|
|
active: #${c.base0D}ff;
|
|
inactive: #${c.base03}ff;
|
|
selected-fg: #${c.base00}ff;
|
|
font: "${font}, Bold ${fontSize}";
|
|
}
|
|
|
|
window {
|
|
transparency: "real";
|
|
location: north;
|
|
anchor: north;
|
|
padding: ${gaps}px ${gaps}px 0;
|
|
margin: 0;
|
|
width: 100%;
|
|
background-color: transparent;
|
|
border: 0px;
|
|
}
|
|
|
|
mainbox {
|
|
orientation: horizontal;
|
|
spacing: 0;
|
|
padding: 6px 14px;
|
|
border-radius: 100px;
|
|
background-color: @background-alt;
|
|
children: [ "inputbar", "listview" ];
|
|
}
|
|
|
|
inputbar {
|
|
expand: false;
|
|
spacing: 8px;
|
|
padding: 0;
|
|
background-color: transparent;
|
|
color: @foreground;
|
|
children: [ "prompt", "entry" ];
|
|
}
|
|
|
|
prompt {
|
|
background-color: transparent;
|
|
color: @active;
|
|
padding: 0 2px 0 0;
|
|
vertical-align: 0.5;
|
|
}
|
|
|
|
entry {
|
|
background-color: transparent;
|
|
color: inherit;
|
|
placeholder-color: @inactive;
|
|
placeholder: "Search...";
|
|
vertical-align: 0.5;
|
|
width: 180px;
|
|
}
|
|
|
|
listview {
|
|
layout: horizontal;
|
|
lines: 1;
|
|
dynamic: true;
|
|
scrollbar: false;
|
|
spacing: 0;
|
|
padding: 0 0 0 14px;
|
|
background-color: transparent;
|
|
color: @foreground;
|
|
}
|
|
|
|
element {
|
|
enabled: true;
|
|
spacing: 0;
|
|
padding: 2px 10px;
|
|
border-radius: 100px;
|
|
background-color: transparent;
|
|
color: @foreground;
|
|
cursor: pointer;
|
|
children: [ "element-text" ];
|
|
}
|
|
|
|
element selected.normal {
|
|
background-color: @active;
|
|
color: @selected-fg;
|
|
}
|
|
|
|
element-text {
|
|
background-color: transparent;
|
|
color: inherit;
|
|
vertical-align: 0.5;
|
|
}
|
|
|
|
message {
|
|
padding: 0;
|
|
background-color: transparent;
|
|
color: @foreground;
|
|
}
|
|
|
|
error-message {
|
|
padding: 10px;
|
|
border-radius: 100px;
|
|
background-color: @background-alt;
|
|
color: @foreground;
|
|
}
|
|
'';
|
|
in {
|
|
stylix.targets.rofi.enable = false;
|
|
|
|
programs.rofi = {
|
|
enable = true;
|
|
theme = "${theme}";
|
|
};
|
|
}
|