-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
11 changed files
with
647 additions
and
51 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -43,6 +43,8 @@ config_files=" | |
wal | ||
zellij | ||
ghostty | ||
hypr | ||
waybar | ||
" | ||
|
||
if [ $backup == true ]; then | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
palette = 0=#45475a | ||
palette = 1=#f38ba8 | ||
palette = 2=#a6e3a1 | ||
palette = 3=#f9e2af | ||
palette = 4=#89b4fa | ||
palette = 5=#f5c2e7 | ||
palette = 6=#94e2d5 | ||
palette = 7=#a6adc8 | ||
palette = 8=#585b70 | ||
palette = 9=#f37799 | ||
palette = 10=#89d88b | ||
palette = 11=#ebd391 | ||
palette = 12=#74a8fc | ||
palette = 13=#f2aede | ||
palette = 14=#6bd7ca | ||
palette = 15=#bac2de | ||
background = #1e1e2e | ||
foreground = #cdd6f4 | ||
cursor-color = #f5e0dc | ||
cursor-text = #cdd6f4 | ||
selection-background = #585b70 | ||
selection-foreground = #cdd6f4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,341 @@ | ||
# Refer to the wiki for more information. | ||
# https://wiki.hyprland.org/Configuring/ | ||
|
||
# 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=,preferred,auto,auto | ||
#xrandr --output eDP-1 --primary --mode 1920x1080 --pos 0x1080 --rotate normal | ||
#--output HDMI-1 --off --output DP-1 --mode 3440x1440 --pos 1920x1080 --rotate normal --output DP-2 --mode 2560x1080 --pos 3141x0 --rotate normal --output DP-3 --off --output DP-4 --off | ||
monitor = eDP-1, 1920x1080, 0x1080, 1 | ||
monitor = DP-1, 3440x1440, 1920x1080, 1 | ||
monitor = DP-2, 2560x1080, 3141x0, 1 | ||
|
||
|
||
################### | ||
### MY PROGRAMS ### | ||
################### | ||
|
||
# See https://wiki.hyprland.org/Configuring/Keywords/ | ||
|
||
# Set programs that you use | ||
$terminal = ghostty | ||
$fileManager = nautilus | ||
$menu = rofi -show drun | ||
$myRunLauncher = 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 & | ||
exec-once = dunst -config ~/.cache/wal/dunstrc & | ||
exec-once = waypaper --restore | ||
|
||
# Auto-start app | ||
exec-once = slack | ||
exec-once = spotify | ||
|
||
# This will make sure that xdg-desktop-portal-hyprland can get the required variables on startup. | ||
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP | ||
|
||
|
||
############################# | ||
### ENVIRONMENT VARIABLES ### | ||
############################# | ||
|
||
# See https://wiki.hyprland.org/Configuring/Environment-variables/ | ||
|
||
env = XCURSOR_SIZE,12 | ||
env = HYPRCURSOR_SIZE,12 | ||
env = XDG_SESSION_TYPE,wayland | ||
env = XDG_CURRENT_DESKTOP,Hyprland | ||
env = XDG_SESSION_DESKTOP,Hyprland | ||
|
||
|
||
##################### | ||
### LOOK AND FEEL ### | ||
##################### | ||
|
||
# Refer to https://wiki.hyprland.org/Configuring/Variables/ | ||
|
||
# https://wiki.hyprland.org/Configuring/Variables/#general | ||
general { | ||
gaps_in = 5 | ||
gaps_out = 5 | ||
|
||
border_size = 2 | ||
|
||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors | ||
col.active_border = rgba(de744fee) rgba(a33a82ee) 45deg | ||
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 = master | ||
} | ||
|
||
# https://wiki.hyprland.org/Configuring/Variables/#decoration | ||
decoration { | ||
rounding = 5 | ||
|
||
# Change transparency of focused and unfocused windows | ||
active_opacity = 1.0 | ||
inactive_opacity = 1.0 | ||
|
||
shadow { | ||
enabled = true | ||
range = 4 | ||
render_power = 3 | ||
offset = 3 3 | ||
color = rgba(1a1a1acc) | ||
} | ||
|
||
# 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 = yes, please :) | ||
|
||
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more | ||
|
||
bezier = easeOutQuint,0.23,1,0.32,1 | ||
bezier = easeInOutCubic,0.65,0.05,0.36,1 | ||
bezier = linear,0,0,1,1 | ||
bezier = almostLinear,0.5,0.5,0.75,1.0 | ||
bezier = quick,0.15,0,0.1,1 | ||
|
||
animation = global, 1, 10, default | ||
animation = border, 1, 5.39, easeOutQuint | ||
animation = windows, 1, 4.79, easeOutQuint | ||
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% | ||
animation = windowsOut, 1, 1.49, linear, popin 87% | ||
animation = fadeIn, 1, 1.73, almostLinear | ||
animation = fadeOut, 1, 1.46, almostLinear | ||
animation = fade, 1, 3.03, quick | ||
animation = layers, 1, 3.81, easeOutQuint | ||
animation = layersIn, 1, 4, easeOutQuint, fade | ||
animation = layersOut, 1, 1.5, linear, fade | ||
animation = fadeLayersIn, 1, 1.79, almostLinear | ||
animation = fadeLayersOut, 1, 1.39, almostLinear | ||
animation = workspaces, 1, 1.94, almostLinear, fade | ||
animation = workspacesIn, 1, 1.21, almostLinear, fade | ||
animation = workspacesOut, 1, 1.94, almostLinear, fade | ||
} | ||
|
||
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/ | ||
# "Smart gaps" / "No gaps when only" | ||
# uncomment all if you wish to use that. | ||
# workspace = w[tv1], gapsout:0, gapsin:0 | ||
# workspace = f[1], gapsout:0, gapsin:0 | ||
# windowrulev2 = bordersize 0, floating:0, onworkspace:w[tv1] | ||
# windowrulev2 = rounding 0, floating:0, onworkspace:w[tv1] | ||
# windowrulev2 = bordersize 0, floating:0, onworkspace:f[1] | ||
# windowrulev2 = rounding 0, floating:0, onworkspace:f[1] | ||
|
||
# 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 ### | ||
############# | ||
|
||
# https://wiki.hyprland.org/Configuring/Variables/#input | ||
input { | ||
kb_layout = us | ||
kb_variant = altgr-intl | ||
kb_model = | ||
kb_options = | ||
kb_rules = | ||
|
||
follow_mouse = 1 | ||
|
||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification. | ||
|
||
touchpad { | ||
natural_scroll = false | ||
} | ||
} | ||
|
||
# https://wiki.hyprland.org/Configuring/Variables/#gestures | ||
gestures { | ||
workspace_swipe = false | ||
} | ||
|
||
# Example per-device config | ||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more | ||
device { | ||
name = logitech-g502-x | ||
sensitivity = -0.5 | ||
accel_profile = flat | ||
} | ||
|
||
|
||
################### | ||
### KEYBINDINGS ### | ||
################### | ||
|
||
# See https://wiki.hyprland.org/Configuring/Keywords/ | ||
$mainMod = SUPER # Sets "Windows" key as main modifier | ||
|
||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more | ||
bind = $mainMod, return, exec, $terminal | ||
bind = $mainMod SHIFT, Q, killactive, | ||
bind = $mainMod, M, exit, | ||
bind = $mainMod, E, exec, $fileManager | ||
bind = $mainMod, T, togglefloating, | ||
bind = $mainMod, D, exec, $menu | ||
bind = $mainMod, F2, exec, $myRunLauncher | ||
bind = $mainMod, F4, exec, ~/.dotfiles/bin/rofi-logout | ||
bind = $mainMod, F, fullscreen, | ||
bind = $mainMod SHIFT, return, layoutmsg, swapwithmaster master, | ||
bind = $mainMod, comma, layoutmsg, addmaster | ||
bind = $mainMod, period, layoutmsg, removemaster | ||
bind = CTRL, Print, exec, grim -g "$(slurp -d)" - | swappy -f - | ||
|
||
# Focud and window management | ||
bind = $mainMod, left, movefocus, l | ||
bind = $mainMod, right, movefocus, r | ||
bind = $mainMod, up, movefocus, u | ||
bind = $mainMod, down, movefocus, d | ||
bind = $mainMod SHIFT, J, layoutmsg, swapnext | ||
bind = $mainMod SHIFT, K, layoutmsg, swapprev | ||
bind = $mainMod, J, layoutmsg, cyclenext | ||
bind = $mainMod, K, layoutmsg, cycleprev | ||
|
||
# resize | ||
bind = $mainMod, H, splitratio, -0.05, | ||
bind = $mainMod, L, splitratio, +0.05, | ||
|
||
# Switch workspaces with mainMod + [0-9] | ||
bind = $mainMod, 1, focusworkspaceoncurrentmonitor, 1 | ||
bind = $mainMod, 2, focusworkspaceoncurrentmonitor, 2 | ||
bind = $mainMod, 3, focusworkspaceoncurrentmonitor, 3 | ||
bind = $mainMod, 4, focusworkspaceoncurrentmonitor, 4 | ||
bind = $mainMod, 5, focusworkspaceoncurrentmonitor, 5 | ||
bind = $mainMod, 6, focusworkspaceoncurrentmonitor, 6 | ||
bind = $mainMod, 7, focusworkspaceoncurrentmonitor, 7 | ||
bind = $mainMod, 8, focusworkspaceoncurrentmonitor, 8 | ||
bind = $mainMod, 9, focusworkspaceoncurrentmonitor, 9 | ||
bind = $mainMod, 0, focusworkspaceoncurrentmonitor, 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 | ||
|
||
# Spotify | ||
bindl = $mainMod, P, exec, dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause | ||
bindl = $mainMod, bracketleft, exec, dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous | ||
bindl = $mainMod, bracketright, exec, dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next | ||
|
||
############################## | ||
### 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 | ||
|
||
# lanvideobridge | ||
windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$ | ||
windowrulev2 = noanim, class:^(xwaylandvideobridge)$ | ||
windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$ | ||
windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$ | ||
windowrulev2 = noblur, class:^(xwaylandvideobridge)$ | ||
windowrulev2 = nofocus, class:^(xwaylandvideobridge)$ | ||
|
||
|
||
# Opacity overrides | ||
windowrulev2 = opacity 0.96, class:^(kitty)$ | ||
windowrulev2 = opacity 0.96, class:^(com.mitchellh.ghostty)$ | ||
windowrulev2 = opacity 0.85, class:^(Rofi)$ | ||
windowrulev2 = opacity 0.97, class:^(jetbrains-idea)$ |
Oops, something went wrong.