Compare commits

..

3 Commits

Author SHA1 Message Date
685dcfa301 fix: gitignore 2025-12-26 10:34:05 -08:00
0d9fd45d34 feat: hyperland with i3 manual tiling 2025-12-25 07:51:28 -08:00
970a284ebc latest 2025-12-23 19:33:56 -08:00
4 changed files with 187 additions and 118 deletions

View File

@@ -1,15 +1,14 @@
# ####################################################################################### # #######################################################################################
# AUTOGENERATED HYPR CONFIG. # AUTOGENERATED HYPRLAND CONFIG.
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, # EDIT THIS CONFIG ACCORDING TO THE WIKI INSTRUCTIONS.
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
# ####################################################################################### # #######################################################################################
autogenerated = 0 # remove this line to remove the warning autogenerated = 0 # remove this line to remove the warning
# This is an example Hyprland config file. # This is an example Hyprland config file.
# Refer to the wiki for more information. # Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ # https://wiki.hypr.land/Configuring/
# Please note not all available settings / options are set here. # Please note not all available settings / options are set here.
# For a full list, see the wiki # For a full list, see the wiki
@@ -23,21 +22,21 @@ autogenerated = 0 # remove this line to remove the warning
### MONITORS ### ### MONITORS ###
################ ################
# See https://wiki.hyprland.org/Configuring/Monitors/ # See https://wiki.hypr.land/Configuring/Monitors/
monitor=DP-6,preferred,0x0,auto monitor=,preferred,auto,auto
monitor=eDP-1,preferred,0x2160,1.8 exec-once = swaybg -i ~/Pictures/wallpapers/swoacyk0f3sf1.png
################### ###################
### MY PROGRAMS ### ### MY PROGRAMS ###
################### ###################
# See https://wiki.hyprland.org/Configuring/Keywords/ # See https://wiki.hypr.land/Configuring/Keywords/
# Set programs that you use # Set programs that you use
$terminal = footclient $terminal = kitty
$fileManager = dolphin $fileManager = nautilus
$menu = wofi --show drun $menu = wofi --show drun -GI
################# #################
@@ -46,102 +45,157 @@ $menu = wofi --show drun
# Autostart necessary processes (like notifications daemons, status bars, etc.) # Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this: # Or execute your favorite apps at launch like this:
exec-once = waybar
exec-once = foot --server
exec-once = nextcloud-desktop-client.nextcoud
# exec-once = $terminal # exec-once = $terminal
# exec-once = nm-applet & # exec-once = nm-applet &
# exec-once = waybar & hyprpaper & firefox # exec-once = waybar & hyprpaper & firefox
exec-once = nm-applet &
exec-once = blueman-applet &
exec-once = shikane &
exec-once = waybar &
exec-once = hyprpm reload -n
exec-once = flatpak run com.github.wwmm.easyeffects -w
exec-once = powertop --auto-tune
exec-once = systemctl --user start hyprpolkitagent
############################# #############################
### ENVIRONMENT VARIABLES ### ### ENVIRONMENT VARIABLES ###
############################# #############################
# See https://wiki.hyprland.org/Configuring/Environment-variables/ # See https://wiki.hypr.land/Configuring/Environment-variables/
env = XCURSOR_SIZE,24 env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24
###################
### PERMISSIONS ###
###################
# See https://wiki.hypr.land/Configuring/Permissions/
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
# for security reasons
# ecosystem {
# enforce_permissions = 1
# }
permission = /usr/(bin|local/bin)/grim, screencopy, allow
permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
##################### #####################
### LOOK AND FEEL ### ### LOOK AND FEEL ###
##################### #####################
# Refer to https://wiki.hyprland.org/Configuring/Variables/ # Refer to https://wiki.hypr.land/Configuring/Variables/
# https://wiki.hyprland.org/Configuring/Variables/#general # https://wiki.hypr.land/Configuring/Variables/#general
general { general {
gaps_in = 2 gaps_in = 4
gaps_out = 2 gaps_out = 4
border_size = 1 border_size = 1
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa) col.inactive_border = rgba(595959aa)
# Set to true enable resizing windows by clicking and dragging on borders and gaps # Set to true enable resizing windows by clicking and dragging on borders and gaps
resize_on_border = true resize_on_border = false
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on # Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on
allow_tearing = false allow_tearing = false
layout = dwindle #layout = dwindle
layout = hy3
} }
# https://wiki.hyprland.org/Configuring/Variables/#decoration
# https://wiki.hypr.land/Configuring/Variables/#decoration
decoration { decoration {
rounding = 10 rounding = 6
rounding_power = 2
# Change transparency of focused and unfocused windows # Change transparency of focused and unfocused windows
active_opacity = 1.0 active_opacity = 1.0
inactive_opacity = 1.0 inactive_opacity = 1.0
drop_shadow = true shadow {
shadow_range = 4 enabled = true
shadow_render_power = 3 range = 4
col.shadow = rgba(1a1a1aee) render_power = 3
color = rgba(1a1a1aee)
}
# https://wiki.hyprland.org/Configuring/Variables/#blur # https://wiki.hypr.land/Configuring/Variables/#blur
blur { blur {
enabled = true enabled = true
size = 3 size = 3
passes = 1 passes = 1
vibrancy = 0.1696 vibrancy = 0.1696
} }
} }
# https://wiki.hyprland.org/Configuring/Variables/#animations # https://wiki.hypr.land/Configuring/Variables/#animations
animations { animations {
enabled = true enabled = yes, please :)
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more # Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves
# NAME, X0, Y0, X1, Y1
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
bezier = quick, 0.15, 0, 0.1, 1
bezier = myBezier, 0.05, 0.9, 0.1, 1.05 # Default animations, see https://wiki.hypr.land/Configuring/Animations/
# NAME, ONOFF, SPEED, CURVE, [STYLE]
animation = windows, 1, 7, myBezier animation = global, 1, 10, default
animation = windowsOut, 1, 7, default, popin 80% animation = border, 1, 5.39, easeOutQuint
animation = border, 1, 10, default animation = windows, 1, 4.79, easeOutQuint
animation = borderangle, 1, 8, default animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
animation = fade, 1, 7, default animation = windowsOut, 1, 1.49, linear, popin 87%
animation = workspaces, 1, 6, default 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
animation = zoomFactor, 1, 7, quick
} }
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more # Ref https://wiki.hypr.land/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
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
# windowrule = rounding 0, floating:0, onworkspace:f[1]
# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more
dwindle { dwindle {
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
preserve_split = true # You probably want this preserve_split = true # You probably want this
} }
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more # See https://wiki.hypr.land/Configuring/Master-Layout/ for more
master { master {
new_status = master new_status = master
} }
# https://wiki.hyprland.org/Configuring/Variables/#misc # https://wiki.hypr.land/Configuring/Variables/#misc
misc { misc {
force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers 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. :( disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
} }
@@ -151,7 +205,7 @@ misc {
### INPUT ### ### INPUT ###
############# #############
# https://wiki.hyprland.org/Configuring/Variables/#input # https://wiki.hypr.land/Configuring/Variables/#input
input { input {
kb_layout = us kb_layout = us
kb_variant = kb_variant =
@@ -165,64 +219,68 @@ input {
touchpad { touchpad {
natural_scroll = false natural_scroll = false
tap-to-click = false
} }
} }
# https://wiki.hyprland.org/Configuring/Variables/#gestures # See https://wiki.hypr.land/Configuring/Gestures
gestures { gesture = 3, horizontal, workspace
workspace_swipe = true
}
# Example per-device config # Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more # See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more
device { device {
name = epic-mouse-v1 name = epic-mouse-v1
sensitivity = -0.5 sensitivity = -0.5
} }
#################### ###################
### KEYBINDINGSS ### ### KEYBINDINGS ###
#################### ###################
# See https://wiki.hyprland.org/Configuring/Keywords/ # See https://wiki.hypr.land/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier $mainMod = SUPER # Sets "Windows" key as main modifier
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more # Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more
bind = $mainMod, RETURN, exec, $terminal bind = $mainMod, RETURN, exec, $terminal
bind = $mainMod, R, exec, $menu bind = $mainMod, D, exec, $menu
bind = $mainMod, E, exec, $fileManager bind = $mainMod, F, fullscreen
bind = $mainMod, S, pin
#bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, W, togglegroup,
bind = $mainMod SHIFT, SPACE, togglefloating, bind = $mainMod SHIFT, SPACE, togglefloating,
bind = $mainMod SHIFT, Q, killactive, bind = $mainMod SHIFT, Q, hy3:killactive,
bind = $mainMod SHIFT, M, exit, bind = $mainMod SHIFT, M, exit,
# Move focus with hjkl
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d
# Move focus with hjkl
bind = $mainMod SHIFT, h, movewindoworgroup, l
bind = $mainMod SHIFT, l, movewindoworgroup, r
bind = $mainMod SHIFT, k, movewindoworgroup, u
bind = $mainMod SHIFT, j, movewindoworgroup, d
# move inside of grouped windows
bind = $mainMod, n, changegroupactive, f
bind = $mainMod, p, changegroupactive, b
bind = $mainMod, B, hy3:makegroup, h
bind = $mainMod, V, hy3:makegroup, v
bind = $mainMod, W, hy3:makegroup, tab
bind = $mainMod, A, hy3:changefocus, raise
bind = $mainMod, X, hy3:locktab
bind = $mainMod, E, hy3:expand, expand
bind = $mainMod, R, hy3:changegroup, opposite
bind = $mainMod SHIFT, A, hy3:changefocus, lower
bind = $mainMod SHIFT, E, hy3:expand, base
# Move focus with mainMod + arrow keys # Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l bind = $mainMod, h, hy3:movefocus, l
bind = $mainMod, right, movefocus, r bind = $mainMod, j, hy3:movefocus, d
bind = $mainMod, up, movefocus, u bind = $mainMod, k, hy3:movefocus, u
bind = $mainMod, down, movefocus, d bind = $mainMod, l, hy3:movefocus, r
bind = $mainMod, left, hy3:movefocus, l
bind = $mainMod, down, hy3:movefocus, d
bind = $mainMod, up, hy3:movefocus, u
bind = $mainMod, right, hy3:movefocus, r
bind = $mainMod SHIFT, h, hy3:movewindow, l, once
bind = $mainMod SHIFT, j, hy3:movewindow, d, once
bind = $mainMod SHIFT, k, hy3:movewindow, u, once
bind = $mainMod SHIFT, l, hy3:movewindow, r, once
bind = $mainMod SHIFT, left, hy3:movewindow, l, once
bind = $mainMod SHIFT, down, hy3:movewindow, d, once
bind = $mainMod SHIFT, up, hy3:movewindow, u, once
bind = $mainMod SHIFT, right, hy3:movewindow, r, once
# Switch workspaces with mainMod + [0-9] # Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1 bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2 bind = $mainMod, 2, workspace, 2
@@ -236,24 +294,16 @@ bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10 bind = $mainMod, 0, workspace, 10
# Move active window to a workspace with mainMod + SHIFT + [0-9] # Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 1, hy3:movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2 bind = $mainMod SHIFT, 2, hy3:movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3 bind = $mainMod SHIFT, 3, hy3:movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4 bind = $mainMod SHIFT, 4, hy3:movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5 bind = $mainMod SHIFT, 5, hy3:movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6 bind = $mainMod SHIFT, 6, hy3:movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7 bind = $mainMod SHIFT, 7, hy3:movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8 bind = $mainMod SHIFT, 8, hy3:movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9 bind = $mainMod SHIFT, 9, hy3:movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10 bind = $mainMod SHIFT, 0, hy3:movetoworkspace, 10
bind = $mainMod, F, fullscreen
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 = ,XF86MonBrightnessDown, exec, brightnessctl set 5%-
bindel = ,XF86MonBrightnessUp ,exec ,brightnessctl set 5%+
# Example special workspace (scratchpad) # Example special workspace (scratchpad)
bind = $mainMod, MINUS, togglespecialworkspace, magic bind = $mainMod, MINUS, togglespecialworkspace, magic
@@ -267,18 +317,32 @@ bind = $mainMod, mouse_up, workspace, e-1
bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow bindm = $mainMod, mouse:273, resizewindow
# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @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 -e4 -n2 set 5%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
# 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 ### ### WINDOWS AND WORKSPACES ###
############################## ##############################
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hypr.land/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
# Example windowrule v1 # Example windowrule
# windowrule = float, ^(kitty)$ # windowrule = float,class:^(kitty)$,title:^(kitty)$
# Example windowrule v2 # Ignore maximize requests from apps. You'll probably like this.
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ windowrule = suppressevent maximize, class:.*
windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. # Fix some dragging issues with XWayland
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0

View File

@@ -19,7 +19,6 @@ set $right l
set $laptop eDP-1 set $laptop eDP-1
include ~/.config/sway/config.d/* include ~/.config/sway/config.d/*
exec systemctl --user start shikane
### Output configuration ### Output configuration
# You can get the names of your outputs by running: swaymsg -t get_outputs # You can get the names of your outputs by running: swaymsg -t get_outputs
@@ -49,13 +48,19 @@ exec_always --no-startup-id '/home/jozamudi/.config/sway/scripts/clamshell-mode.
seat seat0 xcursor_theme Adwaita 35 seat seat0 xcursor_theme Adwaita 35
# Auto start .desktop files using dex #exec pipewire
exec pipewire
exec swaync exec swaync
exec waybar exec waybar
exec shikane
exec nm-applet
exec blueman-applet
exec mpd exec mpd
exec dex -a
exec syncthing exec syncthing
# Auto start .desktop files using dex
exec dex -a
#exec wl-paste -t text --watch clipman store --no-persist #exec wl-paste -t text --watch clipman store --no-persist
# There are two wl-paste processes running, one for the primary and one for the normal clipboard # There are two wl-paste processes running, one for the primary and one for the normal clipboard
exec wl-paste -t text --watch clipman store exec wl-paste -t text --watch clipman store

View File

@@ -2,10 +2,10 @@
{ {
"spacing": 2, // Gaps between modules (4px) "spacing": 2, // Gaps between modules (4px)
"modules-left": [ "modules-left": [
"sway/workspaces", "hyprland/workspaces",
"sway/mode", "hyprland/mode",
"sway/scratchpad", "hyprland/scratchpad",
"sway/window" "hyprland/window"
], ],
//"modules-center": [ //"modules-center": [
//"sway/window" //"sway/window"

2
.gitignore vendored
View File

@@ -1 +1 @@
./.config/nvim/lazy-lock.json .config/nvim/lazy-lock.json