feat: consolidate Kanagawa theme and refine Walker and Limine styling

This commit is contained in:
kiri committed 2026-09-09 21:46:36 +02:00
1 parent 748c2060a4
commit abca5c2d75
15 files changed
+340 -235

No files matched your search

+21 -1
View File
@@ -118,6 +118,26 @@ reports are not a fresh comparison with this baseline.
## Open choices and next discussion ## Open choices and next discussion
Current focus: look and feel/theming, informed by `~/sync/notes/setup-todo.md`.
The user accepted complete Nix theme modules with arbitrary plugin/configuration
behavior, rather than Stylix or a palette-only abstraction. The single import in
`modules/capabilities/theme.nix` selects `./_themes/kanagawa.nix`. `_themes` is
excluded from automatic module discovery, so unselected themes are not loaded.
Kanagawa owns GTK/icons/cursor, Qt integration, Kitty, Niri colors, Noctalia
palette/font/wallpaper, Herdr colors, the native Neovim plugin and its setup, and
Limine/SDDM/Plymouth appearance. Only Kanagawa is implemented so far; switching
means selecting another module and rebuilding, not a live theme picker.
Walker shares a compact layout with theme-provided colors: reduced padding,
24px icons, clearer secondary text, and a smaller minimum window height.
Limine's terminal background is fully transparent with no edge gradient so it
does not obscure the wallpaper. Runtime appearance needs user verification.
SDDM's purple-leaves theme and Plymouth's spinner are retained within Kanagawa;
their visual redesign and the low-frame-rate boot animation remain open.
Verification: flake evaluation and both workstation builds passed. A headless
check of the built Neovim confirmed Kanagawa Wave, inactive-window dimming and
the custom gutter setting. Rendered Herdr TOML, Walker XML and Limine settings
also passed targeted checks. No system activation or live desktop changes performed.
Dictation: plain local transcription is selected; rambling cleanup is deferred. Dictation: plain local transcription is selected; rambling cleanup is deferred.
Handy preferences are application-owned again: the Nix settings generator and Handy preferences are application-owned again: the Nix settings generator and
startup reset are removed. The existing settings file is left untouched. startup reset are removed. The existing settings file is left untouched.
@@ -158,7 +178,7 @@ Niri workspace grouping stays informal while the user discovers what fits; Herdr
provides enough structure for now. No workspace rules or fixed layout are needed. provides enough structure for now. No workspace rules or fixed layout are needed.
Further Herdr configuration, agent workflows and project management are explicitly Further Herdr configuration, agent workflows and project management are explicitly
deferred at the user's request. Do not use them as the default next task or request deferred at the user's request. Do not use them as the default next task or request
workflow feedback unless the user reopens the topic. The next area is not selected. workflow feedback unless the user reopens the topic. The active area is theming.
Agent evaluation is Agent evaluation is
explicitly deferred. Do not resume replacement-tool comparisons or ask for an explicitly deferred. Do not resume replacement-tool comparisons or ask for an
evaluation task/budget as a prerequisite for this work. evaluation task/budget as a prerequisite for this work.
+6
View File
@@ -25,6 +25,12 @@ use a flake to declare its tools without Nix owning the surrounding workspace.
## What that means so far ## What that means so far
- Themes are complete Nix modules, not just palettes. Select one through
`modules/capabilities/theme.nix`; it may install native theme plugins, configure
their behavior and choose assets for each application. Kanagawa is the first
implementation. Shared interaction/layout choices stay in capability modules.
Stylix is not selected: preserving theme-specific behavior matters more than
forcing applications through one generated color scheme.
- Neovim, Niri, Walker and the terminal feel right: direct, keyboard-driven - Neovim, Niri, Walker and the terminal feel right: direct, keyboard-driven
interaction with useful connections to the rest of the environment. interaction with useful connections to the rest of the environment.
- Use Handy for local plain dictation, mainly English with occasional Dutch. - Use Handy for local plain dictation, mainly English with occasional Dutch.
+277
View File
@@ -0,0 +1,277 @@
{ config, lib, ... }:
let
palette = (import ./_kanagawa-palette.nix).palette;
hex = lib.removePrefix "#";
cursor = {
name = "phinger-cursors-light";
size = 24;
};
in
{
flake.modules.nixos.theme =
{ pkgs, ... }:
{
home-manager.sharedModules = [ config.flake.modules.homeManager.theme ];
environment.systemPackages = [ pkgs.phinger-cursors ];
};
flake.modules.homeManager.theme =
{ pkgs, ... }:
let
version = "unstable-2025-10-23";
src = pkgs.fetchFromGitHub {
owner = "Fausto-Korpsvart";
repo = "Kanagawa-GKT-Theme";
rev = "55ca4ba249eba21f861b9866b71ab41bb8930318";
hash = "sha256-UdMoMx2DoovcxSp/zBZ3PRv/Qpj+prd0uPm1gmdak2E=";
};
kanagawaGtkTheme = pkgs.stdenvNoCC.mkDerivation {
pname = "kanagawa-gtk-theme";
inherit src version;
nativeBuildInputs = [ pkgs.sassc ];
installPhase = ''
runHook preInstall
mkdir -p "$out/share/themes"
bash ./themes/install.sh \
--dest "$out/share/themes" \
--name Kanagawa \
--color dark
rm -r "$out/share/themes/Kanagawa-Dark/gtk-2.0"
runHook postInstall
'';
};
in
{
home.pointerCursor = cursor // {
enable = true;
package = pkgs.phinger-cursors;
dotIcons.enable = false;
gtk.enable = true;
};
gtk = {
enable = true;
theme = {
name = "Kanagawa-Dark";
package = kanagawaGtkTheme;
};
gtk4.theme = null;
iconTheme = {
name = "Kanagawa";
package = pkgs.kanagawa-icon-theme.overrideAttrs (_: {
inherit src version;
});
};
};
qt = {
enable = true;
platformTheme.name = "gtk3";
};
xdg.systemDirs.data = [
"${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}"
"${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}"
];
};
flake.modules.nixos.limine =
{ config, pkgs, ... }:
let
terminalPalette = palette.terminal;
mkPalette = colors: lib.concatStringsSep ";" (map hex colors);
in
{
boot.loader.limine.style = {
wallpapers = [ pkgs.nixos-artwork.wallpapers.simple-dark-gray-bootloader.gnomeFilePath ];
wallpaperStyle = "stretched";
backdrop = hex palette.secondaryBackground;
graphicalTerminal = {
# TT is transparency: let the boot wallpaper show through the terminal.
background = "FF${hex palette.background}";
foreground = hex palette.foreground;
brightForeground = hex palette.selectionForeground;
brightBackground = hex palette.selectionBackground;
palette = mkPalette [
terminalPalette.color0
terminalPalette.color1
terminalPalette.color2
terminalPalette.color3
terminalPalette.color4
terminalPalette.color5
terminalPalette.color6
terminalPalette.color7
];
brightPalette = mkPalette [
terminalPalette.color8
terminalPalette.color9
terminalPalette.color10
terminalPalette.color11
terminalPalette.color12
terminalPalette.color13
terminalPalette.color14
terminalPalette.color15
];
font = {
scale = "2x2";
spacing = 1;
};
margin = 64;
marginGradient = 0;
};
interface = {
branding = config.networking.hostName;
brandingColor = hex palette.accents.blue;
};
};
};
flake.modules.nixos.sddm = { pkgs, ... }: {
services.displayManager.sddm = {
theme = "${
pkgs.sddm-astronaut.override { embeddedTheme = "purple_leaves"; }
}/share/sddm/themes/sddm-astronaut-theme";
extraPackages = [ pkgs.kdePackages.qtmultimedia ];
settings.Theme = {
CursorTheme = cursor.name;
CursorSize = cursor.size;
};
};
};
flake.modules.nixos.plymouth = { pkgs, ... }: {
boot.plymouth = {
theme = "spinner_alt";
themePackages = [ pkgs.adi1090x-plymouth-themes ];
};
};
flake.modules.homeManager.terminal-kitty = {
programs.kitty = {
settings = {
bold_font = "postscript_name=JetBrainsMono-Bold";
bold_italic_font = "postscript_name=JetBrainsMono-BoldItalic";
};
font = {
name = "JetBrains Mono";
size = 11;
};
extraConfig = ''
# Nerd Fonts v3.4.0
symbol_map U+e000-U+e00a,U+e0a0-U+e0a2,U+e0a3,U+e0b0-U+e0b3,U+e0b4-U+e0c8,U+e0ca,U+e0cc-U+e0d7,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b7,U+e700-U+e8ef,U+ea60-U+ec1e,U+ed00-U+efce,U+f000-U+f2ff,U+f300-U+f381,U+f400-U+f533,U+f0001-U+f1af0 Symbols Nerd Font Mono
## name: Kanagawa Wave
## license: MIT
## author: Tommaso Laurenzi
## upstream: https://github.com/rebelot/kanagawa.nvim/
background ${palette.background}
foreground ${palette.foreground}
selection_background ${palette.selectionBackground}
selection_foreground ${palette.selectionForeground}
url_color ${palette.url}
cursor ${palette.cursor}
active_tab_background ${palette.background}
active_tab_foreground ${palette.selectionForeground}
inactive_tab_background ${palette.background}
inactive_tab_foreground ${palette.muted}
color0 ${palette.terminal.color0}
color1 ${palette.terminal.color1}
color2 ${palette.terminal.color2}
color3 ${palette.terminal.color3}
color4 ${palette.terminal.color4}
color5 ${palette.terminal.color5}
color6 ${palette.terminal.color6}
color7 ${palette.terminal.color7}
color8 ${palette.terminal.color8}
color9 ${palette.terminal.color9}
color10 ${palette.terminal.color10}
color11 ${palette.terminal.color11}
color12 ${palette.terminal.color12}
color13 ${palette.terminal.color13}
color14 ${palette.terminal.color14}
color15 ${palette.terminal.color15}
color16 ${palette.terminal.color16}
color17 ${palette.terminal.color17}
'';
};
};
flake.modules.homeManager.niri = {
dconf.settings."org/gnome/desktop/interface".color-scheme = "prefer-dark";
wayland.windowManager.niri.settings.layout.border = {
active-color = palette.accents.blue;
inactive-color = palette.subtleBorder;
urgent-color = palette.accents.red;
};
};
flake.modules.homeManager.ai = {
xdg.configFile."herdr/config.toml".text = lib.mkAfter ''
[theme]
name = "kanagawa"
auto_switch = false
'';
};
flake.modules.homeManager.noctalia =
{ config, ... }:
let
wallpaper = "${config.home.homeDirectory}/media/images/wallpapers/green-leaves.png";
in
{
programs.noctalia.settings = {
shell.font_family = "Lexend";
theme = {
builtin = "Kanagawa";
community_palette = "Kanagawa Paper";
wallpaper_scheme = "m3-content";
};
wallpaper = {
default.path = wallpaper;
last.path = wallpaper;
};
};
};
flake.modules.homeManager.neovim = { pkgs, ... }: {
wrappers.neovim.specs.theme = {
data = pkgs.vimPlugins.kanagawa-nvim;
before = [ "INIT_MAIN" ];
config = ''
require("kanagawa").setup({
dimInactive = true,
colors = {
theme = {
all = {
ui = { bg_gutter = "none" },
},
},
},
})
vim.cmd.colorscheme("kanagawa-wave")
'';
};
};
flake.modules.homeManager.walker = {
programs.walker.themes.constellation.style = lib.mkAfter ''
@define-color window_bg_color ${palette.background};
@define-color accent_bg_color ${palette.selectionBackground};
@define-color theme_fg_color ${palette.foreground};
@define-color error_bg_color ${palette.terminal.color1};
@define-color error_fg_color ${palette.foreground};
'';
};
}
-4
View File
@@ -123,10 +123,6 @@ in
xdg.configFile."herdr/config.toml".text = '' xdg.configFile."herdr/config.toml".text = ''
onboarding = false onboarding = false
[theme]
name = "kanagawa"
auto_switch = false
[ui] [ui]
agent_panel_sort = "spaces" agent_panel_sort = "spaces"
+2 -49
View File
@@ -1,10 +1,4 @@
{ lib, ... }: { ... }:
let
palette = (import ./_kanagawa.nix).palette;
hex = lib.removePrefix "#";
terminalPalette = palette.terminal;
mkPalette = colors: lib.concatStringsSep ";" (map hex colors);
in
{ {
flake.modules.nixos.limine = flake.modules.nixos.limine =
{ config, lib, ... }: { config, lib, ... }:
@@ -26,48 +20,7 @@ in
maxGenerations = 10; maxGenerations = 10;
resolution = interfaceResolution; resolution = interfaceResolution;
style = { style.interface.resolution = interfaceResolution;
backdrop = hex palette.secondaryBackground;
graphicalTerminal = {
background = "00${hex palette.background}";
foreground = hex palette.foreground;
brightForeground = hex palette.selectionForeground;
brightBackground = hex palette.selectionBackground;
palette = mkPalette [
terminalPalette.color0
terminalPalette.color1
terminalPalette.color2
terminalPalette.color3
terminalPalette.color4
terminalPalette.color5
terminalPalette.color6
terminalPalette.color7
];
brightPalette = mkPalette [
terminalPalette.color8
terminalPalette.color9
terminalPalette.color10
terminalPalette.color11
terminalPalette.color12
terminalPalette.color13
terminalPalette.color14
terminalPalette.color15
];
font = {
scale = "2x2";
spacing = 1;
};
margin = 64;
marginGradient = 24;
};
interface = {
branding = config.networking.hostName;
brandingColor = hex palette.accents.blue;
resolution = interfaceResolution;
};
};
}; };
}; };
}; };
-4
View File
@@ -171,10 +171,6 @@ in
ui = { ui = {
lazy = true; lazy = true;
data = with pkgs.vimPlugins; [ data = with pkgs.vimPlugins; [
{
data = kanagawa-nvim;
lazy = false;
}
render-markdown-nvim render-markdown-nvim
lualine-nvim lualine-nvim
gitsigns-nvim gitsigns-nvim
@@ -1,15 +1,3 @@
require("kanagawa").setup({
dimInactive = true,
colors = {
theme = {
all = {
ui = { bg_gutter = "none" },
},
},
},
})
vim.cmd.colorscheme("kanagawa-wave")
require("lz.n").load({ require("lz.n").load({
{ {
"lualine.nvim", "lualine.nvim",
@@ -34,7 +22,7 @@ require("lz.n").load({
require("lualine").setup({ require("lualine").setup({
options = { options = {
theme = "kanagawa", theme = "auto",
component_separators = "", component_separators = "",
section_separators = "", section_separators = "",
globalstatus = true, globalstatus = true,
+1 -10
View File
@@ -3,7 +3,6 @@
... ...
}: }:
let let
kanagawa = import ../_kanagawa.nix;
hmModules = config.flake.modules.homeManager; hmModules = config.flake.modules.homeManager;
in in
{ {
@@ -28,7 +27,6 @@ in
... ...
}: }:
let let
palette = kanagawa.palette;
swapMonitorWorkspaces = import ./_shortcuts.nix { inherit pkgs; }; swapMonitorWorkspaces = import ./_shortcuts.nix { inherit pkgs; };
machine = config.facts.machine; machine = config.facts.machine;
in in
@@ -46,8 +44,6 @@ in
++ [ swapMonitorWorkspaces ]; ++ [ swapMonitorWorkspaces ];
}; };
dconf.settings."org/gnome/desktop/interface".color-scheme = "prefer-dark";
wayland.windowManager.niri = { wayland.windowManager.niri = {
enable = true; enable = true;
settings = { settings = {
@@ -104,12 +100,7 @@ in
focus-ring.off = { }; focus-ring.off = { };
default-column-width.proportion = 1. / 2.; default-column-width.proportion = 1. / 2.;
border = { border.width = 3;
width = 3;
active-color = palette.accents.blue;
inactive-color = palette.subtleBorder;
urgent-color = palette.accents.red;
};
}; };
debug.honor-xdg-activation-with-invalid-serial = true; debug.honor-xdg-activation-with-invalid-serial = true;
-7
View File
@@ -9,7 +9,6 @@
}: }:
let let
homeDir = config.home.homeDirectory; homeDir = config.home.homeDirectory;
wallpaper = "${homeDir}/media/images/wallpapers/green-leaves.png";
in in
{ {
desktop.autostart = [ [ (lib.getExe config.programs.noctalia.package) ] ]; desktop.autostart = [ [ (lib.getExe config.programs.noctalia.package) ] ];
@@ -85,7 +84,6 @@
}; };
shell = { shell = {
font_family = "Lexend";
polkit_agent = true; polkit_agent = true;
# Handy provides recording feedback; omit microphone activity popups/indicators. # Handy provides recording feedback; omit microphone activity popups/indicators.
privacy.mic_filter_regex = ".*"; privacy.mic_filter_regex = ".*";
@@ -99,9 +97,6 @@
}; };
theme = { theme = {
builtin = "Kanagawa";
community_palette = "Kanagawa Paper";
wallpaper_scheme = "m3-content";
templates = { templates = {
enable_builtin_templates = false; enable_builtin_templates = false;
enable_community_templates = false; enable_community_templates = false;
@@ -110,8 +105,6 @@
wallpaper = { wallpaper = {
directory = "${homeDir}/media/images/wallpapers"; directory = "${homeDir}/media/images/wallpapers";
default.path = wallpaper;
last.path = wallpaper;
}; };
weather.refresh_minutes = 15; weather.refresh_minutes = 15;
+1 -3
View File
@@ -1,7 +1,7 @@
{ ... }: { ... }:
{ {
flake.modules.nixos.plymouth = flake.modules.nixos.plymouth =
{ pkgs, ... }: { ... }:
{ {
boot = { boot = {
consoleLogLevel = 3; consoleLogLevel = 3;
@@ -16,8 +16,6 @@
plymouth = { plymouth = {
enable = true; enable = true;
theme = "spinner_alt";
themePackages = [ pkgs.adi1090x-plymouth-themes ];
}; };
}; };
}; };
+1 -14
View File
@@ -1,23 +1,10 @@
{ {
flake.modules.nixos.sddm = flake.modules.nixos.sddm = {
{
pkgs,
...
}:
{
services.displayManager.sddm = { services.displayManager.sddm = {
enable = true; enable = true;
enableHidpi = true; enableHidpi = true;
wayland.enable = true; wayland.enable = true;
wayland.compositor = "kwin"; wayland.compositor = "kwin";
theme = "${
pkgs.sddm-astronaut.override { embeddedTheme = "purple_leaves"; }
}/share/sddm/themes/sddm-astronaut-theme";
extraPackages = [ pkgs.kdePackages.qtmultimedia ];
settings.Theme = {
CursorTheme = "phinger-cursors-light";
CursorSize = 24;
};
}; };
}; };
} }
-50
View File
@@ -6,8 +6,6 @@ in
flake.modules.homeManager.terminal-kitty = flake.modules.homeManager.terminal-kitty =
{ pkgs, ... }: { pkgs, ... }:
let let
theme = import ./_kanagawa.nix;
palette = theme.palette;
kitty = pkgs.symlinkJoin { kitty = pkgs.symlinkJoin {
name = "kitty-single"; name = "kitty-single";
paths = [ pkgs.kitty ]; paths = [ pkgs.kitty ];
@@ -24,13 +22,7 @@ in
programs.kitty = { programs.kitty = {
enable = true; enable = true;
package = kitty; package = kitty;
font = {
name = "JetBrains Mono";
size = 11;
};
settings = { settings = {
bold_font = "postscript_name=JetBrainsMono-Bold";
bold_italic_font = "postscript_name=JetBrainsMono-BoldItalic";
disable_ligatures = "always"; disable_ligatures = "always";
scrollback_lines = 10000; scrollback_lines = 10000;
enable_audio_bell = false; enable_audio_bell = false;
@@ -39,48 +31,6 @@ in
update_check_interval = 0; update_check_interval = 0;
}; };
keybindings."shift+enter" = "send_text all \\x0a"; keybindings."shift+enter" = "send_text all \\x0a";
extraConfig = ''
# Nerd Fonts v3.4.0
symbol_map U+e000-U+e00a,U+e0a0-U+e0a2,U+e0a3,U+e0b0-U+e0b3,U+e0b4-U+e0c8,U+e0ca,U+e0cc-U+e0d7,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b7,U+e700-U+e8ef,U+ea60-U+ec1e,U+ed00-U+efce,U+f000-U+f2ff,U+f300-U+f381,U+f400-U+f533,U+f0001-U+f1af0 Symbols Nerd Font Mono
## name: ${theme.displayName}
## license: MIT
## author: Tommaso Laurenzi
## upstream: https://github.com/rebelot/kanagawa.nvim/
background ${palette.background}
foreground ${palette.foreground}
selection_background ${palette.selectionBackground}
selection_foreground ${palette.selectionForeground}
url_color ${palette.url}
cursor ${palette.cursor}
active_tab_background ${palette.background}
active_tab_foreground ${palette.selectionForeground}
inactive_tab_background ${palette.background}
inactive_tab_foreground ${palette.muted}
color0 ${palette.terminal.color0}
color1 ${palette.terminal.color1}
color2 ${palette.terminal.color2}
color3 ${palette.terminal.color3}
color4 ${palette.terminal.color4}
color5 ${palette.terminal.color5}
color6 ${palette.terminal.color6}
color7 ${palette.terminal.color7}
color8 ${palette.terminal.color8}
color9 ${palette.terminal.color9}
color10 ${palette.terminal.color10}
color11 ${palette.terminal.color11}
color12 ${palette.terminal.color12}
color13 ${palette.terminal.color13}
color14 ${palette.terminal.color14}
color15 ${palette.terminal.color15}
color16 ${palette.terminal.color16}
color17 ${palette.terminal.color17}
'';
}; };
systemd.user.services.kitty-daemon = { systemd.user.services.kitty-daemon = {
Unit = { Unit = {
+2 -80
View File
@@ -1,80 +1,2 @@
{ config, ... }: # Select a complete theme module: plugins, assets and behavior as well as colors.
let { imports = [ ./_themes/kanagawa.nix ]; }
cursor = {
name = "phinger-cursors-light";
size = 24;
};
in
{
flake.modules.nixos.theme =
{ pkgs, ... }:
{
home-manager.sharedModules = [ config.flake.modules.homeManager.theme ];
environment.systemPackages = [ pkgs.phinger-cursors ];
};
flake.modules.homeManager.theme =
{ pkgs, ... }:
let
version = "unstable-2025-10-23";
src = pkgs.fetchFromGitHub {
owner = "Fausto-Korpsvart";
repo = "Kanagawa-GKT-Theme";
rev = "55ca4ba249eba21f861b9866b71ab41bb8930318";
hash = "sha256-UdMoMx2DoovcxSp/zBZ3PRv/Qpj+prd0uPm1gmdak2E=";
};
kanagawaGtkTheme = pkgs.stdenvNoCC.mkDerivation {
pname = "kanagawa-gtk-theme";
inherit src version;
nativeBuildInputs = [ pkgs.sassc ];
installPhase = ''
runHook preInstall
mkdir -p "$out/share/themes"
bash ./themes/install.sh \
--dest "$out/share/themes" \
--name Kanagawa \
--color dark
rm -r "$out/share/themes/Kanagawa-Dark/gtk-2.0"
runHook postInstall
'';
};
in
{
home.pointerCursor = cursor // {
enable = true;
package = pkgs.phinger-cursors;
dotIcons.enable = false;
gtk.enable = true;
};
gtk = {
enable = true;
theme = {
name = "Kanagawa-Dark";
package = kanagawaGtkTheme;
};
gtk4.theme = null;
iconTheme = {
name = "Kanagawa";
package = pkgs.kanagawa-icon-theme.overrideAttrs (_: {
inherit src version;
});
};
};
qt = {
enable = true;
platformTheme.name = "gtk3";
};
xdg.systemDirs.data = [
"${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}"
"${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}"
];
};
}
+28
View File
@@ -129,6 +129,34 @@
enable = true; enable = true;
runAsService = true; runAsService = true;
config.theme = "constellation";
themes.constellation = {
layouts.layout =
lib.replaceStrings
[ ''<property name="height-request">570</property>'' ]
[ ''<property name="height-request">460</property>'' ]
(builtins.readFile "${inputs.walker}/resources/themes/default/layout.xml");
style = lib.mkBefore (
builtins.readFile "${inputs.walker}/resources/themes/default/style.css"
+ ''
.box-wrapper {
padding: 10px;
border-radius: 10px;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
}
.search-container, .item-box, .preview { border-radius: 6px; }
.input { padding: 8px 10px; }
.item-box { padding: 5px 8px; }
.large-icons { -gtk-icon-size: 24px; }
.item-image-text { font-size: 24px; }
.item-subtext { opacity: 0.75; }
.item-quick-activation { padding: 3px 5px; }
.keybinds { padding-top: 6px; }
.keybind-bind { opacity: 0.65; }
''
);
};
config.providers = { config.providers = {
default = walkerDefaults.providers.default ++ [ "menus:projects" ]; default = walkerDefaults.providers.default ++ [ "menus:projects" ];
prefixes = walkerDefaults.providers.prefixes ++ [ prefixes = walkerDefaults.providers.prefixes ++ [