diff --git a/hypr/env.conf b/hypr/env.conf new file mode 100755 index 0000000..4b79fbc --- /dev/null +++ b/hypr/env.conf @@ -0,0 +1,23 @@ + +env = XCURSOR_SIZE,24 + +#env = LIBVA_DRIVER_NAME,nvidia +#env = XDG_SESSION_TYPE,wayland +#env = GDM_BACKEND,nvidia-drm +#env = __GLX_VENDOR_LIBRARY_NAME,nvidia +#env = WLR_NO_HARDWARE_CURSORS,1 +env = QT_QPA_PLATFORMTHEME,gtk3 +env = QT_QPA_PLATFORM,wayland;xcb + +# GarbageTK +env = GTK_THEME,adw-gtk3-dark + +# moar wayland +env = SDL_VIDEODRIVER,wayland +env = CLUTTER_BACKEND,wayland + +# Exec +#env = PATH,/home/kosmx/.local/share/graalvm/bin:$PATH + +# XDG +env = XDG_RUNTIME_DIR,/run/user/1000/ diff --git a/hypr/exec.conf b/hypr/exec.conf new file mode 100755 index 0000000..e0ffde0 --- /dev/null +++ b/hypr/exec.conf @@ -0,0 +1,34 @@ +# Startup apps and services config file + + + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more + +# Execute your favorite apps at launch +# exec-once = waybar & hyprpaper & firefox + + +exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = hyprpaper +exec-once = waybar +exec-once = swaync + +# clippy +exec-once = wl-paste --type text --watch cliphist -max-items 36 store #Stores only text data +exec-once = wl-paste --type image --watch cliphist -max-items 36 store #Stores only image data + +#exec-once = hyprland-per-window-layout + +exec-once = udiskie & + +exec-once = lxpolkit +# exec-once = /usr/lib/polkit-kde-authentication-agent-1 +# exec-once = swayidle -w timeout 300 'sh ~/.config/swaylock.sh' timeout 310 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' +exec-once = hypridle + +#exec-once = /usr/libexec/kdeconnectd # kdeconnect daemon +exec-once = kdeconnect-indicator + +# audit (apparmor) logger +# exec-once = aa-notify -p -s 1 -w 60 -f /var/log/audit/audit.log + diff --git a/hypr/hypridle.conf b/hypr/hypridle.conf new file mode 100644 index 0000000..204bf79 --- /dev/null +++ b/hypr/hypridle.conf @@ -0,0 +1,35 @@ +# Config yoinked from hyprland website +general { + lock_cmd = pidof hyprlock || hyprlock # 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/hypr/hyprland.conf b/hypr/hyprland.conf new file mode 100755 index 0000000..b83ba7e --- /dev/null +++ b/hypr/hyprland.conf @@ -0,0 +1,143 @@ + +# ####################################################################################### +# 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. +# ####################################################################################### + +# +# Please note not all available settings / options are set here. +# For a full list, see the wiki +# + +#autogenerated = 1 # remove this line to remove the warning + +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor=,preferred,auto,auto + +# Source a file (multi-file configs) +# source = ~/.config/hypr/myColors.conf + +source=./env.conf + +# Exec stuffs + +source=./exec.conf + +# Catppuccin theme colors +source=./macchiato.conf + +# Window rules + +windowrule = float,^(org.kde.polkit-kde-authentication-agent-1)$ +windowrule = center,^(Rofi)$ +windowrule = stayfocused,^(Rofi)$ + +# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ +input { + kb_layout = hu + kb_variant = 102_qwertz_dot_nodead + kb_model = + kb_options = grp:menu_toggle + kb_rules = + + follow_mouse = 1 + + touchpad { + natural_scroll = no + } + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. +} + +general { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + gaps_in = 1 + gaps_out = 2 + border_size = 1 + col.active_border = $blue + col.inactive_border = $overlay0 + + layout = dwindle +} + +decoration { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + + rounding = 5 + + blur { + enabled = true + size = 3 + passes = 1 + } + + drop_shadow = false + shadow_range = 4 + shadow_render_power = 3 + # inactive_opacity = .72 hehe + col.shadow = rgba($baseAlphaee) +} + +animations { + enabled = yes + + # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + bezier = cubic, 0.65, 0, 0.35, 1 + + 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, myBezier, slidevert + animation = specialWorkspace, 1, 3, cubic, slide +} + +dwindle { + # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more + pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = yes # you probably want this +} + +master { + # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more + # new_is_master = true +} + +gestures { + # See https://wiki.hyprland.org/Configuring/Variables/ for more + workspace_swipe = on + workspace_swipe_fingers = 3 + workspace_swipe_invert = false +} + +xwayland { + force_zero_scaling = true +} + +misc { + vrr = 1 # VRR on for every program needing it + disable_splash_rendering = true + disable_hyprland_logo = true + + #force_hypr_chan = true # there is suddenly an anime girl on the background :D +} + +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more +# device:epic-mouse-v1 { +# sensitivity = -0.5 +# } + +# Example windowrule v1 +# windowrule = float, ^(kitty)$ +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + + +source=./keybinds.conf diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf new file mode 100644 index 0000000..2aa4ae7 --- /dev/null +++ b/hypr/hyprlock.conf @@ -0,0 +1,79 @@ +source = ./macchiato.conf + +$accent = $blue +$accentAlpha = $blueAlpha +$font = FiraCode Nerd Font + +# GENERAL +general { + disable_loading_bar = true + hide_cursor = false +} + +# BACKGROUND +background { + monitor = + path = $XDG_DATA_HOME/backgrounds/eKxlw8.png + blur_passes = 0 + color = $base +} + +# TIME +label { + monitor = + text = cmd[update:30000] echo "$(date +"%R")" + color = $text + font_size = 90 + font_family = $font + position = -30, 0 + halign = right + valign = top +} + +# DATE +label { + monitor = + text = cmd[update:43200000] echo "$(date +"%A, %d %B %Y")" + color = $text + font_size = 25 + font_family = $font + position = -30, -150 + halign = right + valign = top +} + +# USER AVATAR + +# image { +# monitor = +# path = ~/.face +# size = 100 +# border_color = $accent +# +# position = 0, 75 +# halign = center +# valign = center +# } + +# INPUT FIELD +input-field { + monitor = + size = 300, 60 + outline_thickness = 4 + dots_size = 0.2 + dots_spacing = 0.2 + dots_center = true + outer_color = $accent + inner_color = $surface0 + font_color = $text + fade_on_empty = false + placeholder_text = 󰌾 Logged in as $USER + hide_input = false + check_color = $accent + fail_color = $red + fail_text = $FAIL ($ATTEMPTS) + capslock_color = $yellow + position = 0, -35 + halign = center + valign = center +} diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf new file mode 100755 index 0000000..6b06f2e --- /dev/null +++ b/hypr/hyprpaper.conf @@ -0,0 +1,6 @@ +preload = /home/ha5pls/.local/share/backgrounds/eKxlw8.jpg + +wallpaper = ,/home/ha5pls/.local/share/backgrounds/eKxlw8.jpg + +splash = false + diff --git a/hypr/keybinds.conf b/hypr/keybinds.conf new file mode 100755 index 0000000..22f092f --- /dev/null +++ b/hypr/keybinds.conf @@ -0,0 +1,132 @@ +# Keybinds configuration file + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more +$mainMod = SUPER + +# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more +bind = $mainMod, T, exec, alacritty +bind = $mainMod, W, exec, flatpak run io.gitlab.librewolf-community +bind = $mainMod, BACKSPACE, killactive, +bind = $mainMod CTRL ALT, BACKSPACE, exit, +bind = $mainMod CTRL, BACKSPACE, exec, sh ~/.config/swaylock.sh +#bind = $mainMod, PAUSE, killactive, +bind = $mainMod, F, exec, nautilus +bind = $mainMod, Y, togglefloating, +bind = $mainMod SHIFT, Y, workspaceopt, allfloat +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod SHIFT, P, pin, +bind = $mainMod SHIFT, P, workspaceopt, allpseudo, +bind = $mainMod, S, togglesplit, # dwindle +bind = $mainMod, E, fullscreen, 1 +bind = $mainMod SHIFT, E, fullscreen, 0 +# bind = $mainMod CTRL, E, fakefullscreen, +bind = $mainMod SHIFT, PERIOD, pin, +binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -1 1.4 @DEFAULT_AUDIO_SINK@ 5%+ +binde = , XF86AudioLowerVolume, exec, wpctl set-volume -1 1.4 @DEFAULT_AUDIO_SINK@ 5%- +binde = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +binde = , XF86MonBrightnessUp, exec, brightnessctl set '12.75+' +binde = , XF86MonBrightnessDown, exec, brightnessctl set '12.75-' + +#bind = $mainMod ALT, SPACE, exec, hyprctl switchxkblayout + +# 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 + +bind = $mainMod, H, movefocus, l +bind = $mainMod, J, movefocus, d +bind = $mainMod, K, movefocus, u +bind = $mainMod, L, movefocus, r + + +bind = $mainMod SHIFT, left, movewindow, l +bind = $mainMod SHIFT, right, movewindow, r +bind = $mainMod SHIFT, up, movewindow, u +bind = $mainMod SHIFT, down, movewindow, d + +bind = $mainMod SHIFT, H, movetoworkspace, l +bind = $mainMod SHIFT, J, movetoworkspace, r+1 +bind = $mainMod SHIFT, K, movetoworkspace, r-1 +bind = $mainMod SHIFT, L, movetoworkspace, r + + +# Resize commands +binde = $mainMod CTRL SHIFT, left, resizeactive, -1 0 +binde = $mainMod CTRL SHIFT, right, resizeactive, 1 0 +binde = $mainMod CTRL SHIFT, up, resizeactive, 0 -1 +binde = $mainMod CTRL SHIFT, down, resizeactive, 0 1 +binde = $mainMod CTRL SHIFT, H, resizeactive, -32 0 +binde = $mainMod CTRL SHIFT, J, resizeactive, 0 32 +binde = $mainMod CTRL SHIFT, K, resizeactive, 0 -32 +binde = $mainMod CTRL SHIFT, L, resizeactive, 32 0 + +# Switch workspaces with mainMod + CTRL + [0-9] +bind = $mainMod CTRL, 1, workspace, 1 +bind = $mainMod CTRL, 2, workspace, 2 +bind = $mainMod CTRL, 3, workspace, 3 +bind = $mainMod CTRL, 4, workspace, 4 +bind = $mainMod CTRL, 5, workspace, 5 +bind = $mainMod CTRL, 6, workspace, 6 +bind = $mainMod CTRL, 7, workspace, 7 +bind = $mainMod CTRL, 8, workspace, 8 +bind = $mainMod CTRL, 9, workspace, 9 +bind = $mainMod CTRL, 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 + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod CTRL, mouse_down, workspace, r-1 +bind = $mainMod CTRL, mouse_up, workspace, r+1 + +bind = $mainMod SHIFT, mouse_down, movetoworkspace, r-1 +bind = $mainMod SHIFT, mouse_up, movetoworkspace, r+1 + +bind = $mainMod CTRL, K, workspace, r-1 +bind = $mainMod CTRL, J, workspace, r+1 + +bind = $mainMod CTRL, up, workspace, r-1 +bind = $mainMod CTRL, down, workspace, r+1 + +# Special workspace "junkyard" +bind = $mainMod, mouse:274, movetoworkspacesilent, special +bind = $mainMod, C, movetoworkspacesilent, special +bind = $mainMod SHIFT, mouse:274, movetoworkspace, special +bind = $mainMod SHIFT, C, movetoworkspace, special +bind = $mainMod, TAB, togglespecialworkspace, +bind = $mainMod CTRL, END, workspace, empty +bind = $mainMod SHIFT, END, movetoworkspace, empty +bind = $mainMod CTRL, HOME, workspace, 1 +bind = $mainMod SHIFT, HOME, movetoworkspace, 1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow +bindm = $mainMod SHIFT, mouse:272, resizewindow + + +# Tools (launcher/etc) +bind = $mainMod, SPACE, exec, ~/.config/rofi/launchers/type-1/launcher.sh +bind = $mainMod SHIFT, V, exec, cliphist list | rofi -theme ~/.config/rofi/launchers/type-1/style-5.rasi -dmenu | cliphist decode | wl-copy +bind = $mainMod SHIFT CTRL, V, exec, cliphist list | rofi -theme ~/.config/rofi/launchers/type-1/style-5.rasi -dmenu | cliphist delete +bind = $mainMod, minus, exec, rofi -theme ~/.config/rofi/launchers/type-1/style-5.rasi -show calc -modi calc -no-show-match -no-sort -no-persist-history -calc-command "echo -n '{result}' | wl-copy" +bind = $mainMod, B, exec, pkill waybar || waybar +bind = $mainMod SHIFT, ESCAPE, exec, plasma-systemmonitor # TODO add my own monitor +bind = $mainMod, N, exec, swaync-client -t -sw + +bind = $mainMod SHIFT, S, exec, sh -c "slurp | grim -g - - | wl-copy && wl-paste > $(xdg-user-dir PICTURES)/screenshots/$(date +'%Y-%m-%d-%H%M%S_grim.png')" +bind = $mainMod SHIFT CTRL, S, exec, sh -c "grim - | wl-copy && wl-paste > $(xdg-user-dir PICTURES)/screenshots/$(date +'%Y-%m-%d-%H%M%S_grim.png')" +bind = $mainMod CTRL, C, exec, sh -c "hyprpicker | wl-copy" + +bind = $mainMod, PERIOD, exec, rofi -theme ~/.config/rofi/launchers/type-3/style-5.rasi -modi emoji -show emoji diff --git a/hypr/macchiato.conf b/hypr/macchiato.conf new file mode 100644 index 0000000..9e7071a --- /dev/null +++ b/hypr/macchiato.conf @@ -0,0 +1,78 @@ + +$rosewater = rgb(f4dbd6) +$rosewaterAlpha = f4dbd6 + +$flamingo = rgb(f0c6c6) +$flamingoAlpha = f0c6c6 + +$pink = rgb(f5bde6) +$pinkAlpha = f5bde6 + +$mauve = rgb(c6a0f6) +$mauveAlpha = c6a0f6 + +$red = rgb(ed8796) +$redAlpha = ed8796 + +$maroon = rgb(ee99a0) +$maroonAlpha = ee99a0 + +$peach = rgb(f5a97f) +$peachAlpha = f5a97f + +$yellow = rgb(eed49f) +$yellowAlpha = eed49f + +$green = rgb(a6da95) +$greenAlpha = a6da95 + +$teal = rgb(8bd5ca) +$tealAlpha = 8bd5ca + +$sky = rgb(91d7e3) +$skyAlpha = 91d7e3 + +$sapphire = rgb(7dc4e4) +$sapphireAlpha = 7dc4e4 + +$blue = rgb(8aadf4) +$blueAlpha = 8aadf4 + +$lavender = rgb(b7bdf8) +$lavenderAlpha = b7bdf8 + +$text = rgb(cad3f5) +$textAlpha = cad3f5 + +$subtext1 = rgb(b8c0e0) +$subtext1Alpha = b8c0e0 + +$subtext0 = rgb(a5adcb) +$subtext0Alpha = a5adcb + +$overlay2 = rgb(939ab7) +$overlay2Alpha = 939ab7 + +$overlay1 = rgb(8087a2) +$overlay1Alpha = 8087a2 + +$overlay0 = rgb(6e738d) +$overlay0Alpha = 6e738d + +$surface2 = rgb(5b6078) +$surface2Alpha = 5b6078 + +$surface1 = rgb(494d64) +$surface1Alpha = 494d64 + +$surface0 = rgb(363a4f) +$surface0Alpha = 363a4f + +$base = rgb(24273a) +$baseAlpha = 24273a + +$mantle = rgb(1e2030) +$mantleAlpha = 1e2030 + +$crust = rgb(181926) +$crustAlpha = 181926