From 9c2da9d353eacb64579988344d32066a6297f370 Mon Sep 17 00:00:00 2001 From: Oliver Davies <oliver@oliverdavies.uk> Date: Thu, 15 Jun 2023 19:00:45 +0100 Subject: [PATCH] refactor --- home-manager/modules/home-manager.nix | 178 ++++++++++++++------------ 1 file changed, 94 insertions(+), 84 deletions(-) diff --git a/home-manager/modules/home-manager.nix b/home-manager/modules/home-manager.nix index 5710ff37..4d8066ec 100644 --- a/home-manager/modules/home-manager.nix +++ b/home-manager/modules/home-manager.nix @@ -6,121 +6,131 @@ programs.home-manager.enable = true; - services.swayidle.enable = true; + services.swayidle = { + enable = true; - services.swayidle.events = [ - { - event = "before-sleep"; - command = "${pkgs.swaylock}/bin/swaylock --daemonize --image ~/.config/wallpaper/wallpaper.jpg"; - } - ]; + events = [ + { + event = "before-sleep"; + command = "${pkgs.swaylock}/bin/swaylock --daemonize --image ~/.config/wallpaper/wallpaper.jpg"; + } + ]; + }; services.swayidle.timeouts = [ { - timeout = 60; + timeout = 300; command = "${pkgs.swaylock}/bin/swaylock --daemonize --image ~/.config/wallpaper/wallpaper.jpg"; } + { - timeout = 300; + timeout = 600; command = "swaymsg 'output * dpms off'"; resumeCommand = "swaymsg 'output * dpms on'"; } ]; - programs.swaylock.enable = true; - programs.swaylock.settings = { - daemonize = true; - image = "~/.config/wallpaper/wallpaper.jpg"; + programs.swaylock = { + enable = true; + + settings = { + daemonize = true; + image = "~/.config/wallpaper/wallpaper.jpg"; + }; }; - wayland.windowManager.sway.enable = true; + wayland.windowManager.sway = { + enable = true; - wayland.windowManager.sway.config = { - assigns = { - "1" = [{ app_id = "firefox"; }]; - "2" = [{ app_id = "Alacritty"; }]; - "3" = [{ class = "vlc"; }]; - "10" = [ - { class = "Slack"; } - { class = "discord"; } - ]; - # Get app_id with swaymsg -t get_tree - }; + config = { + assigns = { + "1" = [{ app_id = "firefox"; }]; + "2" = [{ app_id = "Alacritty"; }]; + "3" = [{ class = "vlc"; }]; + "10" = [ + { class = "Slack"; } + { class = "discord"; } + ]; + # Get app_id with swaymsg -t get_tree + }; - bars = [ - { - colors = { - background = "#323232"; - focusedWorkspace = { - background = "#ffffff"; - border = "#ffffff"; - text = "#333333"; + bars = [ + { + colors = { + background = "#323232"; + focusedWorkspace = { + background = "#ffffff"; + border = "#ffffff"; + text = "#333333"; + }; + statusline = "#ffffff"; }; - statusline = "#ffffff"; + + fonts = { + names = [ "DejaVu Sans Mono" ]; + size = 16.0; + }; + + statusCommand = "i3status-rs ~/.config/i3status-rust/config-default.toml"; + trayPadding = 10; + } + ]; + + gaps = { + inner = 10; + smartBorders = "on"; + smartGaps = true; + }; + + input = { + "*" = { + xkb_layout = "gb"; }; - fonts = { - names = [ "DejaVu Sans Mono" ]; - size = 16.0; + "type:touchpad" = { + dwt = "enabled"; + tap = "enabled"; + }; + }; + + keybindings = + let modifier = config.wayland.windowManager.sway.config.modifier; + in lib.mkOptionDefault { + "${modifier}+Escape" = "exec swaylock --daemonize"; + "${modifier}+Shift+b" = "exec firefox"; + "${modifier}+tab" = "workspace back_and_forth"; }; - statusCommand = "i3status-rs ~/.config/i3status-rust/config-default.toml"; - trayPadding = 10; - } - ]; + menu = "wofi --show run"; + modifier = "Mod4"; - gaps.inner = 10; - gaps.smartBorders = "on"; - gaps.smartGaps = true; + output = { + "*" = { + bg = "~/.config/wallpaper/wallpaper.jpg fill"; + }; - input = { - "*" = { - xkb_layout = "gb"; + eDP-1 = { + scale = "1.0"; + }; }; - "type:touchpad" = { - dwt = "enabled"; - tap = "enabled"; - }; + terminal = "alacritty"; + + window.border = 3; }; - keybindings = - let modifier = config.wayland.windowManager.sway.config.modifier; - in lib.mkOptionDefault { - "${modifier}+Escape" = "exec swaylock --daemonize"; - "${modifier}+Shift+b" = "exec firefox"; - "${modifier}+tab" = "workspace back_and_forth"; - }; + extraConfig = '' + set $laptop eDP-1 + bindswitch --reload --locked lid:on output $laptop disable + bindswitch --reload --locked lid:off output $laptop enable - menu = "wofi --show run"; - modifier = "Mod4"; + bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- + bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+ - output = { - "*" = { - bg = "~/.config/wallpaper/wallpaper.jpg fill"; - }; - - eDP-1 = { - scale = "1.0"; - }; - }; - - terminal = "alacritty"; - - window.border = 3; + for_window [class="vlc"] inhibit_idle fullscreen + ''; }; - wayland.windowManager.sway.extraConfig = '' - set $laptop eDP-1 - bindswitch --reload --locked lid:on output $laptop disable - bindswitch --reload --locked lid:off output $laptop enable - - bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- - bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+ - - for_window [class="vlc"] inhibit_idle fullscreen - ''; - programs.i3status-rust = { enable = true;