diff options
Diffstat (limited to 'home/apps')
| -rw-r--r-- | home/apps/caelestia/default.nix | 2 | ||||
| -rw-r--r-- | home/apps/caelestia/settings.nix | 8 | ||||
| -rw-r--r-- | home/apps/default.nix | 1 | ||||
| -rw-r--r-- | home/apps/hyprlock.nix | 40 | ||||
| -rw-r--r-- | home/apps/kanshi.nix | 53 |
5 files changed, 81 insertions, 23 deletions
diff --git a/home/apps/caelestia/default.nix b/home/apps/caelestia/default.nix index e2e5e96..75dbb26 100644 --- a/home/apps/caelestia/default.nix +++ b/home/apps/caelestia/default.nix @@ -15,7 +15,7 @@ in { config = mkIf cfg.enable { default.appLauncher = lib.mkOverride 600 "caelestia-shell ipc call drawers toggle launcher"; - default.lockScreen = lib.mkOverride 600 "caelestia-shell ipc call lock lock"; + #default.lockScreen = "caelestia-shell ipc call lock lock"; programs.caelestia = { enable = true; diff --git a/home/apps/caelestia/settings.nix b/home/apps/caelestia/settings.nix index fbde95d..de81df7 100644 --- a/home/apps/caelestia/settings.nix +++ b/home/apps/caelestia/settings.nix @@ -83,6 +83,12 @@ in { }; }; + # Launcher settings + launcher = { + enabled = true; + useFuzzy = true; + }; + # Background background.enabled = true; paths = { @@ -137,7 +143,7 @@ in { workspaces = { activeIndicator = true; activeTrail = false; - perMonitorWorkspaces = true; + perMonitorWorkspaces = false; showWindows = false; shown = 9; label = ""; diff --git a/home/apps/default.nix b/home/apps/default.nix index 1823b0d..baf9d82 100644 --- a/home/apps/default.nix +++ b/home/apps/default.nix @@ -7,6 +7,7 @@ _: { ./alacritty.nix ./astal.nix ./hyprlock.nix + ./kanshi.nix ./kitty.nix ./mako.nix ]; diff --git a/home/apps/hyprlock.nix b/home/apps/hyprlock.nix index a0e5d84..237abb6 100644 --- a/home/apps/hyprlock.nix +++ b/home/apps/hyprlock.nix @@ -4,7 +4,6 @@ ... }: let text = "rgb(${config.theme.colors.text})"; - base = "rgb(${config.theme.colors.base})"; error = "rgb(${config.theme.colors.error})"; trans = "rgba(0,0,0,0)"; @@ -25,30 +24,29 @@ in { animations = { enabled = true; + bezier = [ + "linear, 1, 1, 1, 1" + ]; animation = [ - "fadeIn, 0" - "fadeOut, 0" + "fade, 1, 3, linear" ]; }; background = { path = config.theme.lockscreen; - color = base; - blur_passes = 0; - blur_size = 2; - noise = 0; - contrast = 0; - brightness = 0; - vibrancy = 0; + blur_passes = 2; + contrast = 0.9; + brightness = 0.8; + vibrancy = 0.2; vibrancy_darkness = 0.0; }; # Password Input input-field = { - size = "300, 50"; - outline_thickness = 0; - dots_size = 0.25; - dots_spacing = 0.55; + size = "250, 60"; + outline_thickness = 2; + dots_size = 0.2; + dots_spacing = 0.5; dots_center = true; dots_rounding = -1; outer_color = trans; @@ -81,21 +79,21 @@ in { { text = "cmd[update:1000] echo \"$(date +\"%A, %B %d\")\""; color = text; - font_size = 20; + font_size = 30; font_family = config.theme.font.header; - position = "0, -100"; + position = "0, -50"; halign = "center"; - valign = "top"; + valign = "center"; } # Clock { - text = "cmd[update:1000] echo \"$(date +\"%k:%M:%S\")\""; + text = "cmd[update:1000] echo \"$(date +\"%k:%M\")\""; color = text; - font_size = 90; + font_size = 130; font_family = config.theme.font.header; - position = "0, -130"; + position = "0, 130"; halign = "center"; - valign = "top"; + valign = "center"; } ]; }; diff --git a/home/apps/kanshi.nix b/home/apps/kanshi.nix new file mode 100644 index 0000000..ed7622a --- /dev/null +++ b/home/apps/kanshi.nix @@ -0,0 +1,53 @@ +{ + config, + lib, + ... +}: let + inherit (lib) mkIf; + cfg = config.apps.kanshi; + + laptopMonitors = lib.lists.filter (mon: mon.laptop) config.monitors; + dockedMonitors = lib.lists.filter (mon: !mon.laptop) config.monitors; + + mkOutput = mon: status: + lib.mkMerge [ + { + criteria = + if mon.desc == "" + then mon.port + else mon.desc; + scale = mon.scale; + inherit status; + } + (lib.mkIf (mon.position.x != 0 || mon.position.y != 0) { + position = "${toString mon.position.x},${toString mon.position.y}"; + }) + (lib.mkIf (mon.size.x != 0 && mon.size.y != 0) { + mode = "${toString mon.size.x}x${toString mon.size.y}"; + }) + ]; + + mkEnabledOutput = mon: (mkOutput mon "enable"); + mkDisabledOutput = mon: (mkOutput mon "disable"); +in { + config = mkIf cfg.enable { + services.kanshi = { + enable = true; + + settings = [ + { + profile = { + name = "laptop"; + outputs = map mkEnabledOutput laptopMonitors; + }; + } + { + profile = { + name = "docked"; + outputs = (map mkEnabledOutput dockedMonitors) ++ (map mkDisabledOutput laptopMonitors); + }; + } + ]; + }; + }; +} |