diff --git a/eggs/hypr/hyprland.conf b/eggs/hypr/hyprland.conf index 59befb5f..b798cba6 100755 --- a/eggs/hypr/hyprland.conf +++ b/eggs/hypr/hyprland.conf @@ -1,18 +1,7 @@ -autogenerated = 0 +autogenerated = 0 -# See https://wiki.hyprland.org/Configuring/Monitors/ -monitor=DP-2, 3440x1440@165, 0x0, 1 -monitor=DP-3, 3440x1440, -3440x0, 1 - -#monitor=HDMI-A-1, 800x480@60, 0x-480, 1 - -# See https://wiki.hyprland.org/Configuring/Keywords/ for more - -# Source a file (multi-file configs) -# source = ~/.config/hypr/myColors.conf - -# Set programs that you use +# ── Program variables ── $terminal = kitty $browser = librewolf $fileManager = thunar @@ -22,355 +11,44 @@ $workspace-switcher = /home/someone/Builds/microscripts/workspace_manager $special-workspace-movment = /home/someone/Builds/microscripts/specia-workspace-movment-toggle $kill-on-unfocus = /home/someone/Builds/microscripts/kill-on-unfocus -# Some default env vars. -env = XCURSOR_SIZE,16 -env = XCURSOR_THEME,catppuccin-frappe-mauve-cursors -env = QT_QPA_PLATFORMTHEME,qt5ct # should also aply to qt6ct -env = XDG_SESSION_TYPE,wayland -env = GTK_THEME,catppuccin-frappe-mauve-standard+default -env = ICON_THEME,catppuccin-frappe-mauve-cursors - -env = GNOME22_USER_DIR,/home/someone/.config/gnome2 # For nemo and other gnome 2 apps -#env = DESKTOP_SESSION,gnome # Used to let xdg-su (e.g. Yast) know use gnomesu (libgnomesu libgnomesu0) -# Fix for nvidia -#env = LIBV_DRIVER_NAME,nvidia -#env = GBM_BACKEND,nvidia-drm -#env = __GLX_VENDOR_LYBARY_NAME,nvidia -#env = WLR_NO_HARDWARE_CURSORS,1 +# ── Modifier variables ── +$mainMod = SUPER +$subMod = SUPERCONTROL +$focusMod = ALT +$resizeMod = ALTSHIFT +$moveMod = CONTROLALT +# ── Plugin (disabled) ── #plugin = /run/current-system/sw/lib/libhyprspace.so #plugin { # overview { # drawActiveWorkspace = true # centerAligned = true -# # autoDrag = true # autoScroll = false # showEmptyWorkspace = false # } #} #bind = SUPER, code:65, overview:toggle, all - - -input { - kb_layout = de - kb_variant = - kb_model = - kb_options = - kb_rules = - - accel_profile = flat # flat, adaptive, custom e.g. Win profile 0.2 0.0 0.5 1 1.2 1.5 - force_no_accel = false # Not recomended - sensitivity = 0 # -1.0 - 1.0, 0 means no modification. - - follow_mouse = 2 - -} - -general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - gaps_in = 5 - gaps_out = 10 - border_size = 2 - col.active_border = rgba(ca9ee6ff) rgba(8caaeeff) 90deg - col.inactive_border = rgba(232634ff) - - layout = master - - # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on - allow_tearing = false # enable if kernal >= 6.8 -} - -decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - rounding = 10 - - blur { - enabled = true - size = 3 - passes = 1 - } - - # Deprecated drop_shadow = yes - # Deprecated shadow_range = 4 - # Deprecated shadow_render_power = 3 - # Deprecated col.shadow = rgba(1a1a1aee) -} - -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 - - 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, default -} - -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_status = master -} - - -misc { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - force_default_wallpaper = -1 # Set to 0 to disable the anime mascot wallpapers - disable_splash_rendering = false # The splash text at the bottom - - # Gaming performance - #no_direct_scanout = false - #vrr = 2 # 0 = off, 1 = on, 2 = fullscreen -} - -group { - groupbar { - enabled = true - } -} - #plugin { # overview { # workspaceBorderSize = 4 # workspaceActiveBorder = rgba(ca9ee6ff) # workspaceInactiveBorder = rgba(232634ff) -# # switchOnDrop = true # exitOnSwitch = false # showNewWorkspace = false # disableGestures = true -# } +# } #} - - -# Workspaces -workspace = monitor:0, name:1, default:true -workspace = monitor:0, name:2 -workspace = monitor:0, name:3 -workspace = monitor:0, name:4 - -workspace = monitor:1, name:5, default:true -workspace = monitor:1, name:6 -workspace = monitor:1, name:7 -workspace = monitor:1, name:8 - -workspace = special:scratchpad -workspace = special:scratchpad2 -workspace = special:dump - - -# windowrule v1 https://wiki.hyprland.org/Configuring/Window-Rules/ -# Allways start OpenRGB on special:dump - -# Letting float, settng size and pos -windowrulev2 = float, initialClass:^(com.github.hluk.copyq)$ -windowrulev2 = size 500 300, initialClass:^(com.github.hluk.copyq)$ -windowrulev2 = move onscreen cursor 0 -100%, initialClass:^(com.github.hluk.copyq)$ -# --- fixed pos -windowrule = size 600 300, title:(.*)(Dialect)$ -windowrule = move 0 2840, title:(.*)(Dialect)$ - -windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. - -# Thunar file transfer window, float top right -windowrulev2 = float, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ -windowrulev2 = move 2753 12, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ -windowrulev2 = size 450 100, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ - -windowrulev2 = float, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ -windowrulev2 = move 2903 13, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ -windowrulev2 = size 450 100, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ - -# Fixing steam drop down -windowrulev2 = stayfocused, title:^()$,class:^(steam)$ -windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$ - -# Fix Screen +sharing for XWayland -# See https://wiki.hyprland.org/hyprland-wiki/pages/Useful-Utilities/Screen-Sharing/ -windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ -windowrulev2 = noanim,class:^(xwaylandvideobridge)$ -windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ -windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ - -# Fix genishin impact, eable tearing -# brroke with 42 windowrulev2 = fakefullscreen,class:^(genshinimpact.exe)$ -windowrulev2 = maximize,class:^(genshinimpact.exe)$ -windowrulev2 = monitor 1,class:^(genshinimpact.exe)$ -# brroke with 42 windowrulev2 = windowdance,class:^(genshinimpact.exe)$ -windowrulev2 = noanim,class:^(genshinimpact.exe)$ -windowrulev2 = float,class:^(genshinimpact.exe)$ -# brroke with 42 windowrulev2 = forceinput,class:^(genshinimpact.exe)$ -#windowrulev2 = stayfocused,class:^(genshinimpact.exe)$ -#windowrulev2 = immediate,class:^(genshinimpact.exe)$ - -# Setting weather to floing near bar -windowrulev2 = float,class:^(bar_popup|com.nextcloud.desktopclient.nextcloud)$ -windowrulev2 = move 2690 298,title:^(Weather Report)$,class:^(bar_popup)$ -windowrulev2 = size 670 850, title:^(Weather Report)$,class:^(bar_popup)$ - -windowrulev2 = move 2755 608,title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$ -windowrulev2 = size 596 819, title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$ - -windowrulev2 = move 2765 615, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$ -windowrulev2 = size 596 819, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$ - -# Other Games -#windowrulev2 = immediate,class:^(overwatch)$ - -# Rofi allways floating -windowrulev2 = float,class:^(Rofi)$ - -windowrulev2 = float,class:FloatingTerminal -windowrulev2 = move -205 15,class:FloatingTerminal -windowrulev2 = size 190 100,class:FloatingTerminal - -# Exec at start -exec-once= ~/.local/share/until-scripts/run-at-start.sh -exec-once= ~/.config/hypr/scripts/follow_workspace.sh - -exec-once= systemctl --user start hyprpolkitagent #Auth agent -exec-once= sleep 3 && copyq --start-server #QT_QPA_PLATFORM=xcb -exec-once= waybar -c $HOME/.config/waybar/bar/config.jsonc -s $HOME/.config/waybar/bar/style.css -exec-once= hyprctl setcursor catppuccin-frappe-mauve-cursors 16 -exec-once= dconf write /org/gnome/desktop/interface/cursor-size "16" -exec-once= dconf write /org/gnome/desktop/interface/cursor-theme "'catppuccin-frappe-mauve-cursors'" -exec-once= dconf write /org/gnome/desktop/interface/gtk-theme "'catppuccin-frappe-mauve-standard+default'" -exec-once= hyprpaper # https://github.com/hyprwm/hyprpaper/issues/5q -exec-once= openrgb -p $HOME/.config/OpenRGB/Cat.orp -exec-once= sleep 3 && nextcloud --background #QT_QPA_PLATFORM=xcb -#exec-once= hyprpm enable Hyprspace -exec-once= $workspace-switcher 1 -exec-once= kdeconnectd & - -# See https://wiki.hyprland.org/Configuring/Keywords/ for more -$mainMod = SUPER -$subMod = SUPERCONTROL -$focusMod = ALT #L Alt -$resizeMod = ALTSHIFT #L Alt + L shift -$moveMod = CONTROLALT - -# Dispatchers https://wiki.hyprland.org/Configuring/Dispatchers/ -# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more - -# Applications -bind = $mainMod, RETURN, exec, $terminal -bind = $mainMod, code:51, exec, $browser #51 = -bind = $mainMod, code:48, exec, $fileManager -bind = $mainMod, V, exec, copyq show -bindr= $mainMod, SUPER_L, exec, if pgrep -x $menu; then kill $(pgrep -x $menu); else $menu -show drun; fi -bind = ,code:107, exec, grim -g "$(slurp)" - | swappy -f - -bind = $mainMod, code:107, exec, grim -o $(hyprctl activeworkspace -j | jq ".monitor" | tr -d "\"") - | swappy -f - #" -bind = $subMod, code:107, exec, $kill-on-unfocus normcap -bind = $focusMod, code:107, exec, dunstify -a System -r 1000 -t 5000 -i "$HOME/.config/assets/arch-maron.png" "Hyprpicker" "Color: $(hyprpicker -a -r)" -bind = $mainMod, O, exec, $HOME/.local/share/until-scripts/open_uri.sh - -# Media Buttons https://raw.githubusercontent.com/xkbcommon/libxkbcommon/master/include/xkbcommon/xkbcommon-keysyms.h -bind = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%- -bind = ,XF86AudioLowerVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-down.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume - -bind = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%+ -bind = ,XF86AudioRaiseVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-up.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume - -bindl=, XF86AudioPlay, exec, playerctl play-pause -bindl=, XF86AudioPlay, exec, sleep 0.1; if [ "$(playerctl status)" = "Playing" ]; then dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/play.png" "Player" "resumed playback"; else dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/pause.png" "Player" "paused playback"; fi - -bindl=, XF86AudioNext, exec, playerctl next -bindl=, XF86AudioPrev, exec, playerctl previous - -# System ctl -bind =, XF86PowerOff, exec, bash ~/.local/share/until-scripts/sleep.sh hibernate -# Key must be enabled by disabeleing default in /etc/systemd/logind.conf (add: HandlePowerKey=ignore) -# check with: systemd-analyze cat-config systemd/logind.conf, then reboot or systemctl restart systemd-logind -# From https://www.reddit.com/r/swaywm/comments/180ly44/how_to_change_power_button_behavior/ and https://unix.stackexchange.com/questions/555822/how-to-change-power-button-shutdown-action-to-run-a-script-under-systemd - -# Windowmanagment -bind = $mainMod, Q, killactive, -bind = $mainMod, W, fullscreen, 1 -bind = $mainMod, T, fullscreen, 0 -bind = $mainMod, M, forcerendererreload, -bind = $mainMod, F, togglefloating, - -bind = $mainMod, R, togglespecialworkspace, scratchpad -bind = $mainMod, X, togglespecialworkspace, scratchpad2 -bind = $mainMod, code:21, togglespecialworkspace, dump - -bind = $resizeMod, e, layoutmsg, orientationnext -bind = $resizeMod, q, layoutmsg, orientationprev - - -# Change Focus -bind = $focusMod, a, movefocus, l -bind = $focusMod, d, movefocus, r -bind = $focusMod, w, movefocus, u -bind = $focusMod, s, movefocus, d - -# Resize Window -binde = $resizeMod, a, resizeactive,-30 0 -binde = $resizeMod, d, resizeactive, 30 0 -binde = $resizeMod, s, resizeactive, 0 30 -binde = $resizeMod, w, resizeactive, 0 -30 - -# Move Window -bind = $moveMod, a, movewindow, l -bind = $moveMod, d, movewindow, r -bind = $moveMod, s, movewindow, d -bind = $moveMod, w, movewindow, u - -bind = $mainMod, code:112, movewindow, mon:DP-2 -bind = $mainMod, code:117, movewindow, mon:DP-3 - -bind = $mainMod, E, exec, $special-workspace-movment scratchpad -bind = $mainMod, Y, exec, $special-workspace-movment scratchpad2 -bind = $mainMod, code:20, exec, $special-workspace-movment dump - -# Switch workspaces with mainMod -bind = $mainMod, code:113, exec, $workspace-switcher 1 -bind = $mainMod, code:114, exec, $workspace-switcher 2 -bind = $mainMod, code:111, exec, $workspace-switcher 3 -bind = $mainMod, code:116, exec, $workspace-switcher 4 - - -# Workspaces, carry window -bind = $mainMod SHIFT, code:113, exec, $workspace-switcher 1 carry -bind = $mainMod SHIFT, code:114, exec, $workspace-switcher 2 carry -bind = $mainMod SHIFT, code:111, exec, $workspace-switcher 3 carry -bind = $mainMod SHIFT, code:116, exec, $workspace-switcher 4 carry - - -# Workspace management -bind = $mainMod, c, swapactiveworkspaces, DP-2 DP-3 - -# Mousebinds -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow - -# Submaps -bind = $mainMod, g, submap, gaming - -#Other -bind = $subMod, code:112, movecursor, 1720 720 -bind = $subMod, code:117, movecursor, -2560 720 -#bind = $mainMod, code:65, hyprexpo:expo, toggle # can be: toggle, off/disable or on/enable on space - -submap=gaming -bind = $mainMod, T, fullscreen, 0 -bind = $mainMod, R, togglespecialworkspace, scratchpad -bind = $mainMod, g, submap,reset -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow -bind = $mainMod, code:51, exec, $browser #51 = # -submap=reset +# ── Includes ── +source = hyprland/monitors.conf +source = hyprland/env.conf +source = hyprland/input.conf +source = hyprland/general.conf +source = hyprland/appearance.conf +source = hyprland/workspaces.conf +source = hyprland/windowrules.conf +source = hyprland/exec.conf +source = hyprland/binds.conf diff --git a/eggs/hypr/hyprland/appearance.conf b/eggs/hypr/hyprland/appearance.conf new file mode 100644 index 00000000..716e48aa --- /dev/null +++ b/eggs/hypr/hyprland/appearance.conf @@ -0,0 +1,22 @@ +decoration { + rounding = 10 + + blur { + enabled = true + size = 3 + passes = 1 + } +} + +animations { + enabled = yes + + bezier = myBezier, 0.05, 0.9, 0.1, 1.05 + + 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, default +} diff --git a/eggs/hypr/hyprland/binds.conf b/eggs/hypr/hyprland/binds.conf new file mode 100644 index 00000000..02b137ea --- /dev/null +++ b/eggs/hypr/hyprland/binds.conf @@ -0,0 +1,103 @@ +# Dispatchers https://wiki.hyprland.org/Configuring/Dispatchers/ + +# Applications +bind = $mainMod, RETURN, exec, $terminal +bind = $mainMod, code:51, exec, $browser +bind = $mainMod, code:48, exec, $fileManager +bind = $mainMod, V, exec, copyq show +bindr= $mainMod, SUPER_L, exec, if pgrep -x $menu; then kill $(pgrep -x $menu); else $menu -show drun; fi +bind = ,code:107, exec, grim -g "$(slurp)" - | swappy -f - +bind = $mainMod, code:107, exec, grim -o $(hyprctl activeworkspace -j | jq ".monitor" | tr -d "\"") - | swappy -f - +bind = $subMod, code:107, exec, $kill-on-unfocus normcap +bind = $focusMod, code:107, exec, dunstify -a System -r 1000 -t 5000 -i "$HOME/.config/assets/arch-maron.png" "Hyprpicker" "Color: $(hyprpicker -a -r)" +bind = $mainMod, O, exec, $HOME/.local/share/until-scripts/open_uri.sh + +# Media Buttons +bind = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%- +bind = ,XF86AudioLowerVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-down.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume + +bind = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_SINK@ 1%+ +bind = ,XF86AudioRaiseVolume, exec, dunstify -a System -r 1000 -t 2000 -i $HOME/.config/assets/volume-up.png -h int:value:$(echo "100 * $(wpctl get-volume @DEFAULT_SINK@ | tr -d "Volume: ")" | bc) Volume + +bindl=, XF86AudioPlay, exec, playerctl play-pause +bindl=, XF86AudioPlay, exec, sleep 0.1; if [ "$(playerctl status)" = "Playing" ]; then dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/play.png" "Player" "resumed playback"; else dunstify -a System -r 1000 -t 2000 -i "$HOME/.config/assets/pause.png" "Player" "paused playback"; fi + +bindl=, XF86AudioNext, exec, playerctl next +bindl=, XF86AudioPrev, exec, playerctl previous + +# System ctl +bind =, XF86PowerOff, exec, bash ~/.local/share/until-scripts/sleep.sh hibernate + +# Window management +bind = $mainMod, Q, killactive, +bind = $mainMod, W, fullscreen, 1 +bind = $mainMod, T, fullscreen, 0 +bind = $mainMod, M, forcerendererreload, +bind = $mainMod, F, togglefloating, + +bind = $mainMod, R, togglespecialworkspace, scratchpad +bind = $mainMod, X, togglespecialworkspace, scratchpad2 +bind = $mainMod, code:21, togglespecialworkspace, dump + +bind = $resizeMod, e, layoutmsg, orientationnext +bind = $resizeMod, q, layoutmsg, orientationprev + +# Change Focus +bind = $focusMod, a, movefocus, l +bind = $focusMod, d, movefocus, r +bind = $focusMod, w, movefocus, u +bind = $focusMod, s, movefocus, d + +# Resize Window +binde = $resizeMod, a, resizeactive,-30 0 +binde = $resizeMod, d, resizeactive, 30 0 +binde = $resizeMod, s, resizeactive, 0 30 +binde = $resizeMod, w, resizeactive, 0 -30 + +# Move Window +bind = $moveMod, a, movewindow, l +bind = $moveMod, d, movewindow, r +bind = $moveMod, s, movewindow, d +bind = $moveMod, w, movewindow, u + +bind = $mainMod, code:112, movewindow, mon:DP-2 +bind = $mainMod, code:117, movewindow, mon:DP-3 + +bind = $mainMod, E, exec, $special-workspace-movment scratchpad +bind = $mainMod, Y, exec, $special-workspace-movment scratchpad2 +bind = $mainMod, code:20, exec, $special-workspace-movment dump + +# Switch workspaces with mainMod +bind = $mainMod, code:113, exec, $workspace-switcher 1 +bind = $mainMod, code:114, exec, $workspace-switcher 2 +bind = $mainMod, code:111, exec, $workspace-switcher 3 +bind = $mainMod, code:116, exec, $workspace-switcher 4 + +# Workspaces, carry window +bind = $mainMod SHIFT, code:113, exec, $workspace-switcher 1 carry +bind = $mainMod SHIFT, code:114, exec, $workspace-switcher 2 carry +bind = $mainMod SHIFT, code:111, exec, $workspace-switcher 3 carry +bind = $mainMod SHIFT, code:116, exec, $workspace-switcher 4 carry + +# Workspace management +bind = $mainMod, c, swapactiveworkspaces, DP-2 DP-3 + +# Mousebinds +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +# Submaps +bind = $mainMod, g, submap, gaming + +bind = $subMod, code:112, movecursor, 1720 720 +bind = $subMod, code:117, movecursor, -2560 720 +#bind = $mainMod, code:65, hyprexpo:expo, toggle + +submap=gaming +bind = $mainMod, T, fullscreen, 0 +bind = $mainMod, R, togglespecialworkspace, scratchpad +bind = $mainMod, g, submap,reset +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow +bind = $mainMod, code:51, exec, $browser +submap=reset diff --git a/eggs/hypr/hyprland/env.conf b/eggs/hypr/hyprland/env.conf new file mode 100644 index 00000000..57158bff --- /dev/null +++ b/eggs/hypr/hyprland/env.conf @@ -0,0 +1,15 @@ +# Some default env vars. +env = XCURSOR_SIZE,16 +env = XCURSOR_THEME,catppuccin-frappe-mauve-cursors +env = QT_QPA_PLATFORMTHEME,qt5ct # should also aply to qt6ct +env = XDG_SESSION_TYPE,wayland +env = GTK_THEME,catppuccin-frappe-mauve-standard+default +env = ICON_THEME,catppuccin-frappe-mauve-cursors + +env = GNOME22_USER_DIR,/home/someone/.config/gnome2 # For nemo and other gnome 2 apps +#env = DESKTOP_SESSION,gnome +# Fix for nvidia +#env = LIBV_DRIVER_NAME,nvidia +#env = GBM_BACKEND,nvidia-drm +#env = __GLX_VENDOR_LYBARY_NAME,nvidia +#env = WLR_NO_HARDWARE_CURSORS,1 diff --git a/eggs/hypr/hyprland/exec.conf b/eggs/hypr/hyprland/exec.conf new file mode 100644 index 00000000..c4d15e94 --- /dev/null +++ b/eggs/hypr/hyprland/exec.conf @@ -0,0 +1,16 @@ +# Exec at start +exec-once= ~/.local/share/until-scripts/run-at-start.sh +exec-once= ~/.config/hypr/scripts/follow_workspace.sh + +exec-once= systemctl --user start hyprpolkitagent +exec-once= sleep 3 && copyq --start-server +exec-once= waybar -c $HOME/.config/waybar/bar/config.jsonc -s $HOME/.config/waybar/bar/style.css +exec-once= hyprctl setcursor catppuccin-frappe-mauve-cursors 16 +exec-once= dconf write /org/gnome/desktop/interface/cursor-size "16" +exec-once= dconf write /org/gnome/desktop/interface/cursor-theme "'catppuccin-frappe-mauve-cursors'" +exec-once= dconf write /org/gnome/desktop/interface/gtk-theme "'catppuccin-frappe-mauve-standard+default'" +exec-once= hyprpaper +exec-once= openrgb -p $HOME/.config/OpenRGB/Cat.orp +exec-once= sleep 3 && nextcloud --background +exec-once= $workspace-switcher 1 +exec-once= kdeconnectd & diff --git a/eggs/hypr/hyprland/general.conf b/eggs/hypr/hyprland/general.conf new file mode 100644 index 00000000..dd8a32eb --- /dev/null +++ b/eggs/hypr/hyprland/general.conf @@ -0,0 +1,31 @@ +general { + gaps_in = 5 + gaps_out = 10 + border_size = 2 + col.active_border = rgba(ca9ee6ff) rgba(8caaeeff) 90deg + col.inactive_border = rgba(232634ff) + + layout = master + + allow_tearing = false +} + +dwindle { + pseudotile = yes + preserve_split = yes +} + +master { + new_status = master +} + +misc { + force_default_wallpaper = -1 + disable_splash_rendering = false +} + +group { + groupbar { + enabled = true + } +} diff --git a/eggs/hypr/hyprland/input.conf b/eggs/hypr/hyprland/input.conf new file mode 100644 index 00000000..e09b133a --- /dev/null +++ b/eggs/hypr/hyprland/input.conf @@ -0,0 +1,13 @@ +input { + kb_layout = de + kb_variant = + kb_model = + kb_options = + kb_rules = + + accel_profile = flat + force_no_accel = false + sensitivity = 0 + + follow_mouse = 2 +} diff --git a/eggs/hypr/hyprland/monitors.conf b/eggs/hypr/hyprland/monitors.conf new file mode 100644 index 00000000..ae7c30fb --- /dev/null +++ b/eggs/hypr/hyprland/monitors.conf @@ -0,0 +1,5 @@ +# See https://wiki.hyprland.org/Configuring/Monitors/ +monitor=DP-2, 3440x1440@165, 0x0, 1 +monitor=DP-3, 3440x1440, -3440x0, 1 + +#monitor=HDMI-A-1, 800x480@60, 0x-480, 1 diff --git a/eggs/hypr/hyprland/windowrules.conf b/eggs/hypr/hyprland/windowrules.conf new file mode 100644 index 00000000..ab36e11a --- /dev/null +++ b/eggs/hypr/hyprland/windowrules.conf @@ -0,0 +1,52 @@ +# windowrule v1 https://wiki.hyprland.org/Configuring/Window-Rules/ + +windowrulev2 = float, initialClass:^(com.github.hluk.copyq)$ +windowrulev2 = size 500 300, initialClass:^(com.github.hluk.copyq)$ +windowrulev2 = move onscreen cursor 0 -100%, initialClass:^(com.github.hluk.copyq)$ +# --- fixed pos +windowrule = size 600 300, title:(.*)(Dialect)$ +windowrule = move 0 2840, title:(.*)(Dialect)$ + +windowrulev2 = suppressevent maximize, class:.* + +# Thunar file transfer window, float top right +windowrulev2 = float, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ +windowrulev2 = move 2753 12, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ +windowrulev2 = size 450 100, initialTitle:[(Copying )|(Preparing to)|(File Operation Progress)],initialClass:^(thunar | org.gnome.FileRoller)$ + +windowrulev2 = float, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ +windowrulev2 = move 2903 13, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ +windowrulev2 = size 450 100, title:^(Extract*), initialClass:^(org.gnome.FileRoller)$ + +# Fixing steam drop down +windowrulev2 = stayfocused, title:^()$,class:^(steam)$ +windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$ + +# Fix Screen sharing for XWayland +windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ +windowrulev2 = noanim,class:^(xwaylandvideobridge)$ +windowrulev2 = nofocus,class:^(xwaylandvideobridge)$ +windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ + +# Fix genshin impact +windowrulev2 = maximize,class:^(genshinimpact.exe)$ +windowrulev2 = monitor 1,class:^(genshinimpact.exe)$ +windowrulev2 = noanim,class:^(genshinimpact.exe)$ +windowrulev2 = float,class:^(genshinimpact.exe)$ + +# Setting weather to float near bar +windowrulev2 = float,class:^(bar_popup|com.nextcloud.desktopclient.nextcloud)$ +windowrulev2 = move 2690 298,title:^(Weather Report)$,class:^(bar_popup)$ +windowrulev2 = size 670 850, title:^(Weather Report)$,class:^(bar_popup)$ + +windowrulev2 = move 2755 608,title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$ +windowrulev2 = size 596 819, title:^(Connection Editor|Pipewire Volume Control)$,class:^(bar_popup|com.saivert.pwvucontrol)$ + +windowrulev2 = move 2765 615, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$ +windowrulev2 = size 596 819, title:^(Nextcloud)$,class:^(com.nextcloud.desktopclient.nextcloud)$ + +windowrulev2 = float,class:^(Rofi)$ + +windowrulev2 = float,class:FloatingTerminal +windowrulev2 = move -205 15,class:FloatingTerminal +windowrulev2 = size 190 100,class:FloatingTerminal diff --git a/eggs/hypr/hyprland/workspaces.conf b/eggs/hypr/hyprland/workspaces.conf new file mode 100644 index 00000000..deecd2cb --- /dev/null +++ b/eggs/hypr/hyprland/workspaces.conf @@ -0,0 +1,14 @@ +# Workspaces +workspace = monitor:0, name:1, default:true +workspace = monitor:0, name:2 +workspace = monitor:0, name:3 +workspace = monitor:0, name:4 + +workspace = monitor:1, name:5, default:true +workspace = monitor:1, name:6 +workspace = monitor:1, name:7 +workspace = monitor:1, name:8 + +workspace = special:scratchpad +workspace = special:scratchpad2 +workspace = special:dump