Initial commit

This commit is contained in:
2025-11-14 17:35:52 +01:00
commit 3fc38a20d9
106 changed files with 9123 additions and 0 deletions

16
UserConfigs/00-Readme Normal file
View File

@@ -0,0 +1,16 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
KooL's Hyprland-Dots
1.) Suggest not to rename any files in this directory. As this is connected and being sourced from hyprland.conf in ~/.config/hypr
2.) This directory, along with UserScripts directory will NOT be touch when running upgrade.sh
3.) However, if hyprland has a big change in settings, i.e., blur section is moved into another group, you should managed the change yourself.
4.) Guidance on the keybinds. Suggest NOT to assign a keybind which I set on the default Keybinds. Else will conflict. Once Hyprland decided to have a global keybinds, then I will adjust.
5.) If you think that the default keybinds SHOULD be adjusted, open an issue on my github page and present me a valid argument. Like conflicting to GLOBAL keybinds, etc etc etc.
I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well

View File

@@ -0,0 +1,18 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# This is a file where you put your own default apps, default search Engine etc
# Set your default editor here uncomment and reboot to take effect.
# NOTE, this will be automatically uncommented if you select neovim or vim to your default editor
#env = EDITOR,vim #default editor
# Define preferred text editor for the KooL Quick Settings Menu (SUPER SHIFT E)
# script will take the default EDITOR and nano as fallback
$edit=${EDITOR:-nano}
# These two are for UserKeybinds.conf & Waybar Modules
$term = kitty # Terminal
$files = thunar # File Manager
# Default Search Engine for ROFI Search (SUPER S)
$Search_Engine = "https://www.google.com/search?q={}"

View File

@@ -0,0 +1,89 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# Environment variables. See https://wiki.hyprland.org/Configuring/Environment-variables/
# Set your defaults editor through ENV in ~/.config/hypr/UserConfigs/01-UserDefaults.conf
# environment-variables
# Toolkit Backend Variables
env = GDK_BACKEND,wayland,x11,*
env = QT_QPA_PLATFORM,wayland;xcb
env = CLUTTER_BACKEND,wayland
#Run SDL2 applications on Wayland.
#Remove or set to x11 if games that provide older versions of SDL cause compatibility issues
#env = SDL_VIDEODRIVER,wayland
# xdg Specifications
env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
# QT Variables
env = QT_AUTO_SCREEN_SCALE_FACTOR,1
env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1
env = QT_QPA_PLATFORMTHEME,qt5ct
env = QT_QPA_PLATFORMTHEME,qt6ct
# hyprland-qt-support
env = QT_QUICK_CONTROLS_STYLE,org.hyprland.style
# xwayland apps scale fix (useful if you are use monitor scaling).
# Set same value if you use scaling in Monitors.conf
# 1 is 100% 1.5 is 150%
# see https://wiki.hyprland.org/Configuring/XWayland/
env = GDK_SCALE,1
env = QT_SCALE_FACTOR,1
# Bibata-Modern-Ice-Cursor
# NOTE! You must have the hyprcursor version to activate this.
# https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/
#env = HYPRCURSOR_THEME,Bibata-Modern-Ice
#env = HYPRCURSOR_SIZE,24
# firefox
env = MOZ_ENABLE_WAYLAND,1
# electron >28 apps (may help) ##
# https://www.electronjs.org/docs/latest/api/environment-variables
env = ELECTRON_OZONE_PLATFORM_HINT,auto # auto selects Wayland if possible, X11 otherwise
# NVIDIA
# This is from Hyprland Wiki. Below will be activated nvidia gpu detected
# See hyprland wiki https://wiki.hyprland.org/Nvidia/#environment-variables
#env = LIBVA_DRIVER_NAME,nvidia
#env = __GLX_VENDOR_LIBRARY_NAME,nvidia
#env = NVD_BACKEND,direct
#env = GSK_RENDERER,ngl
# additional ENV's for nvidia. Caution, activate with care
#env = GBM_BACKEND,nvidia-drm
#env = __GL_GSYNC_ALLOWED,1 #adaptive Vsync
#env = __NV_PRIME_RENDER_OFFLOAD,1
#env = __VK_LAYER_NV_optimus,NVIDIA_only
#env = WLR_DRM_NO_ATOMIC,1
# FOR VM and POSSIBLY NVIDIA
# LIBGL_ALWAYS_SOFTWARE software mesa rendering
#env = LIBGL_ALWAYS_SOFTWARE,1 # Warning. May cause hyprland to crash
#env = WLR_RENDERER_ALLOW_SOFTWARE,1
# nvidia firefox (for hardware acceleration on FF)?
# check this post https://github.com/elFarto/nvidia-vaapi-driver#configuration
#env = MOZ_DISABLE_RDD_SANDBOX,1
#env = EGL_PLATFORM,wayland
#### Aquamarine Environment Variables #### ( Hyprland > 0.45 )
# https://wiki.hyprland.org/Configuring/Environment-variables/#aquamarine-environment-variables----ref-httpsgithubcomhyprwmaquamarineblobmaindocsenvmd---
# env = AQ_TRACE,1 # Enables more verbose logging.
# env = AQ_DRM_DEVICES,/dev/dri/card1:/dev/dri/card0 # Set an explicit list of DRM devices (GPUs) to use. Its a colon-separated list of paths, with the first being the primary. E.g. /dev/dri/card1:/dev/dri/card0
# env = AQ_MGPU_NO_EXPLICIT,1 # Disables explicit syncing on mgpu buffers
# env = AQ_NO_MODIFIERS,1 # Disables modifiers for DRM buffers
#### Hyprland Environment Variables ####
# https://wiki.hyprland.org/Configuring/Environment-variables/#hyprland-environment-variables
# env = HYPRLAND_TRACE,1 # Enables more verbose logging.
# env = HYPRLAND_NO_RT,1 # Disables realtime priority setting by Hyprland.
# env = HYPRLAND_NO_SD_NOTIFY,1 # If systemd, disables the 'sd_notify' calls.
# env = HYPRLAND_NO_SD_VARS,1 # Disables management of variables in systemd and dbus activation environments.

View File

@@ -0,0 +1,4 @@
# NOTE, THIS FILE IS BEING USED by disabling Laptop display monitor behaviour when closing lid.
# See notes on Laptops.conf
#monitor = eDP-1, preferred, auto, 1

55
UserConfigs/Laptops.conf Normal file
View File

@@ -0,0 +1,55 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# See https://wiki.hyprland.org/Configuring/Keywords/ for more variable settings
# These configs are mostly for laptops. This is addemdum to Keybinds.conf
$mainMod = SUPER
$scriptsDir = $HOME/.config/hypr/scripts
$UserConfigs = $HOME/.config/hypr/UserConfigs
# for disabling Touchpad. hyprctl devices to get device name.
$Touchpad_Device=asue1209:00-04f3:319f-touchpad
binde = , xf86KbdBrightnessDown, exec, $scriptsDir/BrightnessKbd.sh --dec # decrease keyboard brightness
binde = , xf86KbdBrightnessUp, exec, $scriptsDir/BrightnessKbd.sh --inc # increase keyboard brightness
bind = , xf86Launch1, exec, rog-control-center # ASUS Armory crate button
bind = , xf86Launch3, exec, asusctl led-mode -n # FN+F4 Switch keyboard RGB profile
bind = , xf86Launch4, exec, asusctl profile -n # FN+F5 change of fan profiles (Quite, Balance, Performance)
binde = , xf86MonBrightnessDown, exec, $scriptsDir/Brightness.sh --dec # decrease monitor brightness
binde = , xf86MonBrightnessUp, exec, $scriptsDir/Brightness.sh --inc # increase monitor brightness
bind = , xf86TouchpadToggle, exec, $scriptsDir/TouchPad.sh # disable touchpad
# Screenshot keybindings using F6 (no PrinSrc button)
bind = $mainMod, F6, exec, $scriptsDir/ScreenShot.sh --now # screenshot
bind = $mainMod SHIFT, F6, exec, $scriptsDir/ScreenShot.sh --area # screenshot (area)
bind = $mainMod CTRL, F6, exec, $scriptsDir/ScreenShot.sh --in5 # # screenshot (5 secs delay)
bind = $mainMod ALT, F6, exec, $scriptsDir/ScreenShot.sh --in10 # screenshot (10 secs delay)
bind = ALT, F6, exec, $scriptsDir/ScreenShot.sh --active # screenshot (active window only)
$TOUCHPAD_ENABLED = true
device {
name = $Touchpad_Device
enabled = $TOUCHPAD_ENABLED
}
# Below are useful when you are connecting your laptop in external display
# Suggest you edit below for your laptop display
# From WIKI This is to disable laptop monitor when lid is closed.
# consult https://wiki.hyprland.org/hyprland-wiki/pages/Configuring/Binds/#switches
#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor "eDP-1, preferred, auto, 1"
#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor "eDP-1, disable"
# WARNING! Using this method has some caveats!! USE THIS PART WITH SOME CAUTION!
# CONS of doing this, is that you need to set up your wallpaper (SUPER W) and choose wallpaper.
# CAVEATS! Sometimes the Main Laptop Monitor DOES NOT have display that it needs to re-connect your external monitor
# One work around is to ensure that before shutting down laptop, MAKE SURE your laptop lid is OPEN!!
# Make sure to comment (put # on the both the bindl = , switch ......) above
# NOTE: Display for laptop are being generated into LaptopDisplay.conf
# This part is to be use if you do not want your main laptop monitor to wake up during say wallpaper change etc
#bindl = , switch:off:Lid Switch,exec,echo "monitor = eDP-1, preferred, auto, 1" > $UserConfigs/LaptopDisplay.conf
#bindl = , switch:on:Lid Switch,exec,echo "monitor = eDP-1, disable" > $UserConfigs/LaptopDisplay.conf
# for laptop-lid action (to erase the last entry)
#exec-once = echo "monitor = eDP-1, preferred, auto, 1" > $HOME/.config/hypr/UserConfigs/LaptopDisplay.conf
#

View File

@@ -0,0 +1,59 @@
# Based on: /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# Edited and adapted by /* ---- https://gitea.ramforth.net ----*/
# Commands and Apps to be executed at launch
$scriptsDir = $HOME/.config/hypr/scripts
$UserScripts = $HOME/.config/hypr/UserScripts
$wallDIR=$HOME/Pictures/wallpapers
$lock = $scriptsDir/LockScreen.sh
$SwwwRandom = $UserScripts/WallpaperAutoChange.sh
$livewallpaper=""
# wallpaper stuff
exec-once = swww-daemon --format xrgb
#exec-once = mpvpaper '*' -o "load-scripts=no no-audio --loop" $livewallpaper
# wallpaper random
#exec-once = $SwwwRandom $wallDIR # random wallpaper switcher every 30 minutes
# Startup
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
# Initialize Drop Down terminal - See Bug#810 https://github.com/JaKooLit/Hyprland-Dots/issues/810#issuecomment-3351947644
exec-once = $HOME/.config/hypr/scripts/Dropterminal.sh kitty &
# Polkit (Polkit Gnome / KDE)
exec-once = $scriptsDir/Polkit.sh
# starup apps
exec-once = nm-applet --indicator
exec-once = swaync
#exec-once = ags
#exec-once = blueman-applet
#exec-once = rog-control-center
#exec-once = waybar
exec-once = waybar -c "/home/joe/.config/waybar/configs/[TOP] Default"
#exec-once = qs # quickshell AGS Desktop Overview alternative
#clipboard manager
exec-once = wl-paste --type text --watch cliphist store
exec-once = wl-paste --type image --watch cliphist store
# Rainbow borders
#exec-once = $UserScripts/RainbowBorders.sh
# Starting hypridle to start hyprlock
exec-once = hypridle
# Here are list of features available but disabled by default
exec-once = swww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper
#gnome polkit for nixos
#exec-once = $scriptsDir/Polkit-NixOS.sh
# xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start)
#exec-once = $scriptsDir/PortalHyprland.sh

View File

@@ -0,0 +1,26 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
animations {
enabled = yes
bezier = wind, 0.05, 0.9, 0.1, 1.05
bezier = winIn, 0.1, 1.1, 0.1, 1.1
bezier = winOut, 0.3, -0.3, 0, 1
bezier = liner, 1, 1, 1, 1
bezier = overshot, 0.05, 0.9, 0.1, 1.05
bezier = smoothOut, 0.5, 0, 0.99, 0.99
bezier = smoothIn, 0.5, -0.5, 0.68, 1.5
animation = windows, 1, 6, wind, slide
animation = windowsIn, 1, 5, winIn, slide
animation = windowsOut, 1, 3, smoothOut, slide
animation = windowsMove, 1, 5, wind, slide
animation = border, 1, 1, liner
animation = borderangle, 1, 180, liner, loop #used by rainbow borders and rotating colors
animation = fade, 1, 3, smoothOut
animation = workspaces, 1, 5, overshot
# animations for -git or version >0.42.0
animation = workspacesIn, 1, 5, winIn, slide
animation = workspacesOut, 1, 5, winOut, slide
}

View File

@@ -0,0 +1,58 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# Decoration Settings
# Hyprland Wiki Links
# Animation - https://wiki.hyprland.org/Configuring/Animations/
# Decoration - https://wiki.hyprland.org/Configuring/Variables/#decoration
# Sourcing colors generated by wallust
source = $HOME/.config/hypr/wallust/wallust-hyprland.conf
general {
border_size = 2
gaps_in = 2
gaps_out = 4
col.active_border = $color12
col.inactive_border = $color10
}
decoration {
rounding = 10
active_opacity = 1.0
inactive_opacity = 0.9
fullscreen_opacity = 1.0
dim_inactive = true
dim_strength = 0.1
dim_special = 0.8
shadow {
enabled = true
range = 3
render_power = 1
color = $color12
color_inactive = $color10
}
blur {
enabled = true
size = 6
passes = 2
ignore_opacity = true
new_optimizations = true
special = true
popups = true
}
}
group {
col.border_active = $color15
groupbar {
col.active = $color0
}
}

View File

@@ -0,0 +1,87 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# This is where you put your own keybinds. Be Mindful to check as well ~/.config/hypr/configs/Keybinds.conf to avoid conflict
# if you think I should replace the Pre-defined Keybinds in ~/.config/hypr/configs/Keybinds.conf , submit an issue or let me know in DC and present me a valid reason as to why, such as conflicting with global shortcuts, etc etc
# See https://wiki.hyprland.org/Configuring/Keywords/ for more settings and variables
# See also Laptops.conf for laptops keybinds
# /* ---- ✴️ Variables ✴️ ---- */ #
$mainMod = SUPER
$scriptsDir = $HOME/.config/hypr/scripts
$UserScripts = $HOME/.config/hypr/UserScripts
$UserConfigs = $HOME/.config/hypr/UserConfigs
# settings for User defaults apps - set your default terminal and file manager on this file
source= $UserConfigs/01-UserDefaults.conf
# common shortcuts
#bindr = $mainMod, $mainMod_L, exec, pkill rofi || rofi -show drun -modi drun,filebrowser,run,window # Super Key to Launch rofi menu
bind = $mainMod, D, exec, pkill rofi || true && rofi -show drun -modi drun,filebrowser,run,window # Main Menu (APP Launcher)
bind = $mainMod, B, exec, xdg-open "https://" # default browser
#bind = $mainMod, A, exec, pkill rofi || true && ags -t 'overview' # desktop overview (if installed)
#bind = $mainMod, A, global, quickshell:overviewToggle # desktop overview (if installed)
bind = $mainMod, Return, exec, $term #terminal
bind = $mainMod, E, exec, $files #file manager
# FEATURES / EXTRAS
bind = $mainMod, H, exec, $scriptsDir/KeyHints.sh # help / cheat sheet
bind = $mainMod ALT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofi
bind = $mainMod ALT, E, exec, $scriptsDir/RofiEmoji.sh # emoji menu
bind = $mainMod, S, exec, $scriptsDir/RofiSearch.sh # Google search using rofi
bind = $mainMod CTRL, S, exec, rofi -show window # list/switch apps using rofi
bind = $mainMod ALT, O, exec, $scriptsDir/ChangeBlur.sh # Toggle blur settings
bind = $mainMod SHIFT, G, exec, $scriptsDir/GameMode.sh # Toggle animations ON/OFF
bind = $mainMod ALT, L, exec, $scriptsDir/ChangeLayout.sh # Toggle Master or Dwindle Layout
bind = $mainMod ALT, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
bind = $mainMod CTRL, R, exec, $scriptsDir/RofiThemeSelector.sh # KooL Rofi Menu Theme Selector
bind = $mainMod CTRL SHIFT, R, exec, pkill rofi || true && $scriptsDir/RofiThemeSelector-modified.sh # modified Rofi Theme Selector
bind = $mainMod SHIFT, F, fullscreen # whole full screen
bind = $mainMod CTRL, F, fullscreen, 1 # fake full screen
bind = $mainMod, SPACE, togglefloating, #Float Mode
bind = $mainMod ALT, SPACE, exec, hyprctl dispatch workspaceopt allfloat #All Float Mode
bind = $mainMod SHIFT, Return, exec, $scriptsDir/Dropterminal.sh $term # Dropdown terminal
# Desktop zooming or magnifier
bind = $mainMod ALT, mouse_down, exec, hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}')"
bind = $mainMod ALT, mouse_up, exec, hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}')"
## NOTES for ja (Hyprland version 0.39 (Ubuntu 24.04))
#bind = $mainMod ALT, mouse_down, exec, hyprctl keyword misc:cursor_zoom_factor "$(hyprctl getoption misc:cursor_zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}')"
#bind = $mainMod ALT, mouse_up, exec, hyprctl keyword misc:cursor_zoom_factor "$(hyprctl getoption misc:cursor_zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}')"
# Waybar / Bar related
bind = $mainMod CTRL ALT, B, exec, pkill -SIGUSR1 waybar # Toggle hide/show waybar
bind = $mainMod CTRL, B, exec, $scriptsDir/WaybarStyles.sh # Waybar Styles Menu
bind = $mainMod ALT, B, exec, $scriptsDir/WaybarLayout.sh # Waybar Layout Menu
# Night light toggle (Hyprsunset)
bind = $mainMod, N, exec, $scriptsDir/Hyprsunset.sh toggle
# FEATURES / EXTRAS (UserScripts)
bind = $mainMod SHIFT, M, exec, $UserScripts/RofiBeats.sh # online music using rofi
bind = $mainMod, W, exec, $UserScripts/WallpaperSelect.sh # Select wallpaper to apply
bind = $mainMod SHIFT, W, exec, $UserScripts/WallpaperEffects.sh # Wallpaper Effects by imagemagick
bind = CTRL ALT, W, exec, $UserScripts/WallpaperRandom.sh # Random wallpapers
bind = $mainMod CTRL, O, exec, hyprctl setprop active opaque toggle # disable opacity on active window
bind = $mainMod SHIFT, K, exec, $scriptsDir/KeyBinds.sh # search keybinds via rofi
bind = $mainMod SHIFT, A, exec, $scriptsDir/Animations.sh #hyprland animations menu
bind = $mainMod SHIFT, O, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
bindln = ALT_L, SHIFT_L, exec, $scriptsDir/SwitchKeyboardLayout.sh # Change keyboard layout globally
bindln = SHIFT_L, ALT_L, exec, $scriptsDir/Tak0-Per-Window-Switch.sh # Change keyboard layout locally for each window
bind = $mainMod ALT, C, exec, $UserScripts/RofiCalc.sh # calculator (qalculate)
# Move current workspaces to monitors (left right up or down)
bind = $mainMod CTRL, F9, movecurrentworkspacetomonitor, l #move current workspace to LEFT monitor
bind = $mainMod CTRL, F10, movecurrentworkspacetomonitor, r #move current workspace to RIGHT monitor
bind = $mainMod CTRL, F11, movecurrentworkspacetomonitor, u #move current workspace to UP monitor
bind = $mainMod CTRL, F12, movecurrentworkspacetomonitor, d #move current workspace to DOWN monitor
# For passthrough keyboard into a VM
# bind = $mainMod ALT, P, submap, passthru
#submap = passthru
# to unbind
#bind = $mainMod ALT, P, submap, reset
#submap = reset

View File

@@ -0,0 +1,120 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# User Settings
# This is where you put your own settings as this will not be touched during update
# if the upgrade.sh is used.
# refer to Hyprland wiki for more info https://wiki.hyprland.org/Configuring/Variables/
# NOTE: some settings are in ~/.config/hypr/UserConfigs/UserDecorAnimations.conf
dwindle {
pseudotile = true
preserve_split = true
#smart_split = true
special_scale_factor = 0.8
}
master {
new_status = master
new_on_top = 1
mfact = 0.5
}
general {
resize_on_border = true
layout = dwindle
}
input {
kb_layout = no
kb_variant =
kb_model =
kb_options =
kb_rules =
repeat_rate = 50
repeat_delay = 300
sensitivity = 0 #mouse sensitivity
#accel_profile = # flat or adaptive or blank or EMPTY means libinputs default mode
numlock_by_default = true
left_handed = false
follow_mouse = 1
float_switch_override_focus = false
touchpad {
disable_while_typing = true
natural_scroll = true
clickfinger_behavior = false
middle_button_emulation = false
tap-to-click = true
drag_lock = false
}
# below for devices with touchdevice ie. touchscreen
touchdevice {
enabled = true
}
# below is for table see link above for proper variables
tablet {
transform = 0
left_handed = 0
}
}
gestures {
gesture = 3, horizontal, workspace
workspace_swipe_distance = 500
workspace_swipe_invert = true
workspace_swipe_min_speed_to_force = 30
workspace_swipe_cancel_ratio = 0.5
workspace_swipe_create_new = true
workspace_swipe_forever = true
#workspace_swipe_use_r = true #uncomment if wanted a forever create a new workspace with swipe right
}
misc {
disable_hyprland_logo = true
disable_splash_rendering = true
vfr = true
vrr = 2
mouse_move_enables_dpms = true
enable_swallow = off
swallow_regex = ^(kitty)$
focus_on_activate = false
initial_workspace_tracking = 0
middle_click_paste = false
enable_anr_dialog = true # Application not Responding (ANR)
anr_missed_pings = 15 # ANR Threshold default 1 is too low
allow_session_lock_restore = true # Prevent lockscreen crash when resume from suspend
}
#opengl {
# nvidia_anti_flicker = true
#}
binds {
workspace_back_and_forth = true
allow_workspace_cycles = true
pass_mouse_when_bound = false
}
#Could help when scaling and not pixelating
xwayland {
enabled = true
force_zero_scaling = true
}
render {
direct_scanout = 0
}
cursor {
sync_gsettings_theme = true
no_hardware_cursors = 2 # change to 1 if want to disable
enable_hyprcursor = true
warp_on_change_workspace = 2
no_warps = true
}

View File

@@ -0,0 +1,206 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# For window rules and layerrules
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# NOTES: This is only for Hyprland older versions (< 0.48)
# windowrule v2 - tags - add apps under appropriate tag to use the same settings
# browser tags
windowrulev2 = tag +browser, class:^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$
windowrulev2 = tag +browser, class:^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
windowrulev2 = tag +browser, class:^(chrome-.+-Default)$ # Chrome PWAs
windowrulev2 = tag +browser, class:^([Cc]hromium)$
windowrulev2 = tag +browser, class:^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
windowrulev2 = tag +browser, class:^(Brave-browser(-beta|-dev|-unstable)?)$
windowrulev2 = tag +browser, class:^([Tt]horium-browser|[Cc]achy-browser)$
windowrulev2 = tag +browser, class:^(zen-alpha|zen)$
windowrulev2 = tag +notif, class:^(swaync-control-center|swaync-notification-window|swaync-client|class)$
windowrulev2 = tag +KooL_Cheat, title:^(KooL Quick Cheat Sheet)$
windowrulev2 = tag +KooL_Settings, title:^(KooL Hyprland Settings)$
windowrulev2 = tag +KooL-Settings, class:^(nwg-displays|nwg-look)$
# terminal tags
windowrulev2 = tag +terminal, class:^(Alacritty|kitty|kitty-dropterm)$
# email tags
windowrulev2 = tag +email, class:^([Tt]hunderbird|org.gnome.Evolution)$
windowrulev2 = tag +email, class:^(eu.betterbird.Betterbird)$
# project tags
windowrulev2 = tag +projects, class:^(codium|codium-url-handler|VSCodium)$
windowrulev2 = tag +projects, class:^(VSCode|code-url-handler)$
windowrulev2 = tag +projects, class:^(jetbrains-.+)$ # JetBrains IDEs
# screenshare tags
windowrulev2 = tag +screenshare, class:^(com.obsproject.Studio)$
# IM tags
windowrulev2 = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
windowrulev2 = tag +im, class:^([Ff]erdium)$
windowrulev2 = tag +im, class:^([Ww]hatsapp-for-linux)$
windowrulev2 = tag +im, class:^(ZapZap|com.rtosta.zapzap)$
windowrulev2 = tag +im, class:^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
windowrulev2 = tag +im, class:^(teams-for-linux)$
# game tags
windowrulev2 = tag +games, class:^(gamescope)$
windowrulev2 = tag +games, class:^(steam_app_\d+)$
# gamestore tags
windowrulev2 = tag +gamestore, class:^([Ss]team)$
windowrulev2 = tag +gamestore, title:^([Ll]utris)$
windowrulev2 = tag +gamestore, class:^(com.heroicgameslauncher.hgl)$
# file-manager tags
windowrulev2 = tag +file-manager, class:^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
windowrulev2 = tag +file-manager, class:^(app.drey.Warp)$
# wallpaper tags
windowrulev2 = tag +wallpaper title:^([Ww]aytrogen)$
windowrulev2 = tag +wallpaper, class:^([Ww]aytrogen)$
# multimedia tags
windowrulev2 = tag +multimedia, class:^([Aa]udacious)$
# settings tags
windowrulev2 = tag +settings, title:^(ROG Control)$
windowrulev2 = tag +settings, class:^(wihotspot(-gui)?)$ # wifi hotspot
windowrulev2 = tag +settings, class:^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
windowrulev2 = tag +settings, class:^(gnome-disks|wihotspot(-gui)?)$
windowrulev2 = tag +settings, title:(Kvantum Manager)
windowrulev2 = tag +settings, class:^(file-roller|org.gnome.FileRoller)$ # archive manager
windowrulev2 = tag +settings, class:^(nm-applet|nm-connection-editor|blueman-manager)$
windowrulev2 = tag +settings, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrulev2 = tag +settings, class:^(qt5ct|qt6ct|[Yy]ad)$
windowrulev2 = tag +settings, class:(xdg-desktop-portal-gtk)
windowrulev2 = tag +settings, class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrulev2 = tag +settings, class:^([Rr]ofi)$
# viewer tags
windowrulev2 = tag +viewer, class:^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
windowrulev2 = tag +viewer, class:^(evince)$ # document viewer
windowrulev2 = tag +viewer, class:^(eog|org.gnome.Loupe)$ # image viewer
# POSITION
# windowrulev2 = center,floating:1 # warning, it cause even the menu to float and center.
windowrulev2 = center, tag:KooL_Cheat*
windowrulev2 = center, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
windowrulev2 = center, title:^(ROG Control)$
windowrulev2 = center, tag:KooL-Settings*
windowrulev2 = center, title:^(Keybindings)$
windowrulev2 = center, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrulev2 = center, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = center, class:^([Ff]erdium)$
windowrulev2 = move 72% 7%,title:^(Picture-in-Picture)$
#windowrulev2 = move 72% 7%,title:^(Firefox)$
# windowrule v2 to avoid idle for fullscreen apps
#windowrulev2 = idleinhibit fullscreen, class:^(*)$
#windowrulev2 = idleinhibit fullscreen, title:^(*)$
windowrulev2 = idleinhibit fullscreen, fullscreen:1
# windowrule v2 move to workspace
windowrulev2 = workspace 1, tag:email*
windowrulev2 = workspace 2, tag:browser*
#windowrulev2 = workspace 3, class:^([Tt]hunar)$
#windowrulev2 = workspace 3, tag:projects*
windowrulev2 = workspace 5, tag:gamestore*
windowrulev2 = workspace 7, tag:im*
windowrulev2 = workspace 8, tag:games*
# windowrule v2 move to workspace (silent)
windowrulev2 = workspace 4 silent, tag:screenshare*
windowrulev2 = workspace 6 silent, class:^(virt-manager)$
windowrulev2 = workspace 6 silent, class:^(.virt-manager-wrapped)$
windowrulev2 = workspace 9 silent, tag:multimedia*
# FLOAT
windowrulev2 = float, tag:KooL_Cheat*
windowrulev2 = float, tag:wallpaper*
windowrulev2 = float, tag:settings*
windowrulev2 = float, tag:viewer*
windowrulev2 = float, tag:KooL-Settings*
windowrulev2 = float, class:([Zz]oom|onedriver|onedriver-launcher)$
windowrulev2 = float, class:(org.gnome.Calculator), title:(Calculator)
windowrulev2 = float, class:^(mpv|com.github.rafostar.Clapper)$
windowrulev2 = float, class:^([Qq]alculate-gtk)$
#windowrulev2 = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = float, class:^([Ff]erdium)$
windowrulev2 = float, title:^(Picture-in-Picture)$
#windowrulev2 = float, title:^(Firefox)$
#windowrule v2 - float popups and dialogue
windowrulev2 = float, title:^(Authentication Required)$
windowrulev2 = center, title:^(Authentication Required)$
windowrulev2 = float, class:(codium|codium-url-handler|VSCodium), title:negative:(.*codium.*|.*VSCodium.*)
windowrulev2 = float, class:^(com.heroicgameslauncher.hgl)$, title:negative:(Heroic Games Launcher)
windowrulev2 = float, class:^([Ss]team)$, title:negative:^([Ss]team)$
windowrulev2 = float, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
#windowrulev2 = float, class:(electron), title:(Add Folder to Workspace)
windowrulev2 = float, title:^(Add Folder to Workspace)$
windowrulev2 = size 70% 60%, title:^(Add Folder to Workspace)$
windowrulev2 = center, title:^(Add Folder to Workspace)$
windowrulev2 = float, initialTitle:(Open Files)
windowrulev2 = size 70% 60%, initialTitle:(Open Files)
windowrulev2 = float, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
windowrulev2 = center, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
windowrulev2 = size 16% 12%, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
# OPACITY
windowrulev2 = opacity 0.9 0.7, tag:browser*
windowrulev2 = opacity 0.9 0.8, tag:projects*
windowrulev2 = opacity 0.94 0.86, tag:im*
windowrulev2 = opacity 0.94 0.86, tag:multimedia*
windowrulev2 = opacity 0.9 0.8, tag:file-manager*
windowrulev2 = opacity 0.8 0.7, tag:terminal*
windowrulev2 = opacity 0.8 0.7, tag:settings*
windowrulev2 = opacity 0.82 0.75, tag:viewer*
windowrulev2 = opacity 0.9 0.7, tag:wallpaper*
windowrulev2 = opacity 0.8 0.7, class:^(gedit|org.gnome.TextEditor|mousepad)$
windowrulev2 = opacity 0.9 0.8, class:^(deluge)$
windowrulev2 = opacity 0.9 0.8, class:^(im.riot.Riot)$ # Element matrix client
windowrulev2 = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui
windowrulev2 = opacity 0.95 0.75, title:^(Picture-in-Picture)$
# SIZE
windowrulev2 = size 65% 90%, tag:KooL_Cheat*
windowrulev2 = size 70% 70%, tag:wallpaper*
windowrulev2 = size 70% 70%, tag:settings*
windowrulev2 = size 60% 70%, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = size 60% 70%, class:^([Ff]erdium)$
#windowrulev2 = size 25% 25%, title:^(Picture-in-Picture)$
#windowrulev2 = size 25% 25%, title:^(Firefox)$
# PINNING
windowrulev2 = pin, title:^(Picture-in-Picture)$
#windowrulev2 = pin,title:^(Firefox)$
# windowrule v2 - extras
windowrulev2 = keepaspectratio, title:^(Picture-in-Picture)$
# BLUR & FULLSCREEN
windowrulev2 = noblur, tag:games*
windowrulev2 = fullscreen, tag:games*
#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1
#windowrulev2 = opacity 0.8 0.8, pinned:1
# LAYER RULES
layerrule = blur, rofi
layerrule = ignorezero, rofi
layerrule = blur, notifications
layerrule = ignorezero, notifications
#layerrule = ignorealpha 0.5, tag:notif*
#layerrule = ignorezero, class:^([Rr]ofi)$
#layerrule = blur, class:^([Rr]ofi)$
#layerrule = unset,class:^([Rr]ofi)$
#layerrule = ignorezero, <rofi>
#layerrule = ignorezero, overview
#layerrule = blur, overview

View File

@@ -0,0 +1,235 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# For window rules and layerrules
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# NOTES: This is only for Hyprland > 0.48
# note for ja: This should NOT be implemented on Debian and Ubuntu
# windowrule - tags - add apps under appropriate tag to use the same settings
# browser tags
windowrule = tag +browser, class:^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$
windowrule = tag +browser, class:^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
windowrule = tag +browser, class:^(chrome-.+-Default)$ # Chrome PWAs
windowrule = tag +browser, class:^([Cc]hromium)$
windowrule = tag +browser, class:^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
windowrule = tag +browser, class:^(Brave-browser(-beta|-dev|-unstable)?)$
windowrule = tag +browser, class:^([Tt]horium-browser|[Cc]achy-browser)$
windowrule = tag +browser, class:^(zen-alpha|zen)$
# notif tags
windowrule = tag +notif, class:^(swaync-control-center|swaync-notification-window|swaync-client|class)$
# KooL settings tag
windowrule = tag +KooL_Cheat, title:^(KooL Quick Cheat Sheet)$
windowrule = tag +KooL_Settings, title:^(KooL Hyprland Settings)$
windowrule = tag +KooL-Settings, class:^(nwg-displays|nwg-look)$
# terminal tags
windowrule = tag +terminal, class:^(Alacritty|kitty|kitty-dropterm)$
# email tags
windowrule = tag +email, class:^([Tt]hunderbird|org.gnome.Evolution)$
windowrule = tag +email, class:^(eu.betterbird.Betterbird)$
# project tags
windowrule = tag +projects, class:^(codium|codium-url-handler|VSCodium)$
windowrule = tag +projects, class:^(VSCode|code-url-handler)$
windowrule = tag +projects, class:^(jetbrains-.+)$ # JetBrains IDEs
# screenshare tags
windowrule = tag +screenshare, class:^(com.obsproject.Studio)$
# IM tags
windowrule = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
windowrule = tag +im, class:^([Ff]erdium)$
windowrule = tag +im, class:^([Ww]hatsapp-for-linux)$
windowrule = tag +im, class:^(ZapZap|com.rtosta.zapzap)$
windowrule = tag +im, class:^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
windowrule = tag +im, class:^(teams-for-linux)$
windowrule = tag +im, class:^(im.riot.Riot|Element)$ # Element Matrix client
# game tags
windowrule = tag +games, class:^(gamescope)$
windowrule = tag +games, class:^(steam_app_\d+)$
# gamestore tags
windowrule = tag +gamestore, class:^([Ss]team)$
windowrule = tag +gamestore, title:^([Ll]utris)$
windowrule = tag +gamestore, class:^(com.heroicgameslauncher.hgl)$
# file-manager tags
windowrule = tag +file-manager, class:^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
windowrule = tag +file-manager, class:^(app.drey.Warp)$
# wallpaper tags
windowrule = tag +wallpaper, class:^([Ww]aytrogen)$
# multimedia tags
windowrule = tag +multimedia, class:^([Aa]udacious)$
# multimedia-video tags
windowrule = tag +multimedia_video, class:^([Mm]pv|vlc)$
# settings tags
windowrule = tag +settings, title:^(ROG Control)$
windowrule = tag +settings, class:^(wihotspot(-gui)?)$ # wifi hotspot
windowrule = tag +settings, class:^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
windowrule = tag +settings, class:^(gnome-disks|wihotspot(-gui)?)$
windowrule = tag +settings, title:(Kvantum Manager)
windowrule = tag +settings, class:^(file-roller|org.gnome.FileRoller)$ # archive manager
windowrule = tag +settings, class:^(nm-applet|nm-connection-editor|blueman-manager)$
windowrule = tag +settings, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrule = tag +settings, class:^(qt5ct|qt6ct|[Yy]ad)$
windowrule = tag +settings, class:(xdg-desktop-portal-gtk)
windowrule = tag +settings, class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrule = tag +settings, class:^([Rr]ofi)$
# viewer tags
windowrule = tag +viewer, class:^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
windowrule = tag +viewer, class:^(evince)$ # document viewer
windowrule = tag +viewer, class:^(eog|org.gnome.Loupe)$ # image viewer
# Some special override rules
windowrule = noblur, tag:multimedia_video*
windowrule = opacity 1.0, tag:multimedia_video*
# POSITION
# windowrule = center,floating:1 # warning, it cause even the menu to float and center.
windowrule = center, tag:KooL_Cheat*
windowrule = center, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
windowrule = center, title:^(ROG Control)$
windowrule = center, tag:KooL-Settings*
windowrule = center, title:^(Keybindings)$
windowrule = center, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrule = center, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrule = center, class:^([Ff]erdium)$
windowrule = move 72% 7%,title:^(Picture-in-Picture)$
#windowrule = move 72% 7%,title:^(Firefox)$
# windowrule to avoid idle for fullscreen apps
#windowrule = idleinhibit fullscreen, class:^(*)$
#windowrule = idleinhibit fullscreen, title:^(*)$
windowrule = idleinhibit fullscreen, fullscreen:1
# windowrule move to workspace
windowrule = workspace 1, tag:email*
windowrule = workspace 2, tag:browser*
#windowrule = workspace 3, class:^([Tt]hunar)$
#windowrule = workspace 3, tag:projects*
windowrule = workspace 5, tag:gamestore*
windowrule = workspace 7, tag:im*
windowrule = workspace 8, tag:games*
# windowrule move to workspace (silent)
windowrule = workspace 4 silent, tag:screenshare*
windowrule = workspace 6 silent, class:^(virt-manager)$
windowrule = workspace 6 silent, class:^(.virt-manager-wrapped)$
windowrule = workspace 9 silent, tag:multimedia*
# FLOAT
windowrule = float, tag:KooL_Cheat*
windowrule = float, tag:wallpaper*
windowrule = float, tag:settings*
windowrule = float, tag:viewer*
windowrule = float, tag:KooL-Settings*
windowrule = float, class:([Zz]oom|onedriver|onedriver-launcher)$
windowrule = float, class:(org.gnome.Calculator), title:(Calculator)
windowrule = float, class:^(mpv|com.github.rafostar.Clapper)$
windowrule = float, class:^([Qq]alculate-gtk)$
#windowrule = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrule = float, class:^([Ff]erdium)$
windowrule = float, title:^(Picture-in-Picture)$
#windowrule = float, title:^(Firefox)$
# windowrule - ######### float popups and dialogue #######
windowrule = float, title:^(Authentication Required)$
windowrule = center, title:^(Authentication Required)$
windowrule = float, class:(codium|codium-url-handler|VSCodium), title:negative:(.*codium.*|.*VSCodium.*)
windowrule = float, class:^(com.heroicgameslauncher.hgl)$, title:negative:(Heroic Games Launcher)
windowrule = float, class:^([Ss]team)$, title:negative:^([Ss]team)$
windowrule = float, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
windowrule = float, title:^(Add Folder to Workspace)$
windowrule = size 70% 60%, title:^(Add Folder to Workspace)$
windowrule = center, title:^(Add Folder to Workspace)$
windowrule = float, title:^(Save As)$
windowrule = size 70% 60%, title:^(Save As)$
windowrule = center, title:^(Save As)$
windowrule = float, initialTitle:(Open Files)
windowrule = size 70% 60%, initialTitle:(Open Files)
windowrule = float, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
windowrule = center, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
windowrule = size 16% 12%, title:^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background
# END of float popups and dialogue #######
# OPACITY
windowrule = opacity 0.9 0.7, tag:browser*
windowrule = opacity 0.9 0.8, tag:projects*
windowrule = opacity 0.94 0.86, tag:im*
windowrule = opacity 0.94 0.86, tag:multimedia*
windowrule = opacity 0.9 0.8, tag:file-manager*
windowrule = opacity 0.8 0.7, tag:terminal*
windowrule = opacity 0.8 0.7, tag:settings*
windowrule = opacity 0.82 0.75, tag:viewer*
windowrule = opacity 0.9 0.7, tag:wallpaper*
windowrule = opacity 0.8 0.7, class:^(gedit|org.gnome.TextEditor|mousepad)$
windowrule = opacity 0.9 0.8, class:^(deluge)$
windowrule = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui
windowrule = opacity 0.95 0.75, title:^(Picture-in-Picture)$
windowrule = opacity 0.9,class:^(code)$
# SIZE
windowrule = size 65% 90%, tag:KooL_Cheat*
windowrule = size 70% 70%, tag:wallpaper*
windowrule = size 70% 70%, tag:settings*
windowrule = size 60% 70%, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrule = size 60% 70%, class:^([Ff]erdium)$
#windowrule = size 25% 25%, title:^(Picture-in-Picture)$
#windowrule = size 25% 25%, title:^(Firefox)$
# PINNING
windowrule = pin, title:^(Picture-in-Picture)$
#windowrule = pin,title:^(Firefox)$
# windowrule - extras
windowrule = keepaspectratio, title:^(Picture-in-Picture)$
# BLUR & FULLSCREEN
windowrule = noblur, tag:games*
windowrule = fullscreen, tag:games*
#This not gonna take the focus to the window that appears when hovering over some of the parts of the IntelliJ Products
windowrule = noinitialfocus, class:^(jetbrains-*)
windowrule = noinitialfocus, title:^(wind.*)$
#This will gonna make the VS Code bluer like other apps
windowrule = opacity 0.8,class:^(code)$
#windowrule = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
#windowrule = bordercolor rgb(282737) rgb(1E1D2D), floating:1
#windowrule = opacity 0.8 0.8, pinned:1
# LAYER RULES
layerrule = blur, rofi
layerrule = ignorezero, rofi
layerrule = blur, notifications
layerrule = ignorezero, notifications
layerrule = blur, quickshell:overview
layerrule = ignorezero, quickshell:overview
layerrule = ignorealpha 0.5, quickshell:overview
#layerrule = ignorealpha 0.5, tag:notif*
#layerrule = ignorezero, class:^([Rr]ofi)$
#layerrule = blur, class:^([Rr]ofi)$
#layerrule = unset,class:^([Rr]ofi)$
#layerrule = ignorezero, <rofi>
#layerrule = ignorezero, overview
#layerrule = blur, overview

View File

@@ -0,0 +1,32 @@
# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ #
# NOTE: THIS IS NOT BEING SOURCED by hyprland
# It is only here as a guide if you want to do it manually
# The file you should edit is ~/.config/hypr/workspaces.conf
# Since that is the work space rules being sourced by hyprland
# use nwg-displays to handle your workspace rules.
# You can set workspace rules to achieve workspace-specific behaviors.
# For instance, you can define a workspace where all windows are drawn without borders or gaps.
# https://wiki.hyprland.org/Configuring/Workspace-Rules/
# Assigning workspace to a certain monitor. Below are just examples
# workspace = 1, monitor:eDP-1
# workspace = 2, monitor:eDP-1
# workspace = 3, monitor:eDP-1
# workspace = 4, monitor:eDP-1
# workspace = 5, monitor:DP-2
# workspace = 6, monitor:DP-2
# workspace = 7, monitor:DP-2
# workspace = 8, monitor:DP-2
# example rules (from wiki)
# workspace = 3, rounding:false, decorate:false
# workspace = name:coding, rounding:false, decorate:false, gapsin:0, gapsout:0, border:false, decorate:false, monitor:DP-1
# workspace = 8,bordersize:8
# workspace = name:Hello, monitor:DP-1, default:true
# workspace = name:gaming, monitor:desc:Chimei Innolux Corporation 0x150C, default:true
# workspace = 5, on-created-empty:[float] firefox
# workspace = special:scratchpad, on-created-empty:foot