initial, no firefox yet :(

This commit is contained in:
voidarclabs
2025-07-22 16:18:19 +01:00
commit 221bcbf568
1095 changed files with 112089 additions and 0 deletions

106
.config/hypr/binds.conf Normal file
View File

@@ -0,0 +1,106 @@
# Main modifier
$mainMod = mod1 # super / meta / windows key
$submod = super
# Script Path
$scrPath = ~/.config/scripts
# Assign apps
$term = kitty
$editor = kitty -e nvim
$file = thunar
$browser = firefox
# Window/Session actions
bind = $mainMod, backspace, exec, $scrPath/dontkillsteam.sh # close focused window
bind = $mainMod, F, fullscreen # toggle the window between focus and fullscreen
bind = $mainMod, e, exec, $scrPath/wlogout.sh # launch logout menu
bind = $mainMod, d, exec, fuzzel
# Application shortcuts
bind = $mainMod, return, exec, $term # launch terminal emulator
bind = $mainMod, i, exec, $editor # launch text editor
bind = $mainMod, o, exec, $browser # launch web browser
# Audio control
bindl = , XF86Launch5, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute
bindel = , XF86Launch6, exec, $scrPath/volumecontrol.sh -o d # decrease volume
bindel = , XF86Launch7, exec, $scrPath/volumecontrol.sh -o i # increase volume
bindl = , XF86AudioMute, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute
bindl = , XF86AudioMicMute, exec, $scrPath/volumecontrol.sh -i m # toggle microphone mute
bindel = , XF86AudioLowerVolume, exec, $scrPath/volumecontrol.sh -o d # decrease volume
bindel = , XF86AudioRaiseVolume, exec, $scrPath/volumecontrol.sh -o i # increase volume
# Super key to drag windows
binds {
drag_threshold = 10
scroll_event_delay = 0
}
bindm = Super, mouse:272, movewindow
bindc = SUPER, mouse:272, togglefloating
# Resize floating window with scrollwheels
bind = $submod, mouse_down, resizeactive, 30 0
bind = $submod, mouse_up, resizeactive, -30 0
bind = $submod, mouse_right, resizeactive, 0 30
bind = $submod, mouse_left, resizeactive, 0 -30
bind = $submod, space, togglefloating, # toggle the window between focus and float
# Screenshot/Screencapture
bind = Super+SHIFT, S, exec, $scrPath/screenshot.sh s # partial screenshot capture
bind = $mainMod+Ctrl, P, exec, $scrPath/screenshot.sh sf # partial screenshot capture (frozen screen)
# Move/Change window focus
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, 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
# Move focused window to a workspace
bind = $mainMod+Shift, 1, movetoworkspacesilent, 1
bind = $mainMod+Shift, 2, movetoworkspacesilent, 2
bind = $mainMod+Shift, 3, movetoworkspacesilent, 3
bind = $mainMod+Shift, 4, movetoworkspacesilent, 4
bind = $mainMod+Shift, 5, movetoworkspacesilent, 5
bind = $mainMod+Shift, 6, movetoworkspacesilent, 6
bind = $mainMod+Shift, 7, movetoworkspacesilent, 7
bind = $mainMod+Shift, 8, movetoworkspacesilent, 8
bind = $mainMod+Shift, 9, movetoworkspacesilent, 9
bind = $mainMod+Shift, 0, movetoworkspacesilent, 10
# Move/Switch to special workspace (scratchpad)
bind = $mainMod, MINUS, togglespecialworkspace, scratch
bind = $mainMod SHIFT, MINUS, movetoworkspacesilent, special:scratch
# Resize floating windows with keyboard
bind = $submod, left, resizeactive, -50 0
bind = $submod, right, resizeactive, 50 0
bind = $submod, down, resizeactive, 0 50
bind = $submod, up, resizeactive, 0 -50
bind = $submod SHIFT, left, moveactive, -50 0
bind = $submod SHIFT, right, moveactive, 50 0
bind = $submod SHIFT, down, moveactive, 0 50
bind = $submod SHIFT, up, moveactive, 0 -50
bind = $submod+ctrl , left, moveactive, -150 0
bind = $submod+ctrl , right, moveactive, 150 0
bind = $submod+ctrl , down, moveactive, 0 150
bind = $submod+ctrl , up, moveactive, 0 -150
# Change window positions with keyboard
bind = $mainMod SHIFT, H, swapwindow, l
bind = $mainMod SHIFT, L, swapwindow, r
bind = $mainMod SHIFT, K, swapwindow, u
bind = $mainMod SHIFT, J, swapwindow, d

View File

@@ -0,0 +1,7 @@
source = ~/.config/hypr/binds.conf
source = ~/.config/hypr/style.conf
source = ~/.config/hypr/input.conf
source = ~/.config/hypr/rules.conf
source = ~/.config/hypr/windows.conf
source = ~/.config/hypr/startup.conf

View File

@@ -0,0 +1,7 @@
preload = ~/.config/hypr/wallpapers/wide_lines.png
preload = ~/.config/hypr/wallpapers/wide_lines2.png
wallpaper = DP-1, ~/.config/hypr/wallpapers/wide_lines.png
wallpaper = DP-3, ~/.config/hypr/wallpapers/wide_lines2.png
wallpaper = HDMI-A-1, ~/.config/hypr/wallpapers/wide_lines2.png

11
.config/hypr/input.conf Normal file
View File

@@ -0,0 +1,11 @@
input {
kb_layout = gb
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = -0.3
force_no_accel = 0
}

31
.config/hypr/rules.conf Normal file
View File

@@ -0,0 +1,31 @@
# Don't dim youtube
windowrulev2 = nodim, class:^(firefox|Firefox)$ title:^(.*YouTube.*)$
windowrulev2 = opaque, class:^(firefox|Firefox)$ title:^(.*YouTube.*)$
# Fix Davinci and Unreal
windowrulev2=unset,class:UnrealEditor$,title:\w*$
windowrulev2=noinitialfocus,class:UnrealEditor$,title:\w*$
windowrulev2=suppressevent activate,class:UnrealEditor$,title:\w*$
windowrulev2 = nodim, class:^(resolve)$
windowrulev2 = opaque, class:^(resolve)$
# Floaty Windows
windowrulev2 = float,title:^(About Mozilla Firefox)$
windowrulev2 = float,class:^(firefox)$,title:^(Picture-in-Picture)$
windowrulev2 = float,class:^(firefox)$,title:^(Library)$
windowrulev2 = float,class:^(nwg-look)$
windowrulev2 = float,class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = float,class:^(blueman-manager)$
windowrulev2 = float,class:^(nm-applet)$
windowrulev2 = float,class:^(nm-connection-editor)$
windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrulev2 = float,class:^(yad)$ # Protontricks-Gtk
# Layer rules
layerrule = blur,notifications
layerrule = ignorezero,notifications
layerrule = blur,swaync-notification-window
layerrule = ignorezero,swaync-notification-window
layerrule = blur,swaync-control-center
layerrule = ignorezero,swaync-control-center
layerrule = blur,logout_dialog

18
.config/hypr/startup.conf Normal file
View File

@@ -0,0 +1,18 @@
exec-once = $scrPath/resetxdgportal.sh # reset XDPH for screenshare
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH
exec-once = dbus-update-activation-environment --systemd --all # for XDPH
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH
exec-once = $scrPath/polkitkdeauth.sh # authentication dialogue for GUI apps
exec-once = waybar # launch the system bar
exec-once = udiskie --no-automount --smart-tray # front-end that allows to manage removable media
exec-once = swaync # start notification demon
exec-once = wl-paste --type text --watch cliphist store # clipboard store text data
exec-once = wl-paste --type image --watch cliphist store # clipboard store image data
exec-once = hyprpaper # Wallpaper Daemon
exec-once = wayvnc 0.0.0.0 --output=DP-1 # runs vnc server on all interfaces
exec-once = syncthing -home=/home/user01/.config/syncthing -no-browser # starts syncthing in background
#cool decorations
exec-once = hyprctl dispatch exec 'kitten panel --edge=background -o background_opacity=0 --output-name HDMI-A-1 sh -c "cmatrix -b -C magenta -a -u 10"'
exec-once = hyprctl dispatch exec 'kitten panel --edge=background -o background_opacity=0 --output-name DP-3 sh -c "cava"'
exec-once = hyprctl dispatch exec 'kitten panel --edge=background -o background_opacity=0 --output-name DP-1 sh -c "neofetch && tail -f /dev/null"'

106
.config/hypr/style.conf Normal file
View File

@@ -0,0 +1,106 @@
# Environment
env = PATH,$PATH:$scrPath
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
env = QT_QPA_PLATFORM,wayland;xcb
env = QT_QPA_PLATFORMTHEME,qt6ct
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = MOZ_ENABLE_WAYLAND,1
env = GDK_SCALE,1
# Misc
misc {
vrr = 0
disable_hyprland_logo = true
disable_splash_rendering = true
force_default_wallpaper = 0
}
xwayland {
force_zero_scaling = true
}
# Layout
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
permanent_direction_override = true
}
# GTK shennanigans
exec = gsettings set org.gnome.desktop.interface icon-theme 'BeautyDream'
exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Mocha'
exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark'
# Make things look nice
general {
gaps_in = 3
gaps_out = 8
border_size = 2
col.active_border = rgba(cba6f7ff) rgba(cba6f7ff) 45deg
col.inactive_border = rgba(45475acc) rgba(45475acc) 45deg
layout = dwindle
resize_on_border = true
}
group {
col.border_active = rgba(ca9ee6cc) rgba(f2d5cfcc) 45deg
col.border_inactive = rgba(bac2decc) rgba(bac2decc) 45deg
col.border_locked_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg
col.border_locked_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg
}
decoration {
rounding = 5
# Change transparency of focused and unfocused windows
active_opacity = 1.0
# inactive_opacity = 0.8
dim_inactive = true
dim_strength = 0.3
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 2
passes = 3
vibrancy = 0.1696
}
}
# Fonts and Cursors
exec = hyprctl setcursor Bibata-Modern-Ice 20
exec = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice'
exec = gsettings set org.gnome.desktop.interface cursor-size 20
exec = gsettings set org.gnome.desktop.interface font-name 'FiraMono Nerd Font'
exec = gsettings set org.gnome.desktop.interface document-font-name 'Cantarell 10'
exec = gsettings set org.gnome.desktop.interface monospace-font-name 'CaskaydiaCove Nerd Font Mono 9'
exec = gsettings set org.gnome.desktop.interface font-antialiasing 'rgba'
exec = gsettings set org.gnome.desktop.interface font-hinting 'full'
env XCURSOR_SIZE = 20
# Animations
animations {
enabled = true
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
bezier = my, 0.25, 0.73, 0.68, 1
animation = windows, 1, 2, my, slide
animation = windowsOut, 1, 2, my, slide
animation = border, 1, 3, my
animation = borderangle, 1, 8, my
animation = fade, 1, 1, my
animation = fadeIn, 0, 1, my
animation = fadeOut, 0, 1, my
animation = workspaces, 1, 2, my
animation = layersIn, 1, 2, my, popin 90%
animation = layersOut, 1, 2, my, slide
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -0,0 +1,7 @@
monitor = DP-1, 1920x1080@60, 0x0, 1
monitor = DP-3, 1920x1080@60, 1920x0, 1
monitor = HDMI-A-1, 1920x1080@60, -1920x0, 1
workspace = 2, monitor:HDMI-A-1, default:true
workspace = 3, monitor:DP-3, default:true
workspace = 1, monitor:DP-1, default:true