From 5869510e48e64d916dc6905dc664a02b0f85f1bd Mon Sep 17 00:00:00 2001 From: "Shahar \"Dawn\" Or" Date: Sun, 8 Jun 2025 23:01:38 +0700 Subject: [PATCH] i3status-rust: apply background opacity (#1450) Link: https://github.com/nix-community/stylix/pull/1450 Reviewed-by: pancho horrillo Reviewed-by: Daniel Thwaites Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com> --- modules/i3status-rust/hm.nix | 39 +++++++++++++++++++++------------- modules/i3status-rust/meta.nix | 3 ++- 2 files changed, 26 insertions(+), 16 deletions(-) diff --git a/modules/i3status-rust/hm.nix b/modules/i3status-rust/hm.nix index ebac3328..39d2851e 100644 --- a/modules/i3status-rust/hm.nix +++ b/modules/i3status-rust/hm.nix @@ -1,19 +1,28 @@ -{ config, ... }: +{ lib, config, ... }: +let + opacityHex = lib.toHexString ( + builtins.ceil (config.stylix.opacity.desktop * 255) + ); +in { # Merge this with your bar's theme's overrides with //config.lib.stylix.i3status-rust.bar config.lib.stylix.i3status-rust.bar = - with config.lib.stylix.colors.withHashtag; { - idle_bg = base00; - idle_fg = base05; - info_bg = base09; - info_fg = base00; - good_bg = base01; - good_fg = base05; - warning_bg = base0A; - warning_fg = base00; - critical_bg = base08; - critical_fg = base00; - separator_bg = base00; - separator_fg = base05; - }; + lib.mapAttrs (n: v: if lib.hasSuffix "_bg" n then v + opacityHex else v) + ( + with config.lib.stylix.colors.withHashtag; + { + idle_bg = base00; + idle_fg = base05; + info_bg = base09; + info_fg = base00; + good_bg = base01; + good_fg = base05; + warning_bg = base0A; + warning_fg = base00; + critical_bg = base08; + critical_fg = base00; + separator_bg = base00; + separator_fg = base05; + } + ); } diff --git a/modules/i3status-rust/meta.nix b/modules/i3status-rust/meta.nix index ef39174b..6d6afb65 100644 --- a/modules/i3status-rust/meta.nix +++ b/modules/i3status-rust/meta.nix @@ -1,5 +1,6 @@ +{ lib, ... }: { name = "i3status-rust"; homepage = "https://github.com/greshake/i3status-rust"; - maintainers = [ ]; + maintainers = [ lib.maintainers.mightyiam ]; }