From e77e98fdaf328ef6015a1d442497314e5ab3ca24 Mon Sep 17 00:00:00 2001 From: Amy Retzerau Date: Sun, 8 Dec 2024 22:43:25 +0100 Subject: [PATCH] first few dotfiles :D --- .config/hypr/hypridle.conf | 34 ++++ .config/hypr/hyprland.conf | 344 ++++++++++++++++++++++++++++++++ .config/hypr/hyprland.conf.save | 307 ++++++++++++++++++++++++++++ .config/hypr/hyprlock.conf | 66 ++++++ .config/swaylock/config | 29 +++ .config/waybar/LICENSE | 21 ++ .config/waybar/README.md | 9 + .config/waybar/asset.png | Bin 0 -> 4557 bytes .config/waybar/style.css | 234 ++++++++++++++++++++++ 9 files changed, 1044 insertions(+) create mode 100644 .config/hypr/hypridle.conf create mode 100644 .config/hypr/hyprland.conf create mode 100644 .config/hypr/hyprland.conf.save create mode 100644 .config/hypr/hyprlock.conf create mode 100644 .config/swaylock/config create mode 100644 .config/waybar/LICENSE create mode 100644 .config/waybar/README.md create mode 100644 .config/waybar/asset.png create mode 100644 .config/waybar/style.css diff --git a/.config/hypr/hypridle.conf b/.config/hypr/hypridle.conf new file mode 100644 index 0000000..1e2ce9b --- /dev/null +++ b/.config/hypr/hypridle.conf @@ -0,0 +1,34 @@ +general { + lock_cmd = pidof swaylock || swaylock # avoid starting multiple hyprlock instances. + before_sleep_cmd = loginctl lock-session # lock before suspend. + after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display. +} + +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor. + on-resume = brightnessctl -r # monitor backlight restore. +} + +# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight. +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight. + on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight. +} + +listener { + timeout = 300 # 5min + on-timeout = loginctl lock-session # lock screen when timeout has passed +} + +listener { + timeout = 330 # 5.5min + on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed + on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired. +} + +listener { + timeout = 1800 # 30min + #on-timeout = systemctl suspend # suspend pc +} diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf new file mode 100644 index 0000000..e02a4ae --- /dev/null +++ b/.config/hypr/hyprland.conf @@ -0,0 +1,344 @@ +# ####################################################################################### +# AUTOGENERATED HYPR CONFIG. +# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, +# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. +# ####################################################################################### + +#autogenerated = 1 # remove this line to remove the warning + +# This is an example Hyprland config file. +# Refer to the wiki for more information. +# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ + +# Please note not all available settings / options are set here. +# For a full list, see the wiki + +# You can split this configuration into multiple files +# Create your files separately and then link them to this file like this: +# source = ~/.config/hypr/myColors.conf + + +################ +### MONITORS ### +################ + +# See https://wiki.hyprland.org/Configuring/Monitors/ +#debug:disable_scale_checks = true +monitor= eDP-1,1920x1080@60.04900,0x0,1 +monitor= HDMI-A-2,1920x1080@60.00,-1920x-1440,1 +monitor= DP-3, 2560x1440@74.97,0x-1440,1 + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ + +# Set programs that you use +$terminal = kitty +$fileManager = dolphin +$menu = rofi -show run + + +################# +### AUTOSTART ### +################# + +# Autostart necessary processes (like notifications daemons, status bars, etc.) +# Or execute your favorite apps at launch like this: + +# exec-once = $terminal +# exec-once = nm-applet & +# exec-once = waybar & hyprpaper & firefox +exec-once = waybar +exec-once = dunst +exec-once = hypridle +exec-once = systemctl --user start hyprpolkitagent +#exec-once = nwg-dock-hyprland -x -mb 10 -mt -10 +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hyprland.org/Configuring/Environment-variables/ + +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_SIZE,24 +env = QT_QPA_PLATFORMTHEME,qt6ct +#env QT_QPA_PLATFORMTHEME=qt5ct dolphin +env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 +env = QT_AUTO_SCREEN_SCALE_FACTOR,1 +env = QT_QPA_PLATFORM,wayland;xcb +env = QT_STYLE_OVERRIDE=kvantum +env = EDITOR, nano +env = GTK_THEME, Sweet:dark +env = TERM,xterm +env = XDG_CURRENT_DESKTOP,Hyprland +env = XDG_SESSION_TYPE,wayland +env = XDG_SESSION_DESKTOP,Hyprland + +#Nvidi Envs + +#env = LIBVA_DRIVER_NAME,nvidia +#env = GBM_BACKEND,nvidia-drm +#env = __GLX_VENDOR_LIBRARY_NAME,nvidia + +env = SHELL, fish +#env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1 + +cursor { + no_hardware_cursors = true +} + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hyprland.org/Configuring/Variables/ + +# https://wiki.hyprland.org/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 10 + + border_size = 2 + + # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors + #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.active_border = rgba(3244a8aa) rgba(6f32a8aa) 45deg + #col.active_border + col.inactive_border = rgba(595959aa) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hyprland.org/Configuring/Variables/#decoration +decoration { + rounding = 10 + + # Change transparency of focused and unfocused windows + active_opacity = 1.0 + inactive_opacity = 0.95 + + #drop_shadow = true + #shadow_range = 4 + #shadow_render_power = 3 + #col.shadow = rgba(1a1a1aee) + shadow { + enabled = true + range = 4 + render_power = 3 + color = rgba(1a1a1aee) + } + # https://wiki.hyprland.org/Configuring/Variables/#blur + blur { + enabled = true + size = 3 + passes = 1 + + vibrancy = 0.1696 + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#animations +animations { + enabled = true + + # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default +} + +# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ +# "Smart gaps" / "No gaps when only" +# uncomment all three if you wish to use that. +# workspace = w[t1], gapsout:0, gapsin:0, border: 0, rounding:0 +# workspace = w[tg1], gapsout:0, gapsin:0, border: 0, rounding:0 +# workspace = f[1], gapsout:0, gapsin:0, border: 0, rounding:0 + +# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more +dwindle { + pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # You probably want this +} + +# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more +master { + new_status = master +} + +# https://wiki.hyprland.org/Configuring/Variables/#misc +misc { + force_default_wallpaper = 2 # Set to 0 or 1 to disable the anime mascot wallpapers + disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( +} + + +############# +### INPUT ### +############# + +# https://wiki.hyprland.org/Configuring/Variables/#input +input { + kb_layout = de + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 1 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + touchpad { + natural_scroll = true + clickfinger_behavior = true + } + + +} + +# https://wiki.hyprland.org/Configuring/Variables/#gestures +gestures { + workspace_swipe = true + workspace_swipe_fingers = 3 +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more +device { + name = epic-mouse-v1 + sensitivity = -0.5 +} + +device { + name = wacom-hid-526a-pen + transform = 0 + output = eDP-1 +} + +device { + name = wacom-hid-526a-finger + transform = 0 + output = eDP-1 +} + +################### +### KEYBINDINGS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ +$mainMod = SUPER # Sets "Windows" key as main modifier + +#bind = $mainMod, W,exec, rofi -show run + +# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more +bind = $mainMod, Q, exec, $terminal +bind = $mainMod, C, killactive, +bind = $mainMod, M, exit, +bind = $mainMod, E, exec, $fileManager +bind = $mainMod, V, togglefloating, +bind = $mainMod, R, exec, $menu +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, J, togglesplit, # dwindle +#bind = $mainMod, L, exec, hyprlock & sleep 1 ; systemctl suspend +#bind = $mainMod, L, exec, hyprlock +bind = $mainMod, L, exec, swaylock +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Switch workspaces with mainMod + [0-9] +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + +# Move active window to a workspace with mainMod + SHIFT + [0-9] +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +# Example special workspace (scratchpad) +bind = $mainMod, S, togglespecialworkspace, magic +bind = $mainMod SHIFT, S, movetoworkspace, special:magic + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +bind = $mainMod, T, togglegroup +bind = $mainMod, G, lockactivegroup + + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +# Laptop multimedia keys for volume and LCD brightness +bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ +bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+ +bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- + +bind = , Print, exec, grim -g "$(slurp -d)" - | wl-copy +bind = SHIFT, Print, exec, dunstify -r 4 -t 0 -i media-record "recording" && wf-recorder -g "$(slurp -d)" -f ~/Videos/$(date +"%Y-%m-%d_%H:%M:%S.mp4") +bind = ALT, Print, exec, pkill --signal SIGINT wf-recorder && dunstify -C 4 +# Requires playerctl +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPause, exec, playerctl play-pause +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioPrev, exec, playerctl previous + +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules + +# Example windowrule v1 +#windowrule = float, ^(kitty)$ + +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ + +# Ignore maximize requests from apps. You'll probably like this. +windowrulev2 = suppressevent maximize, class:.* + +#windowrulev2 = opacity 0.97 0.95, class:^(VSCodium)$ +windowrulev2 = noblur, class:^(Peek)$ +# Fix some dragging issues with XWayland +windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 + +layerrule = blur, rofi +layerrule = blur, notifications diff --git a/.config/hypr/hyprland.conf.save b/.config/hypr/hyprland.conf.save new file mode 100644 index 0000000..1c2ea88 --- /dev/null +++ b/.config/hypr/hyprland.conf.save @@ -0,0 +1,307 @@ +# ####################################################################################### +# AUTOGENERATED HYPR CONFIG. +# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, +# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. +# ####################################################################################### + +#autogenerated = 1 # remove this line to remove the warning + +# This is an example Hyprland config file. +# Refer to the wiki for more information. +# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ + +# Please note not all available settings / options are set here. +# For a full list, see the wiki + +# You can split this configuration into multiple files +# Create your files separately and then link them to this file like this: +# source = ~/.config/hypr/myColors.conf + + +################ +### MONITORS ### +################ + +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor= eDP-1,1920x1080@60.04900,0x0,1 +monitor= HDMI-A-2,1920x1080@60.00,-1920x-1080,1 +monitor= DP-3, 2560x1440@74.97,0x-1080,1 + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ + +# Set programs that you use +$terminal = kitty +$fileManager = dolphin +$menu = rofi -show run + + +################# +### AUTOSTART ### +################# + +# Autostart necessary processes (like notifications daemons, status bars, etc.) +# Or execute your favorite apps at launch like this: + +# exec-once = $terminal +# exec-once = nm-applet & +# exec-once = waybar & hyprpaper & firefox +exec-once = waybar +exec-once = dunst +exec-once = hypridle +#exec-once = nwg-dock-hyprland -x -mb 10 -mt -10 +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hyprland.org/Configuring/Environment-variables/ + +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_SIZE,24 +env = QT_QPA_PLATFORMTHEME,qt5ct +env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 +env = QT_QPA_PLATFORM,wayland;xcb +env = QT_AUTO_SCREEN_SCALE_FACTOR,1 +env = QT_QPA_PLATFORM,wayland +env = XDG_SESSION_TYPE, wayland + + +#Nvidi Envs + +env = LIBVA_DRIVER_NAME,nvidia +env = XDG_SESSION_TYPE,wayland +env = GBM_BACKEND,nvidia-drm +env = __GLX_VENDOR_LIBRARY_NAME,nvidia + +env = SHELL, fish +#env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1 + +cursor { + no_hardware_cursors = true +} + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hyprland.org/Configuring/Variables/ + +# https://wiki.hyprland.org/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 10 + + border_size = 2 + + # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors + #col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.active_border = rgba(3244a8aa) rgba(6f32a8aa) 45deg + #col.active_border + col.inactive_border = rgba(595959aa) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hyprland.org/Configuring/Variables/#decoration +decoration { + rounding = 10 + + # Change transparency of focused and unfocused windows + active_opacity = 1.0 + inactive_opacity = 0.95 + + drop_shadow = true + shadow_range = 4 + shadow_render_power = 3 + col.shadow = rgba(1a1a1aee) + + # https://wiki.hyprland.org/Configuring/Variables/#blur + blur { + enabled = true + size = 3 + passes = 1 + + vibrancy = 0.1696 + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#animations +animations { + enabled = true + + # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + animation = windows, 1, 7, myBezier + animation = windowsOut, 1, 7, default, popin 80% + animation = border, 1, 10, default + animation = borderangle, 1, 8, default + animation = fade, 1, 7, default + animation = workspaces, 1, 6, default +} + +# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ +# "Smart gaps" / "No gaps when only" +# uncomment all three if you wish to use that. +# workspace = w[t1], gapsout:0, gapsin:0, border: 0, rounding:0 +# workspace = w[tg1], gapsout:0, gapsin:0, border: 0, rounding:0 +# workspace = f[1], gapsout:0, gapsin:0, border: 0, rounding:0 + +# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more +dwindle { + pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # You probably want this +} + +# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more +master { + new_status = master +} + +# https://wiki.hyprland.org/Configuring/Variables/#misc +misc { + force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers + disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( +} + + +############# +### INPUT ### +############# + +# https://wiki.hyprland.org/Configuring/Variables/#input +input { + kb_layout = de + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 1 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + touchpad { + natural_scroll = true + clickfinger_behavior = true + } +} + +# https://wiki.hyprland.org/Configuring/Variables/#gestures +gestures { + workspace_swipe = true + workspace_swipe_fingers = 3 +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more +device { + name = epic-mouse-v1 + sensitivity = -0.5 +} + + +################### +### KEYBINDINGS ### +################### + +# See https://wiki.hyprland.org/Configuring/Keywords/ +$mainMod = SUPER # Sets "Windows" key as main modifier + +#bind = $mainMod, W,exec, rofi -show run + +# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more +bind = $mainMod, Q, exec, $terminal +bind = $mainMod, C, killactive, +bind = $mainMod, M, exit, +bind = $mainMod, E, exec, $fileManager +bind = $mainMod, V, togglefloating, +bind = $mainMod, R, exec, $menu +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, J, togglesplit, # dwindle +#bind = $mainMod, L, exec, hyprlock & sleep 1 ; systemctl suspend +bind = $mainMod, L, exec, hyprlock +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d + +# Switch workspaces with mainMod + [0-9] +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + +# Move active window to a workspace with mainMod + SHIFT + [0-9] +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +# Example special workspace (scratchpad) +bind = $mainMod, S, togglespecialworkspace, magic +bind = $mainMod SHIFT, S, movetoworkspace, special:magic + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +# Laptop multimedia keys for volume and LCD brightness +bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ +bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+ +bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- + +# Requires playerctl +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPause, exec, playerctl play-pause +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioPrev, exec, playerctl previous + +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules + +# Example windowrule v1 +#windowrule = float, ^(kitty)$ + +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ + +# Ignore maximize requests from apps. You'll probably like this. +windowrulev2 = suppressevent maximize, class:.* + +# Fix some dragging issues with XWayland +windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 diff --git a/.config/hypr/hyprlock.conf b/.config/hypr/hyprlock.conf new file mode 100644 index 0000000..6a481ea --- /dev/null +++ b/.config/hypr/hyprlock.conf @@ -0,0 +1,66 @@ +background { + monitor = +# path = screenshot # supports png, jpg, webp (no animations, though) + path = /home/amy/Pictures/Kath.png + color = rgba(25, 20, 20, 0.7) + + # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations + blur_passes = 3 # 0 disables blurring + blur_size = 5 + noise = 0.0117 + contrast = 0.8916 + brightness = 0.8172 + vibrancy = 0.1696 + vibrancy_darkness = 0.0 +} + +input-field { + monitor = + size = 200, 30 + outline_thickness = 1 + dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8 + dots_spacing = 0.15 # Scale of dots' absolute size, -1.0 - 1.0 + dots_center = false + dots_rounding = -1 # -1 default circle, -2 follow input-field rounding + dots_fade_time = 200 # Milliseconds until a dot fully fades in + dots_text_format = # Text character used for the input indicator. Leave empty for a rectangle that will be rounded via dots_rounding (default). + outer_color = rgb(151515) + inner_color = rgb(10, 10, 10) + font_color = rgb(200, 200, 200) + font_family = Noto Sans # Font used for placeholder_text, fail_text and dots_text_format. + fade_on_empty = true + fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered. + placeholder_text = Input Password... # Text rendered in the input box when it's empty. + hide_input = false + rounding = -1 # -1 means complete rounding (circle/oval) + check_color = rgb(204, 136, 34) + fail_color = rgb(204, 34, 34) # if authentication failed, changes outer_color and fail message color + fail_text = $FAIL ($ATTEMPTS) # can be set to empty + fail_timeout = 2000 # milliseconds before fail_text and fail_color disappears + fail_transition = 300 # transition time in ms between normal outer_color and fail_color + capslock_color = -1 + numlock_color = -1 + bothlock_color = -1 # when both locks are active. -1 means don't change outer color (same for above) + invert_numlock = false # change color if numlock is off + swap_font_color = false # see below + + position = 0, -20 + halign = center + valign = center +} + +label { + monitor = + text = $USER + text_align = center # center/right or any value for default left. multi-line text alignment inside label container + color = rgba(200, 200, 200, 1.0) + font_size = 25 + font_family = Noto Sans + rotate = 0 # degrees, counter-clockwise + shadow_passes= 2 + shadow_boost = 2.0 + + position = 0, 80 + halign = center + valign = center +} diff --git a/.config/swaylock/config b/.config/swaylock/config new file mode 100644 index 0000000..35d51c1 --- /dev/null +++ b/.config/swaylock/config @@ -0,0 +1,29 @@ +indicator-thickness=7 +indicator-radius=100 +screenshots +effect-blur=7x5 +fade-in=0.2 +indicator-thickness=5 +key-hl-color=7f42b8ff + +ring-color=3244a8ff +ring-clear-color=6f32a8ff +ring-wrong-color=ff3355cc +ring-ver-color=7f42b8ff + +effect-vignette=0.5:0.5 +separator-color=00000000 + +line-color=00000000 +line-clear-color=00000000 +line-ver-color=00000000 +line-wrong-color=00000000 + +inside-color=00000088 +inside-clear-color=00000088 +inside-ver-color=00000088 +inside-wrong-color=00000088 + +text-clear-color=bbbbbbff +text-wrong-color=bbbbbbff +text-ver-color=bbbbbbff diff --git a/.config/waybar/LICENSE b/.config/waybar/LICENSE new file mode 100644 index 0000000..80da146 --- /dev/null +++ b/.config/waybar/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Kamlendra Singh + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/.config/waybar/README.md b/.config/waybar/README.md new file mode 100644 index 0000000..cb03969 --- /dev/null +++ b/.config/waybar/README.md @@ -0,0 +1,9 @@ +## waybar-config + +A minimal black + + +## Order +- Speaker > Mic > Wifi > Brightness > CPU > Memory > Battery > Time (12 hour formate) + ![20240504_18h18m02s_grim](https://github.com/kamlendras/waybar-config/assets/96082996/71c6f642-5ece-4a33-b962-960f217b6849) + diff --git a/.config/waybar/asset.png b/.config/waybar/asset.png new file mode 100644 index 0000000000000000000000000000000000000000..ada6f11f8f1c1de33344ec9f0e8c0f93ec2aa47e GIT binary patch literal 4557 zcmY*dc_7q#_nwNH+(gNeWu%CZWH*+vW+z?yE^ACEyBKb1p+zBMX(*LFOJ3X9S}Y+% zD0{MveVeh3;dk8oc6)#4k6FLp&*wAeJkN8UGf@`}wHO&V84w5rqmH)5B?RI?1ia=% z?uEzRc~f6!DN3#YdkI5~hEnN#DiE zdH{P|wCCk>dMef5Du<$yWPF59Q3&r(ieRhXCogK^LigT-bzJ!FvkQiN%s*(ONqC7! zMC_P>Zf#m^tV`g^pj%p!cuMP?BIl-9)Q7}8Wdn6f4G!1U)7)u;_m6s#qRO&d@;$}+-wXFYj2Rxsr ztge=pmB~s;xx2fI3+5VewVOTm=T}1>Z#OF}v=g2=_WR-!Vt=VzG&5`H`qJ~%Kel#? zWPtal`~CIfh=zs>8F_7CsIKxQtfkiPZx9EWk#zc&ZofZ?D2fu8`SstZ{{BrLqd#X+$Ydnl zUgL0DX3YGsy7Htk>Qa;Xen)MA!z0fuBKH4teMFJY31;%@YBRe2qVm?F`nhxG4&Rm3 zAPfx+shShU!u=!~$FEPer=2rodi3a#hJh9lVnSxrGt9?@LP0x#0sSC9S=;^0sW|(MJ z5S0OQ#1P8#ORX3bYzr684^>-RTi;MAG5&mtPeWDp{oo*NlQKj8`e&vgWp#9V8a+)l zyO}-4_Ypa1l9MeIjSgPsk7>NI^z(LgwUTWRb#<<0BU#=zL(xV=?Nh#O<@DbXurPGC z*X+ZSI@<^{69-;e_;B}OJ<4#(Y1e;Jx}z5-XtX_%;%%01QvujtUcS!Gj(_r>>G}Dd zuU}V|mX4=u9FvtTBauiQf>7P4OP4M&Ffpx>$$o)>m>a8k(b3Jx(w=N$Htycu-tO)k z92`P(xY^lRq3Dy5Svfh$DJgocCOiH!J!cgZDr?w@{xfVeIcaJCcg@CHT8(&noTafb zUoS#pZLVw>r5u{rKFOliQ((XF=_u~=Hw)X@8FCJ)Qr0V zhr`S-U3wcvUClH~OO^LM&Cfp;gV|nOToe)$Q}!b<-xug%DukMunwjCKb7ct$34S^% zD(||oA)^G3%a=QQdf+n|BGv5eue6qW4Nk+xSFiGLaot#*wIp8D)AMXeIO{v{IZ4vZ zFgUmZvg_|pfosI@mBA|$EP{sa9v+?JTr${uF)`ua%sw6s++%fuq>Ks~$!syNn?0}# zToulM+3&_yR=VD*eHFfL!NI`>2CYR-jYz)v`FS|~VFref^~I6V#+WHv;bWS%{eh`&45Hc*Yoi7p}4gszkdDtX+pvU@EVo3?*XZ`(K ztNMW`Na|dlv~t?Q*w`^n&g8hbuU%d7Po8uP3{+uz->OBVu4Df1bYy^(I z%*x8j$hdHVSv*O9qsCFR##Wk!d5Nqb@cS~uI|QMj%jYbU3K&5(uKfbT^W!&5FcG5 zAaX&$La|$WY+M|*^qr@N$He$JE8A`a?22E>$w(yK&E@6g&d$#K{QR0x1u~iZ;K2h@ zW!Tu8I|B22{qQOmEp0_y1^*VS&ce&}(F?UZL*3maM52|B&eZoJr^AO2ySlpSC5WDf zkd~gCpZD_ch>nVyB9ShdnD9sHCyMh43wvxVkI#H7kd>D1?&*QjEt1JLM8E8^vcTc} zk6#?;;NZsKLT7s3Kn9>1l5TCUT4H!HUaqdE%>~JO5L+qPIXTc|jM9_|b|;@nxabB2 zl~+^*>*_MZH0I{y#Cl*LN3=Ah?t%Eqb2J)_!r(-0+MFe-tExzGroXEG{Gqeq zYeD(lNMimuKCX#zkVpd6gyaAba5$WXa=xj$`o|}yv{Ds=mnYN0_tVo;coKbQzn^z< za@tJmep1HChKpq0t#`v|divXmiHU`Ug#!aNYTBNjo;cig6pNtp_PUdxU}j?sZ*F$> z84(e7c6ML6XOKyF!J-DOKte(SKm|+&60@DPdX<+KI@S5Qzsx%~D+_+$!?D*_vDoXr zz6(RuDPT6z(rSa2E{~ww+S*)PTx7k6q+kJA*|o*R$Fqxj5DxrZU0s)*oPgJM*3`9m z;=TiiyS{y!92?8CtF{WE0h!nAQ3RG}0P z&@SEDQ(pu5E?jtPAqslc+}xaNUf|VVdUdX^gq4*waAAlwUmbbH)3Xv@mUw=%s|r%B zwUv>T&CJZ4oR|Qv`p7-oEq1sxsF%d-4Cr_ zKgw6v)#cZos)X5Eymj;D&8%2ew}*|RQRr7xkPixl0`*8rN)lxg0i7RfimR@!zH;Tt z_VzX-BO`ggPn7TV>(f(HO`krIM2^>oiCkNL>=@}QY|16;*^`uciM zNXYzP<=T(;w}9yhra9YE($Zm}p#aFifq|O!pZ8z1KW8syeZN;~x2g|Ju`<-5>Kl-E zs8r`?rwPn1yMHG>H`SP4QGmZ*T9835&YAx`;?F!0&6O zk*B-6j~w^N(UT!PBwlXR&v7ufSS+^O#!Ew^uEKW`nxlt{3uSq{C9rwRu&TQH)TvWc zF^bTgqPPwi@W`i=H{N@#7YgbF2qKPp>5- zBLf^Czkt9}P!*h6yWn@S4GauCd-8%8f2e9}Bl(=?2P%wG6)VDbw%Z5_!!=PEHLqkJDPft%*mz0Re{rT4V`f<=N@+gl&fMWQzqOh>8y}iAWktBuv$I&46heG_d~&id zGg9BcU}bq3ZY{SFt3Gfw0&v!vBFig(eGFI`6&0n3ib>C^8EgjBFHi!%${Y;A2>SXlPo>InC=u(nQ#FW7@X9LmqmZfa?n+1gl%WcK!60Ci+m z1ILQw!=JNnYic^kzz}PP5fBi7o(^PXJb2Ku7Dpo}1QIJN1!U#akRvM_ATqFYm=?<1 z%&e1_AR{G(?Js?3_kOlE=LYm#u(r@54ltn>H$p+hLRc37n^>93?CdLF(2>l4srW39 zHOc!<02N_QfEFC4!eOk$bk*+-lCQqL9!4!|>q;UqnR$7o9n;^}H!(2*TliGiD5ssX zQPcR`R~5WsR}&HKS{LVof z?4!Abg*JX>db$lD`wo-)v6Pd|i8{0sXAz*YK1DwA??4$*qyobnnfwWTTRYe64LW?g z3j6@Ds=AuSoGY(?x_IZWqf${1yqe?Bl$MqP-hg`K&9{Z%k6oOdMQw>v7)eMwY8-acY0%EBg!fa=9k^h1Z2{9 zqulc5<6S107r`_D3?C3#zy*BpUO$(3xkE$W3#sU?I_%r|iPX)I7 z^&>tO`kjBSl3&C&NKvxCT8zHJz1n widget:first-child > #workspaces { + margin-left: 0; +} + +/* If workspaces is the rightmost module, omit right margin */ +.modules-right > widget:last-child > #workspaces { + margin-right: 0; +} + +#clock { + background-color: #000000; + color: white; +} + +#battery { + background-color: #000000; + color: white; +} + +#battery.charging { + color: #ffffff; + background-color: #000000; +} + +@keyframes blink { + to { + background-color: #ffffff; + color: #000000; + } +} + +#battery.critical:not(.charging) { + background-color: #f53c3c; + color: #ffffff; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +label:focus { + background-color: #000000; +} + +#cpu { + background-color: #000000; + color: #ffffff; +} + +#memory { + background-color: #000000; + color: white; +} + +#backlight { + background-color: #000000; + color:white; +} + +#network { + background-color: #000000; + color:white; + +} + +#network.disconnected { + background-color: #f53c3c; +} + +#pulseaudio { + background-color: #000000; + color: #ffffff; +} + +#pulseaudio.muted { + background-color: #000000; + color: #ffffff; +} + +#custom-media { + background-color: #66cc99; + color: #2a5c45; + min-width: 100px; +} + +#custom-media.custom-spotify { + background-color: #66cc99; +} + +#custom-media.custom-vlc { + background-color: #ffa000; +} + +#temperature { + background-color: #f0932b; +} + +#temperature.critical { + background-color: #eb4d4b; +} + +#tray { + background-color: #2980b9; +} + +#idle_inhibitor { + background-color: #2d3436; +} + +#idle_inhibitor.activated { + background-color: #ecf0f1; + color: #2d3436; +} + +#mpd { + background-color: #66cc99; + color: #2a5c45; +} + +#mpd.disconnected { + background-color: #f53c3c; +} + +#mpd.stopped { + background-color: #90b1b1; +} + +#mpd.paused { + background-color: #51a37a; +} + +#language { + background: #bbccdd; + color: #333333; + padding: 0 5px; + margin: 6px 3px; + min-width: 16px; +}