hyprland conf added

This commit is contained in:
parent fa26a52414
commit 4e4b79c678
8 changed files with 452 additions and 0 deletions

View File

@ -0,0 +1,16 @@
# 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
bezier = easeOutQuint, 0.22, 1, 0.36, 1
bezier = easeInOutQuint, 0.83, 0, 0.17, 1
animation = windows, 1, 2, easeInOutQuint
animation = border, 1, 4, easeInOutQuint
animation = fade, 1, 3, easeInOutQuint
animation = workspaces, 1, 2, easeInOutQuint
}

View File

@ -0,0 +1,9 @@
# ╭──────────────────────────────────────────────────────────╮
# │ Autostarts │
# │ by goodhumored 2024 │
# ╰──────────────────────────────────────────────────────────╯
exec-once = copyq --start-server
exec-once = waybar & hyprpaper
exec-once = dunst
exec-once = hypridle

View File

@ -0,0 +1,37 @@
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = us, ru
kb_variant =
kb_model =
kb_options = grp:win_space_toggle
kb_rules =
follow_mouse = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
touchpad {
natural_scroll = true
}
repeat_delay = 200
repeat_rate = 50
}
# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
workspace_swipe = true
}
# 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=my-epic-keyboard-v1
kb_layout=us,pl,de
}

View File

@ -0,0 +1,97 @@
# ╭──────────────────────────────────────────────────────────╮
# │ Keybindings │
# │ by gh │
# ╰──────────────────────────────────────────────────────────╯
# ╭──────────────────────────────────────────────────────────╮
# │ general │
# ╰──────────────────────────────────────────────────────────╯
# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier
bind = $mainMod, T, exec, $terminal # terminal
bind = $mainMod, Q, killactive, # kill window
bind = $mainMod, E, exec, $fileManager # file manager
bind = $mainMod, V, togglefloating, # toggle float
bind = $mainMod, A, exec, $toggle_menu_cmd # wofi
bind = $mainMod, P, pseudo, # pseudo
bind = $mainMod, DELETE, exit, # pseudo
bind = $mainMod, J, togglesplit, # toggle split
bind = $mainMod, L, exec, hyprlock # lock screen
# ────────────────────────── window move focus ────────────────────────
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# ────────────────────────── switch workspaces ────────────────────────
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
bind = $mainMod CTRL, H, workspace, -1
bind = $mainMod CTRL, L, workspace, +1
# ─────────────────────── move window to workspace ───────────────────────
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
bind = $mainMod CTRL SHIFT, H, movetoworkspace, -1
bind = $mainMod CTRL SHIFT, L, movetoworkspace, +1
# ───────────────────────── workspace/scratchpad ─────────────────────────
bind = , F12, togglespecialworkspace, magic
bind = SHIFT, F12, movetoworkspace, special:magic
# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1
# ──────────────────────────────── copyq ──────────────────────────────
bind = CTRL_ALT, V, exec, copyq toggle
# ───────────────────────────── screenshots ───────────────────────────
bind = $mainMod SHIFT, S, exec, grimblast copy area --freeze --notify --cursor
bind = , Print, exec, grimblast copy active --freeze --notify --cursor
bind = SHIFT, Print, exec, grimblast copy screen --freeze --notify --cursor
# ╭──────────────────────────────────────────────────────────╮
# │ mediakeys │
# ╰──────────────────────────────────────────────────────────╯
# l -> do stuff even when locked
# e -> repeats when key is held
bindle=, XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
bindle=, XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%
bindle=, XF86MonBrightnessUp, exec, brightnessctl set +10%
bindle=, XF86MonBrightnessDown, exec, brightnessctl set 10%-
bindl=, XF86AudioMute, exec, amixer set Master toggle
bindl=, XF86AudioPlay, exec, playerctl play-pause
bindl=, XF86AudioPause, exec, playerctl play-pause
bindl=, XF86AudioStop, exec, playerctl play-pause
bindl=, XF86AudioNext, exec, playerctl next
bindl=, XF86AudioPrev, exec, playerctl previous
bindl= CTRL ALT SHIFT, H, exec, playerctl previous
bindl= CTRL ALT SHIFT, L, exec, playerctl next
bindl= CTRL ALT SHIFT, SPACE, exec, playerctl play-pause
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

View File

@ -0,0 +1,31 @@
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.
}
# Screenlock
listener {
# HYPRLOCK TIMEOUT
timeout = 600
# HYPRLOCK ONTIMEOUT
on-timeout = loginctl lock-session
}
# dpms
listener {
# DPMS TIMEOUT
timeout = 660
# DPMS ONTIMEOUT
on-timeout = hyprctl dispatch dpms off
# DPMS ONRESUME
on-resume = hyprctl dispatch dpms on
}
# Suspend
listener {
# SUSPEND TIMEOUT
timeout = 1800
#SUSPEND ONTIMEOUT
on-timeout = systemctl suspend
}

176
.config/hypr/hyprland.conf Normal file
View File

@ -0,0 +1,176 @@
# 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=,preferred,auto,auto
###################
### MY PROGRAMS ###
###################
# See https://wiki.hyprland.org/Configuring/Keywords/
# Set programs that you use
$terminal = alacritty
$fileManager = dolphin
$toggle_menu_cmd = pgrep wofi >/dev/null 2>&1 && killall wofi || wofi --show drun
# ╭──────────────────────────────────────────────────────────╮
# │ AUTOSTART │
# ╰──────────────────────────────────────────────────────────╯
source = ./conf/autostart.conf
#############################
### ENVIRONMENT VARIABLES ###
#############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24
#####################
### LOOK AND FEEL ###
#####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general
general {
gaps_in = 2
gaps_out = 4
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(aaaaaa77)
col.inactive_border = rgba(000000aa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = true
# 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 = 2
# Change transparency of focused and unfocused windows
active_opacity = 1.0
inactive_opacity = 0.9
fullscreen_opacity = 1.0
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
}
}
# XDG Desktop Portal
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
# QT
env = QT_QPA_PLATFORM,wayland;xcb
env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_QPA_PLATFORMTHEME,qt5ct
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
# GDK
env = GDK_SCALE,1
# Toolkit Backend
env = GDK_BACKEND,wayland,x11,*
env = CLUTTER_BACKEND,wayland
# Mozilla
env = MOZ_ENABLE_WAYLAND,1
# Set the cursor size for xcursor
env = XCURSOR_SIZE,24
# Disable appimage launcher by default
env = APPIMAGELAUNCHER_DISABLE,1
# OZONE
env = OZONE_PLATFORM,wayland
# ╭──────────────────────────────────────────────────────────╮
# │ Animations │
# ╰──────────────────────────────────────────────────────────╯
source = conf/animations.conf
# 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 = true # If true disables the random hyprland logo / anime girl background. :(
}
# ╭──────────────────────────────────────────────────────────╮
# │ Input │
# ╰──────────────────────────────────────────────────────────╯
source = ./conf/input.conf
# ╭──────────────────────────────────────────────────────────╮
# │ Keybindings │
# ╰──────────────────────────────────────────────────────────╯
source = ./conf/keybindings.conf
##############################
### 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)$
windowrule = size 300 400,(copyq)
windowrule = float, (copyq|pavucontrol|blueman-manager|wofi|rofi)
windowrule = center, (wofi)
windowrule = move onscreen cursor,(copyq|pavucontrol|blueman-manager)
# Example windowrule v2
windowrulev2 = float,class:^(cursor-float)$
windowrulev2 = move onscreen cursor,class:^(cursor-float)$
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

View File

@ -0,0 +1,84 @@
# _ _ _
# | |__ _ _ _ __ _ __| | ___ ___| | __
# | '_ \| | | | '_ \| '__| |/ _ \ / __| |/ /
# | | | | |_| | |_) | | | | (_) | (__| <
# |_| |_|\__, | .__/|_| |_|\___/ \___|_|\_\
# |___/|_|
#
background {
monitor =
path = $HOME/wallpapers/isaac_cathedral.jpg
}
label {
monitor =
#clock
text = cmd[update:1000] echo "$TIME"
color = rgba(255, 255, 255, 1.0)
font_size = 128
font_family = Fira Bold
shadow_passes = 5
shadow_size = 10
position = 0, 120
halign = center
valign = center
}
input-field {
monitor =
size = 320, 40
outline_thickness = 3
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
dots_spacing = 1 # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true
dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
outer_color = rgba(50, 50, 50, 0.5)
inner_color = rgba(50, 50, 50, 0.5)
font_color = rgb(255, 255, 255)
fade_on_empty = true
fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
placeholder_text = <span font_family="FiraCode Nerd" size="18" color="white">Password, please</span> # 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 = Неправильно, попробуй ещё раз! (попыток осталось: $ATTEMPTS) # can be set to empty
fail_transition = 300 # transition time in ms between normal outer_color and fail_color
capslock_color = rgb(150, 34, 34)
numlock_color = -1
bothlock_color = rgb(150, 34, 34)
invert_numlock = false # change color if numlock is off
swap_font_color = false # see below
position = 0, -80
halign = center
valign = center
}
label {
monitor =
text = $USER
color = rgba(200, 200, 200, 1.0)
font_size = 20
font_family = Fira Semibold
position = 20, 20
halign = left
valign = bottom
shadow_passes = 5
shadow_size = 10
}
# image {
# monitor =
# path = $HOME/wallpapers/isaac_cathedral.jpg
# size = 280 # lesser side if not 1:1 ratio
# rounding = -1 # negative values mean circle
# border_size = 4
# border_color = rgb(221, 221, 221)
# rotate = 0 # degrees, counter-clockwise
# reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
# # reload_cmd = # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
# position = 0, 200
# halign = center
# valign = center
# }

View File

@ -0,0 +1,2 @@
preload = ~/wallpapers/isaac_cathedral.jpg
wallpaper = ,~/wallpapers/isaac_cathedral.jpg