get back wofi for now

Signed-off-by: Hadi <112569860+anotherhadi@users.noreply.github.com>
This commit is contained in:
Hadi
2025-10-13 12:05:49 +02:00
parent 45aa87f9f8
commit e79e8d0d3b
4 changed files with 148 additions and 3 deletions

View File

@@ -10,8 +10,10 @@
"$mod,V, exec, uwsm app -- ${pkgs.protonvpn-gui}/bin/protonvpn-app" # Proton VPN
"$mod,A, exec, uwsm app -- ${pkgs.proton-authenticator}/bin/proton-authenticator" # Proton Authenticator
"$mod,L, exec, uwsm app -- ${pkgs.hyprlock}/bin/hyprlock" # Lock
# "$mod,SPACE, exec, vicinae" # Launcher FIXME: broken
"$mod,X, exec, powermenu" # Powermenu
"$mod,SPACE, exec, vicinae" # Launcher
"$mod,SPACE, exec, menu" # Launcher
"$shiftMod,SPACE, exec, hyprfocus-toggle" # Toggle HyprFocus
"$mod,Q, killactive," # Close window

View File

@@ -0,0 +1,100 @@
# Wofi is a launcher for Wayland, inspired by rofi.
{
config,
pkgs,
lib,
...
}: let
accent = "#${config.lib.stylix.colors.base0D}";
background = "#${config.lib.stylix.colors.base00}";
background-alt = "#${config.lib.stylix.colors.base01}";
foreground = "#${config.lib.stylix.colors.base05}";
font = config.stylix.fonts.serif.name;
rounding = config.theme.rounding;
font-size = config.stylix.fonts.sizes.popups;
in {
home.packages = with pkgs; [wofi-emoji];
programs.wofi = {
enable = true;
settings = {
allow_markup = true;
width = 450;
show = "drun";
prompt = "Apps";
normal_window = true;
height = 305;
allow_images = true;
image_size = 24;
insensitive = true;
hide_scroll = true;
no_actions = true;
gtk_dark = true;
};
style =
lib.mkForce
# css
''
* {
font-family: "${font}";
font-weight: 500;
font-size: ${toString font-size}px;
}
#window {
background-color: ${background};
color: ${foreground};
border-radius: ${toString rounding}px;
}
#outer-box {
padding: 20px;
}
#input {
background-color: ${background-alt};
border: 0px solid ${accent};
color: ${foreground};
padding: 8px 12px;
}
#scroll {
margin-top: 20px;
}
#inner-box {}
#img {
padding-right: 8px;
}
#text {
color: ${foreground};
}
#text:selected {
color: ${foreground};
}
#entry {
padding: 6px;
}
#entry:selected {
background-color: ${accent};
color: ${foreground};
}
#unselected {}
#selected {}
#input,
#entry:selected {
border-radius: ${toString rounding}px;
}
'';
};
}