Fix: Known issues from the dotfiles documentation pass #8
@@ -59,6 +59,9 @@ System-level config (e.g. pacman options) lives in `system/` and is installed wi
|
||||
~/Projects/dotfiles/system/install.sh
|
||||
```
|
||||
|
||||
Full documentation (every config, keybinding and script) lives in the Outline wiki's
|
||||
**Dotfiles** collection: https://outline.twhomelab.co.uk/collection/dotfiles-frMIfJi2Hf
|
||||
|
||||
## 📦 Programs
|
||||
|
||||
List of programs and tools I use.
|
||||
@@ -67,12 +70,12 @@ List of programs and tools I use.
|
||||
| Component | Program |
|
||||
|-------------------|------------|
|
||||
|🪟 Windows Manager | [hyprland](https://github.com/hyprwm/Hyprland) |
|
||||
|🖥️ Terminal | [foot](https://codeberg.org/dnkl/foot) |
|
||||
|🐚 Shell | [zsh](https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH) / [theme](https://github.com/ohmyzsh/ohmyzsh/blob/master/themes/refined.zsh-theme) |
|
||||
|🖥️ Terminal | [foot](https://codeberg.org/dnkl/foot) / [ghostty](https://ghostty.org/) (system updater) |
|
||||
|🐚 Shell | [zsh](https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH) + oh-my-zsh / [oh-my-posh](https://ohmyposh.dev/) prompt (`.config/ohmyposh/zen.toml`) |
|
||||
|📁 File Manager | [thunar](https://wiki.archlinux.org/title/Thunar) |
|
||||
|📝 Editor | [vs code](https://github.com/microsoft/vscode) / [neovim (changing to soon)](https://github.com/neovim/neovim) |
|
||||
|🌐 Browser | [zen](https://github.com/zen-browser/desktop) / [firefox](https://github.com/topics/firefox-browser) / [startpage](https://blog-bucket-personal.s3.eu-west-2.amazonaws.com/Screenshot_02-May_08-44-23_6614.png) |
|
||||
|📊 Bar | [waybar](https://github.com/Alexays/Waybar) / [quickshell](https://quickshell.org/) |
|
||||
|📊 Bar | [quickshell](https://quickshell.org/) (waybar retired, config kept) |
|
||||
|🚀 Launcher | [rofi](https://github.com/davatorium/rofi) |
|
||||
|🔒 Lockscreen | [hyprlock](https://github.com/hyprwm/hyprlock) |
|
||||
|🚪 Login Menu | [sddm](https://github.com/sddm/sddm) |
|
||||
|
||||
23
bootstrap.sh
23
bootstrap.sh
@@ -124,6 +124,24 @@ for app in $(packages installer); do
|
||||
esac
|
||||
done
|
||||
|
||||
step "oh-my-zsh and plugins"
|
||||
# .zshrc sources ~/.oh-my-zsh/oh-my-zsh.sh and loads two custom plugins from it.
|
||||
# A plain clone is all oh-my-zsh needs; its installer would also write a template
|
||||
# ~/.zshrc, which then conflicts with the stowed one.
|
||||
if [[ ! -d "$HOME/.oh-my-zsh" ]]; then
|
||||
git clone --depth 1 https://github.com/ohmyzsh/ohmyzsh.git "$HOME/.oh-my-zsh"
|
||||
else
|
||||
echo "oh-my-zsh: already installed"
|
||||
fi
|
||||
zsh_custom="$HOME/.oh-my-zsh/custom/plugins"
|
||||
for plugin in zsh-autosuggestions zsh-syntax-highlighting; do
|
||||
if [[ -d "$zsh_custom/$plugin" ]]; then
|
||||
echo "$plugin: already installed"
|
||||
else
|
||||
git clone --depth 1 "https://github.com/zsh-users/$plugin" "$zsh_custom/$plugin"
|
||||
fi
|
||||
done
|
||||
|
||||
# --- Optional: SVT-AV1 essential + ffmpeg rebuild ----------------------------
|
||||
|
||||
if [[ $svt_av1 == ask ]]; then
|
||||
@@ -151,7 +169,7 @@ sudo systemctl enable "${units[@]}"
|
||||
step "Linking dotfiles with stow"
|
||||
# Create real parent dirs first, otherwise stow symlinks the whole directory
|
||||
# (e.g. ~/.config) into the repo and every app's files end up in git
|
||||
mkdir -p "$HOME/.config" "$HOME/.local/bin" "$HOME/.local/share" "$HOME/Pictures"
|
||||
mkdir -p "$HOME/.config" "$HOME/.local/bin" "$HOME/.local/share/fonts" "$HOME/Pictures"
|
||||
# Sunshine keeps credentials and logs beside its config; those must stay out of git
|
||||
mkdir -p "$HOME/.config/sunshine"
|
||||
mkdir -p -m 700 "$HOME/.ssh"
|
||||
@@ -165,4 +183,7 @@ if [[ "$(getent passwd "$USER" | cut -d: -f7)" != */zsh ]]; then
|
||||
chsh -s /usr/bin/zsh
|
||||
fi
|
||||
|
||||
# Picks up the stowed fonts in ~/.local/share/fonts (SF Pro Display for hyprlock)
|
||||
fc-cache -f "$HOME/.local/share/fonts" >/dev/null
|
||||
|
||||
step "Done — reboot to load drivers and start Hyprland"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
"logo": {
|
||||
//"source": "~/.config/fastfetch/nixos.png",
|
||||
//"source": "~/.config/fastfetch/arch.png",
|
||||
//"type": "kitty-direct",
|
||||
"height": 15,
|
||||
"width": 30,
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
gtk-theme-name=HyprFlux-Compact
|
||||
gtk-icon-theme-name=Papirus-Dark
|
||||
gtk-font-name=Adwaita Sans 11
|
||||
gtk-cursor-theme-name=Future-black Cursors
|
||||
gtk-cursor-theme-name=Bibata-Modern-Classic
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||
gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
gtk-theme-name=HyprFlux-Compact
|
||||
gtk-icon-theme-name=Papirus-Dark
|
||||
gtk-font-name=Adwaita Sans 11
|
||||
gtk-cursor-theme-name=Future-black Cursors
|
||||
gtk-cursor-theme-name=Bibata-Modern-Classic
|
||||
gtk-cursor-theme-size=24
|
||||
gtk-application-prefer-dark-theme=1
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# HyprFlux Dots
|
||||
|
||||
Settings have been massivily modified as to work in a more simple mannor
|
||||
|
||||
I will update the Hyprland-Dots wiki for guidance. Make sure to check out changelogs as well
|
||||
@@ -1,92 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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-Classic
|
||||
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. It’s 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.
|
||||
|
||||
# Bitwarden SSH agent (so GUI apps like VS Code see it, not just shells)
|
||||
env = SSH_AUTH_SOCK,/home/thomas/.bitwarden-ssh-agent.sock
|
||||
@@ -1,209 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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
|
||||
|
||||
# settings for User defaults apps - set your default terminal and file manager on this file
|
||||
$edit=${EDITOR:-nvim}
|
||||
|
||||
# These two are for UserKeybinds.conf & Waybar Modules
|
||||
$term = foot # Terminal
|
||||
$files = thunar # File Manager
|
||||
|
||||
# Default Search Engine for ROFI Search (SUPER S)
|
||||
$Search_Engine = "https://www.google.com/search?q={}"
|
||||
|
||||
# common shortcuts
|
||||
bind = $mainMod, SPACE, exec, .config/rofi/launchers/type-4/launcher.sh # desktop overview (if installed)
|
||||
bind = $mainMod, Q, killactive, # close active (not kill)
|
||||
bind = $mainMod SHIFT, Q, exec, $scriptsDir/KillActiveProcess.sh # Kill active process
|
||||
bind = $mainMod, Return, exec, $term #terminal
|
||||
bind = $mainMod, F, exec, $files #file manager
|
||||
bind = $mainMod, B, exec, zen-browser # Launch Zen Browser New Everytime
|
||||
bind = $mainMod, V, exec, $scriptsDir/ClipManager.sh # Clipboard Manager
|
||||
bind = $mainMod, C, exec, code --ozone-platform=x11 # Visual Studio Code
|
||||
bind = $mainMod, O, exec, obsidian --ozone-platform=x11 # Obsidian
|
||||
bind = $mainMod, X, exec, vesktop # Vesktop(Discord)
|
||||
bind = $mainMod, M, exec, fdm # Free Downlaod Manager
|
||||
bind = $mainMod, W, exec, waypaper # Wayland Wallpaper Setter
|
||||
bind = $mainMod, L, exec, hyprlock # Screen Locker
|
||||
bind = $mainMod, DELETE, exec, ~/.config/rofi/powermenu/type-2/powermenu.sh # Power Menu
|
||||
bind = $mainMod, S, exec, cd /home/thomas/hyprmod && uv run hyprmod # Hyprmod - A Hyprland settings manager (if installed)
|
||||
bind = $mainMod SHIFT, R, exec, $scriptsDir/Refresh.sh # Refresh waybar, swaync, rofirrr
|
||||
bind = $mainMod, N, exec, swaync-client -t -sw # swayNC notification panel
|
||||
|
||||
# FEATURES / EXTRAS
|
||||
bind = $mainMod SHIFT, F, fullscreen # whole full screen
|
||||
bind = $mainMod SHIFT, SPACE, togglefloating, #Float Mode
|
||||
|
||||
|
||||
# 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
|
||||
|
||||
# FEATURES / EXTRAS (UserScripts)
|
||||
bind = $mainMod SHIFT, A, exec, $scriptsDir/Animations.sh #hyprland animations menu
|
||||
bind = $mainMod SHIFT, Z, exec, $UserScripts/ZshChangeTheme.sh # Change oh-my-zsh theme
|
||||
|
||||
#######################################################################################################################################
|
||||
#Default Keybinds#
|
||||
#######################################################################################################################################
|
||||
|
||||
|
||||
bind = CTRL ALT, Delete, exec, hyprctl dispatch exit 0 # exit Hyprland
|
||||
|
||||
# Master Layout
|
||||
bind = $mainMod CTRL, D, layoutmsg, removemaster
|
||||
bind = $mainMod, I, layoutmsg, addmaster
|
||||
bind = $mainMod, J, layoutmsg, cyclenext
|
||||
bind = $mainMod, K, layoutmsg, cycleprev
|
||||
bind = $mainMod CTRL, Return, layoutmsg, swapwithmaster
|
||||
|
||||
# Dwindle Layout
|
||||
bind = $mainMod, P, pseudo, # dwindle
|
||||
|
||||
# Special Keys / Hot Keys
|
||||
bindel = , xf86audioraisevolume, exec, $scriptsDir/Volume.sh --inc # volume up
|
||||
bindel = , xf86audiolowervolume, exec, $scriptsDir/Volume.sh --dec # volume down
|
||||
bindl = , xf86AudioMicMute, exec, $scriptsDir/Volume.sh --toggle-mic # mic mute
|
||||
bindl = , xf86audiomute, exec, $scriptsDir/Volume.sh --toggle # mute
|
||||
bindl = , xf86Sleep, exec, systemctl suspend # sleep button
|
||||
bindl = , xf86Rfkill, exec, $scriptsDir/AirplaneMode.sh # Airplane mode
|
||||
|
||||
# media controls using keyboards
|
||||
bindl = , xf86AudioPlayPause, exec, $scriptsDir/MediaCtrl.sh --pause
|
||||
bindl = , xf86AudioPause, exec, $scriptsDir/MediaCtrl.sh --pause
|
||||
bindl = , xf86AudioPlay, exec, $scriptsDir/MediaCtrl.sh --pause
|
||||
bindl = , xf86AudioNext, exec, $scriptsDir/MediaCtrl.sh --nxt
|
||||
bindl = , xf86AudioPrev, exec, $scriptsDir/MediaCtrl.sh --prv
|
||||
bindl = , xf86audiostop, exec, $scriptsDir/MediaCtrl.sh --stop
|
||||
|
||||
# Resize windows
|
||||
binde = $mainMod SHIFT, left, resizeactive,-50 0
|
||||
binde = $mainMod SHIFT, right, resizeactive,50 0
|
||||
binde = $mainMod SHIFT, up, resizeactive,0 -50
|
||||
binde = $mainMod SHIFT, down, resizeactive,0 50
|
||||
|
||||
# Move windows
|
||||
bind = $mainMod CTRL, left, movewindow, l
|
||||
bind = $mainMod CTRL, right, movewindow, r
|
||||
bind = $mainMod CTRL, up, movewindow, u
|
||||
bind = $mainMod CTRL, down, movewindow, d
|
||||
|
||||
# Swap windows
|
||||
bind = $mainMod ALT, left, swapwindow, l
|
||||
bind = $mainMod ALT, right, swapwindow, r
|
||||
bind = $mainMod ALT, up, swapwindow, u
|
||||
bind = $mainMod ALT, down, swapwindow, d
|
||||
|
||||
# Move focus with mainMod + arrow keys
|
||||
bind = $mainMod, left, movefocus, l
|
||||
bind = $mainMod, right, movefocus, r
|
||||
bind = $mainMod, up, movefocus, u
|
||||
bind = $mainMod, down, movefocus, d
|
||||
|
||||
# Workspaces related
|
||||
bind = $mainMod, tab, workspace, m+1
|
||||
bind = $mainMod SHIFT, tab, workspace, m-1
|
||||
|
||||
# Special workspace
|
||||
# bind = $mainMod SHIFT, U, movetoworkspace, special
|
||||
# bind = $mainMod, U, togglespecialworkspace,
|
||||
bind = $mainMod, U, togglespecialworkspace, nyx
|
||||
bind = $mainMod SHIFT, U, movetoworkspace, special:nyx
|
||||
|
||||
|
||||
# The following mappings use the key codes to better support various keyboard layouts
|
||||
# 1 is code:10, 2 is code 11, etc
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
bind = $mainMod, code:10, workspace, 1 # NOTE: code:10 = key 1
|
||||
bind = $mainMod, code:11, workspace, 2 # NOTE: code:11 = key 2
|
||||
bind = $mainMod, code:12, workspace, 3 # NOTE: code:12 = key 3
|
||||
bind = $mainMod, code:13, workspace, 4 # NOTE: code:13 = key 4
|
||||
bind = $mainMod, code:14, workspace, 5 # NOTE: code:14 = key 5
|
||||
bind = $mainMod, code:15, workspace, 6 # NOTE: code:15 = key 6
|
||||
bind = $mainMod, code:16, workspace, 7 # NOTE: code:16 = key 7
|
||||
bind = $mainMod, code:17, workspace, 8 # NOTE: code:17 = key 8
|
||||
bind = $mainMod, code:18, workspace, 9 # NOTE: code:18 = key 9
|
||||
bind = $mainMod, code:19, workspace, 10 # NOTE: code:19 = key 0
|
||||
|
||||
# Move active window and follow to workspace mainMod + SHIFT [0-9]
|
||||
bind = $mainMod SHIFT, code:10, movetoworkspace, 1 # NOTE: code:10 = key 1
|
||||
bind = $mainMod SHIFT, code:11, movetoworkspace, 2 # NOTE: code:11 = key 2
|
||||
bind = $mainMod SHIFT, code:12, movetoworkspace, 3 # NOTE: code:12 = key 3
|
||||
bind = $mainMod SHIFT, code:13, movetoworkspace, 4 # NOTE: code:13 = key 4
|
||||
bind = $mainMod SHIFT, code:14, movetoworkspace, 5 # NOTE: code:14 = key 5
|
||||
bind = $mainMod SHIFT, code:15, movetoworkspace, 6 # NOTE: code:15 = key 6
|
||||
bind = $mainMod SHIFT, code:16, movetoworkspace, 7 # NOTE: code:16 = key 7
|
||||
bind = $mainMod SHIFT, code:17, movetoworkspace, 8 # NOTE: code:17 = key 8
|
||||
bind = $mainMod SHIFT, code:18, movetoworkspace, 9 # NOTE: code:18 = key 9
|
||||
bind = $mainMod SHIFT, code:19, movetoworkspace, 10 # NOTE: code:19 = key 0
|
||||
bind = $mainMod SHIFT, bracketleft, movetoworkspace, -1 # brackets [
|
||||
bind = $mainMod SHIFT, bracketright, movetoworkspace, +1 # brackets ]
|
||||
|
||||
# Move active window to a workspace silently mainMod + CTRL [0-9]
|
||||
bind = $mainMod CTRL, code:10, movetoworkspacesilent, 1 # NOTE: code:10 = key 1
|
||||
bind = $mainMod CTRL, code:11, movetoworkspacesilent, 2 # NOTE: code:11 = key 2
|
||||
bind = $mainMod CTRL, code:12, movetoworkspacesilent, 3 # NOTE: code:12 = key 3
|
||||
bind = $mainMod CTRL, code:13, movetoworkspacesilent, 4 # NOTE: code:13 = key 4
|
||||
bind = $mainMod CTRL, code:14, movetoworkspacesilent, 5 # NOTE: code:14 = key 5
|
||||
bind = $mainMod CTRL, code:15, movetoworkspacesilent, 6 # NOTE: code:15 = key 6
|
||||
bind = $mainMod CTRL, code:16, movetoworkspacesilent, 7 # NOTE: code:16 = key 7
|
||||
bind = $mainMod CTRL, code:17, movetoworkspacesilent, 8 # NOTE: code:17 = key 8
|
||||
bind = $mainMod CTRL, code:18, movetoworkspacesilent, 9 # NOTE: code:18 = key 9
|
||||
bind = $mainMod CTRL, code:19, movetoworkspacesilent, 10 # NOTE: code:19 = key 0
|
||||
bind = $mainMod CTRL, bracketleft, movetoworkspacesilent, -1 # brackets [
|
||||
bind = $mainMod CTRL, bracketright, movetoworkspacesilent, +1 # brackets ]
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = $mainMod, mouse_down, workspace, e+1
|
||||
bind = $mainMod, mouse_up, workspace, e-1
|
||||
bind = $mainMod, period, workspace, e+1
|
||||
bind = $mainMod, comma, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = $mainMod, mouse:272, movewindow # NOTE: mouse:272 = left click
|
||||
bindm = $mainMod, mouse:273, resizewindow # NOTE: mouse:272 = right click
|
||||
|
||||
#########################################################################################################
|
||||
# Laptop specific keybinds
|
||||
#########################################################################################################
|
||||
|
||||
# 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
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
# 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
|
||||
@@ -1,31 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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
|
||||
|
||||
|
||||
# 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
|
||||
#
|
||||
@@ -1,43 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# Commands and Apps to be executed at launch
|
||||
|
||||
$scriptsDir = $HOME/.config/hypr/scripts
|
||||
|
||||
# wallpaper stuff
|
||||
exec-once = awww-daemon --format xrgb
|
||||
#exec-once = mpvpaper '*' -o "load-scripts=no no-audio --loop" $livewallpaper
|
||||
|
||||
# Startup
|
||||
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
||||
|
||||
# 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 = 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
|
||||
|
||||
# Starting hypridle to start hyprlock
|
||||
exec-once = hypridle
|
||||
|
||||
exec-once = hyprctl dispatch workspace 3
|
||||
exec-once = /usr/bin/Plexamp.AppImage &&
|
||||
exec-once = sleep 3 && vesktop
|
||||
exec-once = hyprctl dispatch workspace 1
|
||||
exec-once = bitwarden-desktop --ozone-platform-hint=auto --silent
|
||||
|
||||
# Here are list of features available but disabled by default
|
||||
# exec-once = awww-daemon --format xrgb && awww img $HOME/Pictures/wallpapers/mecha-nostalgia.png # persistent wallpaper
|
||||
|
||||
# xdg-desktop-portal-hyprland (should be auto starting. However, you can force to start)
|
||||
#exec-once = $scriptsDir/PortalHyprland.sh
|
||||
@@ -1,26 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,58 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# Decoration Settings
|
||||
|
||||
# Hyprland Wiki Links
|
||||
# Animation - https://wiki.hyprland.org/Configuring/Animations/
|
||||
# Decoration - https://wiki.hyprland.org/Configuring/Variables/#decoration
|
||||
|
||||
# HyprFlux static color palette
|
||||
source = $HOME/.config/hypr/colours/hyprflux-colors.conf
|
||||
|
||||
general {
|
||||
border_size = 0
|
||||
gaps_in = 2
|
||||
gaps_out = 4
|
||||
|
||||
# col.active_border = $color12
|
||||
# col.inactive_border = $color10
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
|
||||
active_opacity = 1.0
|
||||
inactive_opacity = 1.0
|
||||
fullscreen_opacity = 1.0
|
||||
|
||||
dim_inactive = true
|
||||
dim_strength = 0.1
|
||||
dim_special = 0.8
|
||||
|
||||
shadow {
|
||||
enabled = false
|
||||
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
|
||||
}
|
||||
}
|
||||
@@ -1,116 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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 {
|
||||
preserve_split = true
|
||||
#smart_split = true
|
||||
special_scale_factor = 1
|
||||
}
|
||||
|
||||
master {
|
||||
new_status = master
|
||||
new_on_top = 1
|
||||
mfact = 0.5
|
||||
}
|
||||
|
||||
general {
|
||||
resize_on_border = true
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
input {
|
||||
kb_layout = gb
|
||||
kb_variant =
|
||||
kb_model =
|
||||
kb_options =
|
||||
kb_rules =
|
||||
repeat_rate = 50
|
||||
repeat_delay = 300
|
||||
sensitivity = 0.6 #mouse sensitivity
|
||||
#accel_profile = # flat or adaptive or blank or EMPTY means libinput’s 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 {
|
||||
# workspace_swipe = true
|
||||
# workspace_swipe_fingers = 3
|
||||
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
|
||||
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
|
||||
}
|
||||
|
||||
#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
|
||||
}
|
||||
@@ -1,744 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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 {
|
||||
name = windowrule-1
|
||||
tag = +browser
|
||||
match:class = ^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-2
|
||||
tag = +browser
|
||||
match:class = ^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-3
|
||||
tag = +browser
|
||||
match:class = ^(chrome-.+-Default)$ # Chrome PWAs
|
||||
}
|
||||
|
||||
# windowrule = tag +browser, class:^([Cc]hromium)$
|
||||
windowrule {
|
||||
name = windowrule-4
|
||||
tag = +browser
|
||||
match:class = ^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-5
|
||||
tag = +browser
|
||||
match:class = ^(Brave-browser(-beta|-dev|-unstable)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-6
|
||||
tag = +browser
|
||||
match:class = ^([Tt]horium-browser|[Cc]achy-browser)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-7
|
||||
tag = +browser
|
||||
match:class = ^(zen-alpha|zen)$
|
||||
}
|
||||
|
||||
|
||||
# notif tags
|
||||
windowrule {
|
||||
name = windowrule-8
|
||||
tag = +notif
|
||||
match:class = ^(swaync-control-center|swaync-notification-window|swaync-client|class)$
|
||||
}
|
||||
|
||||
|
||||
# HyprFlux settings tag
|
||||
windowrule {
|
||||
name = windowrule-9
|
||||
tag = +HyprFlux_Cheat
|
||||
match:title = ^(HyprFlux Quick Cheat Sheet)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-10
|
||||
tag = +HyprFlux_Settings
|
||||
match:title = ^(HyprFlux Settings)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-11
|
||||
tag = +HyprFlux-Settings
|
||||
match:class = ^(nwg-displays|nwg-look)$
|
||||
}
|
||||
|
||||
|
||||
# terminal tags
|
||||
windowrule {
|
||||
name = windowrule-12
|
||||
tag = +terminal
|
||||
match:class = ^(Alacritty|kitty|kitty-dropterm)$
|
||||
}
|
||||
|
||||
|
||||
# email tags
|
||||
windowrule {
|
||||
name = windowrule-13
|
||||
tag = +email
|
||||
match:class = ^([Tt]hunderbird|org.gnome.Evolution)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-14
|
||||
tag = +email
|
||||
match:class = ^(eu.betterbird.Betterbird)$
|
||||
}
|
||||
|
||||
|
||||
# project tags
|
||||
windowrule {
|
||||
name = windowrule-15
|
||||
tag = +projects
|
||||
match:class = ^(codium|codium-url-handler|VSCodium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-16
|
||||
tag = +projects
|
||||
match:class = ^(VSCode|code-url-handler)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-17
|
||||
tag = +projects
|
||||
match:class = ^(jetbrains-.+)$ # JetBrains IDEs
|
||||
}
|
||||
|
||||
|
||||
# screenshare tags
|
||||
windowrule {
|
||||
name = windowrule-18
|
||||
tag = +screenshare
|
||||
match:class = ^(com.obsproject.Studio)$
|
||||
}
|
||||
|
||||
|
||||
# IM tags
|
||||
# windowrule = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
|
||||
windowrule {
|
||||
name = windowrule-19
|
||||
tag = +im
|
||||
center = on
|
||||
float = on
|
||||
size = (monitor_w*0.6) (monitor_h*0.7)
|
||||
match:class = ^([Ff]erdium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-20
|
||||
tag = +im
|
||||
match:class = ^([Ww]hatsapp-for-linux)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-21
|
||||
tag = +im
|
||||
match:class = ^(ZapZap|com.rtosta.zapzap)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-22
|
||||
tag = +im
|
||||
match:class = ^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-23
|
||||
tag = +im
|
||||
match:class = ^(teams-for-linux)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-24
|
||||
tag = +im
|
||||
match:class = ^(im.riot.Riot|Element)$ # Element Matrix client
|
||||
}
|
||||
|
||||
|
||||
# game tags
|
||||
windowrule {
|
||||
name = windowrule-25
|
||||
tag = +games
|
||||
match:class = ^(gamescope)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-26
|
||||
tag = +games
|
||||
match:class = ^(steam_app_\d+)$
|
||||
}
|
||||
|
||||
|
||||
# gamestore tags
|
||||
windowrule {
|
||||
name = windowrule-27
|
||||
tag = +gamestore
|
||||
match:class = ^([Ss]team)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-28
|
||||
tag = +gamestore
|
||||
match:title = ^([Ll]utris)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-29
|
||||
tag = +gamestore
|
||||
match:class = ^(com.heroicgameslauncher.hgl)$
|
||||
}
|
||||
|
||||
|
||||
# file-manager tags
|
||||
windowrule {
|
||||
name = windowrule-30
|
||||
tag = +file-manager
|
||||
match:class = ^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-31
|
||||
tag = +file-manager
|
||||
match:class = ^(app.drey.Warp)$
|
||||
}
|
||||
|
||||
|
||||
# wallpaper tags
|
||||
windowrule {
|
||||
name = windowrule-32
|
||||
tag = +wallpaper
|
||||
match:class = ^([Ww]aytrogen)$
|
||||
}
|
||||
|
||||
|
||||
# multimedia tags
|
||||
windowrule {
|
||||
name = windowrule-33
|
||||
tag = +multimedia
|
||||
match:class = ^([Aa]udacious)$
|
||||
}
|
||||
|
||||
|
||||
# multimedia-video tags
|
||||
windowrule {
|
||||
name = windowrule-34
|
||||
tag = +multimedia_video
|
||||
match:class = ^([Mm]pv|vlc)$
|
||||
}
|
||||
|
||||
|
||||
# settings tags
|
||||
windowrule {
|
||||
name = windowrule-35
|
||||
tag = +settings
|
||||
center = on
|
||||
match:title = ^(ROG Control)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-36
|
||||
tag = +settings
|
||||
match:class = ^(wihotspot(-gui)?)$ # wifi hotspot
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-37
|
||||
tag = +settings
|
||||
match:class = ^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-38
|
||||
tag = +settings
|
||||
match:class = ^(gnome-disks|wihotspot(-gui)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-39
|
||||
tag = +settings
|
||||
match:title = (Kvantum Manager)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-40
|
||||
tag = +settings
|
||||
match:class = ^(file-roller|org.gnome.FileRoller)$ # archive manager
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-41
|
||||
tag = +settings
|
||||
match:class = ^(nm-applet|nm-connection-editor|blueman-manager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-42
|
||||
tag = +settings
|
||||
center = on
|
||||
match:class = ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-43
|
||||
tag = +settings
|
||||
match:class = ^(qt5ct|qt6ct|[Yy]ad)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-44
|
||||
tag = +settings
|
||||
match:class = (xdg-desktop-portal-gtk)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-45
|
||||
tag = +settings
|
||||
match:class = ^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-46
|
||||
tag = +settings
|
||||
match:class = ^([Rr]ofi)$
|
||||
}
|
||||
|
||||
|
||||
|
||||
# Custom rule
|
||||
windowrule {
|
||||
name = windowrule-47
|
||||
tile = on
|
||||
match:class = ^([Cc]hromium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-48
|
||||
size = (monitor_w*0.25) (monitor_h*0.55)
|
||||
float = on
|
||||
match:class = ^(com.network.manager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-49
|
||||
workspace = special:nyx
|
||||
match:class = ^([Vv]esktop|[Dd]iscord|[Ss]potify)$
|
||||
}
|
||||
|
||||
|
||||
# viewer tags
|
||||
windowrule {
|
||||
name = windowrule-50
|
||||
tag = +viewer
|
||||
match:class = ^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-51
|
||||
tag = +viewer
|
||||
match:class = ^(evince)$ # document viewer
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-52
|
||||
tag = +viewer
|
||||
match:class = ^(eog|org.gnome.Loupe)$ # image viewer
|
||||
}
|
||||
|
||||
|
||||
# Some special override rules
|
||||
windowrule {
|
||||
name = windowrule-53
|
||||
no_blur = on
|
||||
opacity = 1.0
|
||||
match:tag = multimedia_video*
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
# POSITION
|
||||
# windowrule = center,floating:1 # warning, it cause even the menu to float and center.
|
||||
windowrule {
|
||||
name = windowrule-54
|
||||
center = on
|
||||
float = on
|
||||
size = (monitor_w*0.65) (monitor_h*0.9)
|
||||
match:tag = HyprFlux_Cheat*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-55
|
||||
center = on
|
||||
float = on
|
||||
match:class = ([Tt]hunar)
|
||||
match:title = negative:(.*[Tt]hunar.*)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-56
|
||||
center = on
|
||||
float = on
|
||||
match:tag = HyprFlux-Settings*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-57
|
||||
center = on
|
||||
match:title = ^(Keybindings)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-58
|
||||
center = on
|
||||
size = (monitor_w*0.6) (monitor_h*0.7)
|
||||
match:class = ^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-59
|
||||
move = ((monitor_w*0.61)) ((monitor_h*0.07))
|
||||
float = on
|
||||
size = (monitor_w*0.38) (monitor_h*0.38)
|
||||
pin = on
|
||||
keep_aspect_ratio = on
|
||||
match: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 {
|
||||
name = windowrule-60
|
||||
idle_inhibit = fullscreen
|
||||
match:fullscreen = 1
|
||||
}
|
||||
|
||||
|
||||
# windowrule move to workspace
|
||||
windowrule {
|
||||
name = windowrule-61
|
||||
workspace = 1
|
||||
match:tag = projects*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-62
|
||||
workspace = 1
|
||||
match:tag = email*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-63
|
||||
workspace = 2
|
||||
match:tag = browser*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-64
|
||||
workspace = 3
|
||||
match:class = ^([Tt]hunar)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-65
|
||||
workspace = 4
|
||||
match:tag = im*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-66
|
||||
workspace = 5
|
||||
match:tag = gamestore*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-67
|
||||
workspace = 8
|
||||
no_blur = on
|
||||
fullscreen = on
|
||||
match:tag = games*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-68
|
||||
workspace = 1
|
||||
match:class = ^(kitty)$
|
||||
match:title = ^(tmuxifier)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-69
|
||||
workspace = 9
|
||||
match:class = ^(virt-viewer)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-70
|
||||
workspace = 10
|
||||
match:class = ^([Oo]bsidian)$
|
||||
}
|
||||
|
||||
|
||||
# windowrule move to workspace (silent)
|
||||
windowrule {
|
||||
name = windowrule-71
|
||||
workspace = 4 silent
|
||||
match:tag = screenshare*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-72
|
||||
workspace = 9 silent
|
||||
match:class = ^(virt-manager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-73
|
||||
workspace = 9 silent
|
||||
match:class = ^(.virt-manager-wrapped)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-74
|
||||
workspace = 9 silent
|
||||
match:tag = multimedia*
|
||||
}
|
||||
|
||||
|
||||
# FLOAT
|
||||
windowrule {
|
||||
name = windowrule-75
|
||||
float = on
|
||||
opacity = 0.9 0.7
|
||||
size = (monitor_w*0.7) (monitor_h*0.7)
|
||||
match:tag = wallpaper*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-76
|
||||
float = on
|
||||
opacity = 0.8 0.7
|
||||
size = (monitor_w*0.7) (monitor_h*0.7)
|
||||
match:tag = settings*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-77
|
||||
float = on
|
||||
match:tag = viewer*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-78
|
||||
float = on
|
||||
match:class = ([Zz]oom|onedriver|onedriver-launcher)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-79
|
||||
float = on
|
||||
match:class = (org.gnome.Calculator)
|
||||
match:title = (Calculator)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-80
|
||||
float = on
|
||||
match:class = ^(mpv|com.github.rafostar.Clapper)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-81
|
||||
float = on
|
||||
match:class = ^([Qq]alculate-gtk)$
|
||||
}
|
||||
|
||||
#windowrule = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
||||
#windowrule = float, title:^(Firefox)$
|
||||
windowrule {
|
||||
name = windowrule-82
|
||||
float = on
|
||||
match:class = ^(fdm|freedownloadmanager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-83
|
||||
float = on
|
||||
match:class = ^(proton-authenticator)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-84
|
||||
float = on
|
||||
match:class = ^([Ww]indscribe)$
|
||||
}
|
||||
|
||||
|
||||
|
||||
# windowrule - ######### float popups and dialogue #######
|
||||
windowrule {
|
||||
name = windowrule-85
|
||||
float = on
|
||||
center = on
|
||||
match:title = ^(Authentication Required)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-86
|
||||
float = on
|
||||
match:class = (codium|codium-url-handler|VSCodium)
|
||||
match:title = negative:(.*codium.*|.*VSCodium.*)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-87
|
||||
float = on
|
||||
match:class = ^(com.heroicgameslauncher.hgl)$
|
||||
match:title = negative:(Heroic Games Launcher)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-88
|
||||
float = on
|
||||
match:class = ^([Ss]team)$
|
||||
match:title = negative:^([Ss]team)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-89
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
center = on
|
||||
match:title = ^(Add Folder to Workspace)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-90
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
center = on
|
||||
match:title = ^(Save As)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-91
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
match:initial_title = (Open Files)
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-92
|
||||
float = on
|
||||
center = on
|
||||
size = (monitor_w*0.16) (monitor_h*0.12)
|
||||
match:title = ^(SDDM Background)$ #HyprFlux 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 {
|
||||
name = windowrule-93
|
||||
opacity = 0.8 0.7
|
||||
match:tag = terminal*
|
||||
}
|
||||
|
||||
# windowrule = opacity 0.82 0.75, tag:viewer*
|
||||
windowrule {
|
||||
name = windowrule-94
|
||||
opacity = 0.8 0.7
|
||||
match:class = ^(gedit|org.gnome.TextEditor|mousepad)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-95
|
||||
opacity = 0.9 0.8
|
||||
match:class = ^(deluge)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-96
|
||||
opacity = 0.9 0.8
|
||||
match:class = ^(seahorse)$ # gnome-keyring gui
|
||||
}
|
||||
|
||||
# windowrule = opacity 0.95 0.75, title:^(Picture-in-Picture)$
|
||||
|
||||
# SIZE
|
||||
|
||||
#windowrule = size 25% 25%, title:^(Firefox)$
|
||||
|
||||
# PINNING
|
||||
#windowrule = pin,title:^(Firefox)$
|
||||
|
||||
# windowrule - extras
|
||||
|
||||
# BLUR & FULLSCREEN
|
||||
|
||||
#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 {
|
||||
name = layerrule-1
|
||||
blur = on
|
||||
ignore_alpha = 0
|
||||
match:namespace = rofi
|
||||
}
|
||||
|
||||
layerrule {
|
||||
name = layerrule-2
|
||||
blur = on
|
||||
ignore_alpha = 0
|
||||
match:namespace = notifications
|
||||
}
|
||||
|
||||
layerrule {
|
||||
name = layerrule-3
|
||||
blur = on
|
||||
ignore_alpha = 0.5
|
||||
match:namespace = 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
|
||||
@@ -1,666 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# 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 {
|
||||
name = windowrule-1
|
||||
tag = +browser
|
||||
match:class = ^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = rustdesk
|
||||
tag = +rustdesk
|
||||
match:class = ^(rustdesk)$, xwayland
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-2
|
||||
tag = +browser
|
||||
match:class = ^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-3
|
||||
tag = +browser
|
||||
match:class = ^(chrome-.+-Default)$ # Chrome PWAs
|
||||
}
|
||||
|
||||
# windowrule = tag +browser, class:^([Cc]hromium)$
|
||||
windowrule {
|
||||
name = windowrule-4
|
||||
tag = +browser
|
||||
match:class = ^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-5
|
||||
tag = +browser
|
||||
match:class = ^(Brave-browser(-beta|-dev|-unstable)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-6
|
||||
tag = +browser
|
||||
match:class = ^([Tt]horium-browser|[Cc]achy-browser)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-7
|
||||
tag = +browser
|
||||
match:class = ^(zen-alpha|zen)$
|
||||
}
|
||||
|
||||
|
||||
# notif tags
|
||||
windowrule {
|
||||
name = windowrule-8
|
||||
tag = +notif
|
||||
match:class = ^(swaync-control-center|swaync-notification-window|swaync-client|class)$
|
||||
}
|
||||
|
||||
|
||||
# HyprFlux settings tag
|
||||
windowrule {
|
||||
name = windowrule-9
|
||||
tag = +HyprFlux_Cheat
|
||||
match:title = ^(HyprFlux Quick Cheat Sheet)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-10
|
||||
tag = +HyprFlux_Settings
|
||||
match:title = ^(HyprFlux Settings)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-11
|
||||
tag = +HyprFlux-Settings
|
||||
match:class = ^(nwg-displays|nwg-look)$
|
||||
}
|
||||
|
||||
|
||||
# terminal tags
|
||||
windowrule {
|
||||
name = windowrule-12
|
||||
tag = +terminal
|
||||
match:class = ^(Alacritty|kitty|kitty-dropterm)$
|
||||
}
|
||||
|
||||
|
||||
# email tags
|
||||
windowrule {
|
||||
name = windowrule-13
|
||||
tag = +email
|
||||
match:class = ^([Tt]hunderbird|org.gnome.Evolution)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-14
|
||||
tag = +email
|
||||
match:class = ^(eu.betterbird.Betterbird)$
|
||||
}
|
||||
|
||||
|
||||
# project tags
|
||||
windowrule {
|
||||
name = windowrule-15
|
||||
tag = +projects
|
||||
match:class = ^(codium|codium-url-handler|VSCodium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-16
|
||||
tag = +projects
|
||||
match:class = ^(VSCode|code-url-handler)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-17
|
||||
tag = +projects
|
||||
match:class = ^(jetbrains-.+)$ # JetBrains IDEs
|
||||
}
|
||||
|
||||
|
||||
# screenshare tags
|
||||
windowrule {
|
||||
name = windowrule-18
|
||||
tag = +screenshare
|
||||
match:class = ^(com.obsproject.Studio)$
|
||||
}
|
||||
|
||||
|
||||
# IM tags
|
||||
# windowrule = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
|
||||
windowrule {
|
||||
name = windowrule-19
|
||||
tag = +im
|
||||
center = on
|
||||
float = on
|
||||
size = (monitor_w*0.6) (monitor_h*0.7)
|
||||
match:class = ^([Ff]erdium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-20
|
||||
tag = +im
|
||||
match:class = ^([Ww]hatsapp-for-linux)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-21
|
||||
tag = +im
|
||||
match:class = ^(ZapZap|com.rtosta.zapzap)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-22
|
||||
tag = +im
|
||||
match:class = ^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-23
|
||||
tag = +im
|
||||
match:class = ^(teams-for-linux)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-24
|
||||
tag = +im
|
||||
match:class = ^(im.riot.Riot|Element)$ # Element Matrix client
|
||||
}
|
||||
|
||||
|
||||
# game tags
|
||||
windowrule {
|
||||
name = windowrule-25
|
||||
tag = +games
|
||||
match:class = ^(gamescope)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-26
|
||||
tag = +games
|
||||
match:class = ^(steam_app_\d+)$
|
||||
}
|
||||
|
||||
|
||||
# gamestore tags
|
||||
windowrule {
|
||||
name = windowrule-27
|
||||
tag = +gamestore
|
||||
match:class = ^([Ss]team)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-28
|
||||
tag = +gamestore
|
||||
match:title = ^([Ll]utris)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-29
|
||||
tag = +gamestore
|
||||
match:class = ^(com.heroicgameslauncher.hgl)$
|
||||
}
|
||||
|
||||
|
||||
# file-manager tags
|
||||
windowrule {
|
||||
name = windowrule-30
|
||||
tag = +file-manager
|
||||
match:class = ^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-31
|
||||
tag = +file-manager
|
||||
match:class = ^(app.drey.Warp)$
|
||||
}
|
||||
|
||||
|
||||
# wallpaper tags
|
||||
windowrule {
|
||||
name = windowrule-32
|
||||
tag = +wallpaper
|
||||
match:class = ^([Ww]aytrogen)$
|
||||
}
|
||||
|
||||
|
||||
# multimedia tags
|
||||
windowrule {
|
||||
name = windowrule-33
|
||||
tag = +multimedia
|
||||
match:class = ^([Aa]udacious)$
|
||||
}
|
||||
|
||||
|
||||
# multimedia-video tags
|
||||
windowrule {
|
||||
name = windowrule-34
|
||||
tag = +multimedia_video
|
||||
match:class = ^([Mm]pv|vlc)$
|
||||
}
|
||||
|
||||
|
||||
# settings tags
|
||||
windowrule {
|
||||
name = windowrule-35
|
||||
tag = +settings
|
||||
center = on
|
||||
match:title = ^(ROG Control)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-36
|
||||
tag = +settings
|
||||
match:class = ^(wihotspot(-gui)?)$ # wifi hotspot
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-37
|
||||
tag = +settings
|
||||
match:class = ^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-38
|
||||
tag = +settings
|
||||
match:class = ^(gnome-disks|wihotspot(-gui)?)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-39
|
||||
tag = +settings
|
||||
match:title = (Kvantum Manager)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-40
|
||||
tag = +settings
|
||||
match:class = ^(file-roller|org.gnome.FileRoller)$ # archive manager
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-41
|
||||
tag = +settings
|
||||
match:class = ^(nm-applet|nm-connection-editor|blueman-manager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-42
|
||||
tag = +settings
|
||||
center = on
|
||||
match:class = ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-43
|
||||
tag = +settings
|
||||
match:class = ^(qt5ct|qt6ct|[Yy]ad)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-44
|
||||
tag = +settings
|
||||
match:class = (xdg-desktop-portal-gtk)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-45
|
||||
tag = +settings
|
||||
match:class = ^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-46
|
||||
tag = +settings
|
||||
match:class = ^([Rr]ofi)$
|
||||
}
|
||||
|
||||
# Custom rule
|
||||
windowrule {
|
||||
name = windowrule-47
|
||||
tile = on
|
||||
match:class = ^([Cc]hromium)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-48
|
||||
size = (monitor_w*0.25) (monitor_h*0.55)
|
||||
float = on
|
||||
match:class = ^(com.network.manager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-49
|
||||
workspace = special:nyx
|
||||
match:class = ^([Vv]esktop|[Dd]iscord|[Ss]potify)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-255
|
||||
size = (monitor_w*0.75) (monitor_h*0.80)
|
||||
float = on
|
||||
match:class = ^([Bb]itwarden)$
|
||||
}
|
||||
|
||||
# viewer tags
|
||||
windowrule {
|
||||
name = windowrule-50
|
||||
tag = +viewer
|
||||
match:class = ^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-51
|
||||
tag = +viewer
|
||||
match:class = ^(evince)$ # document viewer
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-52
|
||||
tag = +viewer
|
||||
match:class = ^(eog|org.gnome.Loupe)$ # image viewer
|
||||
}
|
||||
|
||||
|
||||
# Some special override rules
|
||||
windowrule {
|
||||
name = windowrule-53
|
||||
no_blur = on
|
||||
opacity = 1.0
|
||||
match:tag = multimedia_video*
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
# POSITION
|
||||
# windowrule = center,floating:1 # warning, it cause even the menu to float and center.
|
||||
windowrule {
|
||||
name = windowrule-54
|
||||
center = on
|
||||
float = on
|
||||
size = (monitor_w*0.65) (monitor_h*0.9)
|
||||
match:tag = HyprFlux_Cheat*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-55
|
||||
center = on
|
||||
float = on
|
||||
match:class = ([Tt]hunar)
|
||||
match:title = negative:(.*[Tt]hunar.*)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-56
|
||||
center = on
|
||||
float = on
|
||||
match:tag = HyprFlux-Settings*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-57
|
||||
center = on
|
||||
match:title = ^(Keybindings)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-58
|
||||
center = on
|
||||
size = (monitor_w*0.6) (monitor_h*0.7)
|
||||
match:class = ^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-59
|
||||
move = ((monitor_w*0.61)) ((monitor_h*0.07))
|
||||
float = on
|
||||
size = (monitor_w*0.38) (monitor_h*0.38)
|
||||
pin = on
|
||||
keep_aspect_ratio = on
|
||||
match: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 {
|
||||
name = windowrule-60
|
||||
idle_inhibit = fullscreen
|
||||
match:fullscreen = 1
|
||||
}
|
||||
|
||||
# Discord to workspace 3
|
||||
windowrule = match:class ^([Vv]esktop|[Dd]iscord|[Ss]potify|[Pp]lexamp)$, workspace 3
|
||||
windowrule = match:class ^([Pp]lexamp), size 20% 20%
|
||||
|
||||
# FLOAT
|
||||
windowrule {
|
||||
name = windowrule-75
|
||||
float = on
|
||||
opacity = 0.9 0.7
|
||||
size = (monitor_w*0.7) (monitor_h*0.7)
|
||||
match:tag = wallpaper*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-76
|
||||
float = on
|
||||
opacity = 0.8 0.7
|
||||
size = (monitor_w*0.7) (monitor_h*0.7)
|
||||
match:tag = settings*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-77
|
||||
float = on
|
||||
match:tag = viewer*
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-78
|
||||
float = on
|
||||
match:class = ([Zz]oom|onedriver|onedriver-launcher)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-79
|
||||
float = on
|
||||
match:class = (org.gnome.Calculator)
|
||||
match:title = (Calculator)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-80
|
||||
float = on
|
||||
match:class = ^(mpv|com.github.rafostar.Clapper)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-81
|
||||
float = on
|
||||
match:class = ^([Qq]alculate-gtk)$
|
||||
}
|
||||
|
||||
#windowrule = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
||||
#windowrule = float, title:^(Firefox)$
|
||||
windowrule {
|
||||
name = windowrule-82
|
||||
float = on
|
||||
match:class = ^(fdm|freedownloadmanager)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-83
|
||||
float = on
|
||||
match:class = ^(proton-authenticator)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-84
|
||||
float = on
|
||||
match:class = ^([Ww]indscribe)$
|
||||
}
|
||||
|
||||
|
||||
|
||||
# windowrule - ######### float popups and dialogue #######
|
||||
windowrule {
|
||||
name = windowrule-85
|
||||
float = on
|
||||
center = on
|
||||
match:title = ^(Authentication Required)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-86
|
||||
float = on
|
||||
match:class = (codium|codium-url-handler|VSCodium)
|
||||
match:title = negative:(.*codium.*|.*VSCodium.*)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-87
|
||||
float = on
|
||||
match:class = ^(com.heroicgameslauncher.hgl)$
|
||||
match:title = negative:(Heroic Games Launcher)
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-88
|
||||
float = on
|
||||
match:class = ^([Ss]team)$
|
||||
match:title = negative:^([Ss]team)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-89
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
center = on
|
||||
match:title = ^(Add Folder to Workspace)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-90
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
center = on
|
||||
match:title = ^(Save As)$
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-91
|
||||
float = on
|
||||
size = (monitor_w*0.7) (monitor_h*0.6)
|
||||
match:initial_title = (Open Files)
|
||||
}
|
||||
|
||||
|
||||
windowrule {
|
||||
name = windowrule-92
|
||||
float = on
|
||||
center = on
|
||||
size = (monitor_w*0.16) (monitor_h*0.12)
|
||||
match:title = ^(SDDM Background)$ #HyprFlux 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 {
|
||||
name = windowrule-93
|
||||
opacity = 0.8 0.7
|
||||
match:tag = terminal*
|
||||
}
|
||||
|
||||
# windowrule = opacity 0.82 0.75, tag:viewer*
|
||||
windowrule {
|
||||
name = windowrule-94
|
||||
opacity = 0.8 0.7
|
||||
match:class = ^(gedit|org.gnome.TextEditor|mousepad)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-95
|
||||
opacity = 0.9 0.8
|
||||
match:class = ^(deluge)$
|
||||
}
|
||||
|
||||
windowrule {
|
||||
name = windowrule-96
|
||||
opacity = 0.9 0.8
|
||||
match:class = ^(seahorse)$ # gnome-keyring gui
|
||||
}
|
||||
|
||||
# windowrule = opacity 0.95 0.75, title:^(Picture-in-Picture)$
|
||||
|
||||
# SIZE
|
||||
|
||||
#windowrule = size 25% 25%, title:^(Firefox)$
|
||||
|
||||
# PINNING
|
||||
#windowrule = pin,title:^(Firefox)$
|
||||
|
||||
# windowrule - extras
|
||||
|
||||
# BLUR & FULLSCREEN
|
||||
|
||||
#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 {
|
||||
name = layerrule-1
|
||||
blur = on
|
||||
ignore_alpha = 0
|
||||
match:namespace = rofi
|
||||
}
|
||||
|
||||
layerrule {
|
||||
name = layerrule-2
|
||||
blur = on
|
||||
ignore_alpha = 0
|
||||
match:namespace = notifications
|
||||
}
|
||||
|
||||
layerrule {
|
||||
name = layerrule-3
|
||||
blur = on
|
||||
ignore_alpha = 0.5
|
||||
match:namespace = 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
|
||||
@@ -1,12 +0,0 @@
|
||||
# Generated with hyprdynamicmonitors freeze.
|
||||
# This is a template that you can edit, it is just a starter that pulled your current monitor setup,
|
||||
# adjust as needed.
|
||||
# You can use templates here etc, see https://github.com/fiffeek/hyprdynamicmonitors/blob/main/examples/basic/hyprconfigs/template.go.tmpl.
|
||||
# Monitors are given arbitrary tags (the "monitor" prefix and the ID coming from hyprland).
|
||||
# If you are using tui to edit, leave this at the end of your file (the last monitor config applies)
|
||||
# and leave the markers.
|
||||
# <<<<< TUI AUTO START
|
||||
monitor=desc:LG Electronics LG ULTRAWIDE 0x0002E68A,2560x1080@60.00000,1920x-740,1.00000000,transform,3,vrr,0
|
||||
monitor=desc:HP Inc. HP 524pf VNG447017D,1920x1080@100.00000,-1920x0,1.00000000,transform,0,vrr,0
|
||||
monitor=desc:Acer Technologies VG240Y S 0x126191DE,1920x1080@165.00301,0x0,1.00000000,transform,0,vrr,0,bitdepth,10,cm,wide
|
||||
# <<<<< TUI AUTO END
|
||||
@@ -1,30 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# NOTE: This will be overwritten by NWG-Displays
|
||||
# once you use and click apply.
|
||||
#
|
||||
# *********************************************************** #
|
||||
|
||||
# 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:DP-2, default=true
|
||||
workspace = 2, monitor:DP-1, default=true
|
||||
workspace = 3, monitor:HDMI-A-1, default=true
|
||||
# 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
|
||||
@@ -1,3 +1,3 @@
|
||||
# Place your new scripts here.
|
||||
# If you need to edit a script from main script (~/.config/hypr/scripts), copy it on this directory, and edit.
|
||||
# Make sure to update as well the keybinds in ~/.config/hypr/UserConfigs directory if any script is linked to it
|
||||
# Make sure to update as well the keybinds in ~/.config/hypr/input/keybinds.lua if any script is linked to it
|
||||
|
||||
@@ -1,25 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
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
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# old animations
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = linear, 0.0, 0.0, 1.0, 1.0
|
||||
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 = slow, 0, 0.85, 0.3, 1
|
||||
bezier = overshot, 0.7, 0.6, 0.1, 1.1
|
||||
bezier = bounce, 1.1, 1.6, 0.1, 0.85
|
||||
bezier = sligshot, 1, -1, 0.15, 1.25
|
||||
bezier = nice, 0, 6.9, 0.5, -4.20
|
||||
|
||||
animation = windowsIn, 1, 5, slow, popin
|
||||
animation = windowsOut, 1, 5, winOut, popin
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 10, linear
|
||||
animation = borderangle, 1, 180, linear, loop #used by rainbow borders and rotating colors
|
||||
animation = fade, 1, 5, overshot
|
||||
animation = workspaces, 1, 5, wind
|
||||
animation = windows, 1, 5, bounce, popin
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
animations {
|
||||
enabled = no
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "End-4"
|
||||
# credit https://github.com/end-4/dots-hyprland
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
# Animation curves
|
||||
|
||||
bezier = linear, 0, 0, 1, 1
|
||||
bezier = md3_standard, 0.2, 0, 0, 1
|
||||
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
||||
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
||||
bezier = overshot, 0.05, 0.9, 0.1, 1.1
|
||||
bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
|
||||
bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
|
||||
bezier = menu_decel, 0.1, 1, 0, 1
|
||||
bezier = menu_accel, 0.38, 0.04, 1, 0.07
|
||||
bezier = easeInOutCirc, 0.85, 0, 0.15, 1
|
||||
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
||||
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
||||
bezier = softAcDecel, 0.26, 0.26, 0.15, 1
|
||||
bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
|
||||
# Animation configs
|
||||
animation = windows, 1, 3, md3_decel, popin 60%
|
||||
animation = windowsIn, 1, 3, md3_decel, popin 60%
|
||||
animation = windowsOut, 1, 3, md3_accel, popin 60%
|
||||
animation = border, 1, 10, default
|
||||
animation = fade, 1, 3, md3_decel
|
||||
# animation = layers, 1, 2, md3_decel, slide
|
||||
animation = layersIn, 1, 3, menu_decel, slide
|
||||
animation = layersOut, 1, 1.6, menu_accel
|
||||
animation = fadeLayersIn, 1, 2, menu_decel
|
||||
animation = fadeLayersOut, 1, 4.5, menu_accel
|
||||
animation = workspaces, 1, 7, menu_decel, slide
|
||||
# animation = workspaces, 1, 2.5, softAcDecel, slide
|
||||
# animation = workspaces, 1, 7, menu_decel, slidefade 15%
|
||||
# animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
|
||||
animation = specialWorkspace, 1, 3, md3_decel, slidevert
|
||||
}
|
||||
@@ -1,33 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Vertical"
|
||||
# credit https://github.com/prasanthrangan/hyprdots
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = fluent_decel, 0, 0.2, 0.4, 1
|
||||
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
||||
bezier = easeOutCubic, 0.33, 1, 0.68, 1
|
||||
bezier = easeinoutsine, 0.37, 0, 0.63, 1
|
||||
|
||||
# Windows
|
||||
animation = windowsIn, 1, 1.5, easeinoutsine, popin 60% # window open
|
||||
animation = windowsOut, 1, 1.5, easeOutCubic, popin 60% # window close.
|
||||
animation = windowsMove, 1, 1.5, easeinoutsine, slide # everything in between, moving, dragging, resizing.
|
||||
|
||||
# Fading
|
||||
animation = fade, 1, 2.5, fluent_decel
|
||||
|
||||
animation = fadeLayersIn, 0
|
||||
animation = border, 0
|
||||
|
||||
|
||||
# Layers
|
||||
animation = layers, 1, 1.5, easeinoutsine, popin
|
||||
|
||||
# Workspaces
|
||||
#animation = workspaces, 1, 3, fluent_decel, slidefade 30% # styles: slide, slidevert, fade, slidefade, slidefadevert
|
||||
animation = workspaces, 1, 3, fluent_decel, slidefadevert 30% # styles: slide, slidevert, fade, slidefade, slidefadevert
|
||||
|
||||
animation = specialWorkspace, 1, 2, fluent_decel, slidefade 10%
|
||||
}
|
||||
@@ -1,20 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Default"
|
||||
# credit https://github.com/prasanthrangan/hyprdots
|
||||
|
||||
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
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, once
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
animation = specialWorkspace, 1, 5, wind, slidevert
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Minimal-1"
|
||||
# credit https://github.com/prasanthrangan/hyprdots-
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
|
||||
# █▄▄ █▀▀ ▀█ █ █▀▀ █▀█ █▀▀ █░█ █▀█ █░█ █▀▀
|
||||
# █▄█ ██▄ █▄ █ ██▄ █▀▄ █▄▄ █▄█ █▀▄ ▀▄▀ ██▄
|
||||
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
|
||||
|
||||
|
||||
#▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█
|
||||
#█▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, once
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Minimal-2"
|
||||
# credit https://github.com/prasanthrangan/hyprdots
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
bezier = quart, 0.25, 1, 0.5, 1
|
||||
|
||||
animation = windows, 1, 6, quart, slide
|
||||
animation = border, 1, 6, quart
|
||||
animation = borderangle, 1, 6, quart
|
||||
animation = fade, 1, 6, quart
|
||||
animation = workspaces, 1, 6, quart
|
||||
}
|
||||
@@ -1,40 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Optimized"
|
||||
# credit https://github.com/prasanthrangan/hyprdots
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = wind, 0.05, 0.85, 0.03, 0.97
|
||||
bezier = winIn, 0.07, 0.88, 0.04, 0.99
|
||||
bezier = winOut, 0.20, -0.15, 0, 1
|
||||
bezier = liner, 1, 1, 1, 1
|
||||
bezier = md3_standard, 0.12, 0, 0, 1
|
||||
bezier = md3_decel, 0.05, 0.80, 0.10, 0.97
|
||||
bezier = md3_accel, 0.20, 0, 0.80, 0.08
|
||||
bezier = overshot, 0.05, 0.85, 0.07, 1.04
|
||||
bezier = crazyshot, 0.1, 1.22, 0.68, 0.98
|
||||
bezier = hyprnostretch, 0.05, 0.82, 0.03, 0.94
|
||||
bezier = menu_decel, 0.05, 0.82, 0, 1
|
||||
bezier = menu_accel, 0.20, 0, 0.82, 0.10
|
||||
bezier = easeInOutCirc, 0.75, 0, 0.15, 1
|
||||
bezier = easeOutCirc, 0, 0.48, 0.38, 1
|
||||
bezier = easeOutExpo, 0.10, 0.94, 0.23, 0.98
|
||||
bezier = softAcDecel, 0.20, 0.20, 0.15, 1
|
||||
bezier = md2, 0.30, 0, 0.15, 1
|
||||
|
||||
bezier = OutBack, 0.28, 1.40, 0.58, 1
|
||||
bezier = easeInOutCirc, 0.78, 0, 0.15, 1
|
||||
|
||||
animation = border, 1, 1.6, liner
|
||||
animation = borderangle, 1, 82, liner, once
|
||||
animation = windowsIn, 1, 3.2, winIn, slide
|
||||
animation = windowsOut, 1, 2.8, easeOutCirc
|
||||
animation = windowsMove, 1, 3.0, wind, slide
|
||||
animation = fade, 1, 1.8, md3_decel
|
||||
animation = layersIn, 1, 1.8, menu_decel, slide
|
||||
animation = layersOut, 1, 1.5, menu_accel
|
||||
animation = fadeLayersIn, 1, 1.6, menu_decel
|
||||
animation = fadeLayersOut, 1, 1.8, menu_accel
|
||||
animation = workspaces, 1, 4.0, menu_decel, slide
|
||||
animation = specialWorkspace, 1, 2.3, md3_decel, slidefadevert 15%
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Classic"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
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
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Dynamic"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
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
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, loop
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Fast"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = linear, 0, 0, 1, 1
|
||||
bezier = md3_standard, 0.2, 0, 0, 1
|
||||
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
||||
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
||||
bezier = overshot, 0.05, 0.9, 0.1, 1.1
|
||||
bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
|
||||
bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
|
||||
bezier = fluent_decel, 0.1, 1, 0, 1
|
||||
bezier = easeInOutCirc, 0.85, 0, 0.15, 1
|
||||
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
||||
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
||||
animation = windows, 1, 3, md3_decel, popin 60%
|
||||
animation = border, 1, 10, default
|
||||
animation = fade, 1, 2.5, md3_decel
|
||||
animation = workspaces, 1, 3.5, easeOutExpo, slide
|
||||
animation = specialWorkspace, 1, 3, md3_decel, slidevert
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "High"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
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
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, once
|
||||
animation = fade, 1, 10, default
|
||||
animation = workspaces, 1, 5, wind
|
||||
}
|
||||
@@ -1,19 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Moving"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
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, 5, overshot, slide
|
||||
animation = windowsOut, 1, 3, smoothOut
|
||||
animation = windowsIn, 1, 3, smoothOut
|
||||
animation = windowsMove, 1, 4, smoothIn, slide
|
||||
animation = border, 1, 5, default
|
||||
animation = fade, 1, 5, smoothIn
|
||||
animation = fadeDim, 1, 5, smoothIn
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Standard"
|
||||
# credit https://github.com/mylinuxforwork/dotfiles
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
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
|
||||
}
|
||||
@@ -1,54 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Me-1"
|
||||
# credit https://github.com/mahaveergurjar
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
# Animation curves
|
||||
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 = linear, 0, 0, 1, 1
|
||||
bezier = md3_standard, 0.2, 0, 0, 1
|
||||
bezier = md3_decel, 0.05, 0.7, 0.1, 1
|
||||
bezier = md3_accel, 0.3, 0, 0.8, 0.15
|
||||
bezier = overshot, 0.05, 0.9, 0.1, 1.1
|
||||
bezier = crazyshot, 0.1, 1.5, 0.76, 0.92
|
||||
bezier = hyprnostretch, 0.05, 0.9, 0.1, 1.0
|
||||
bezier = menu_decel, 0.1, 1, 0, 1
|
||||
bezier = menu_accel, 0.38, 0.04, 1, 0.07
|
||||
bezier = easeInOutCirc, 0.85, 0, 0.15, 1
|
||||
bezier = easeOutCirc, 0, 0.55, 0.45, 1
|
||||
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
||||
bezier = softAcDecel, 0.26, 0.26, 0.15, 1
|
||||
bezier = md2, 0.4, 0, 0.2, 1 # use with .2s duration
|
||||
|
||||
# Animation configs
|
||||
# animation = windows, 1, 3, md3_decel, popin 60%
|
||||
# animation = windowsIn, 1, 3, md3_decel, popin 60%
|
||||
# animation = windowsOut, 1, 3, md3_accel, popin 60%
|
||||
# animation = windows, 1, 6, wind, slide
|
||||
animation = border, 1, 1, liner
|
||||
animation = borderangle, 1, 30, liner, once
|
||||
animation = windows, 1, 6, wind, slide
|
||||
animation = windowsIn, 1, 6, winIn, slide
|
||||
animation = windowsOut, 1, 5, winOut, slide
|
||||
animation = windowsMove, 1, 5, wind, slide
|
||||
|
||||
# animation = border, 1, 10, default
|
||||
animation = fade, 1, 3, md3_decel
|
||||
# animation = layers, 1, 2, md3_decel, slide
|
||||
animation = layersIn, 1, 3, menu_decel, slide
|
||||
animation = layersOut, 1, 1.6, menu_accel
|
||||
animation = fadeLayersIn, 1, 2, menu_decel
|
||||
animation = fadeLayersOut, 1, 4.5, menu_accel
|
||||
animation = workspaces, 1, 7, menu_decel, slide
|
||||
animation = workspaces, 1, 5, wind
|
||||
# animation = workspaces, 1, 2.5, softAcDecel, slide
|
||||
# animation = workspaces, 1, 7, menu_decel, slidefade 15%
|
||||
animation = specialWorkspace, 1, 3, md3_decel, slidefadevert 15%
|
||||
animation = specialWorkspace, 1, 3, md3_decel, slidevert
|
||||
}
|
||||
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# name "Me-2"
|
||||
# credit https://github.com/mahaveergurjar
|
||||
|
||||
|
||||
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
|
||||
}
|
||||
@@ -1,34 +1,6 @@
|
||||
-- HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
-- Ported from UserConfigs/UserAnimations.conf (the active preset)
|
||||
--
|
||||
-- The 14 alternative presets from animations/*.conf were also ported, flat, as
|
||||
-- anim-*.lua (see the plan) — none of them are wired in. They now live in ../presets/.
|
||||
-- To switch styles, replace the body of this file with `require("presets.anim-<preset>")`,
|
||||
-- e.g. require("presets.anim-ml4w-classic").
|
||||
-- Active animation preset.
|
||||
-- The presets live in ../presets/anim-*.lua. Super+Shift+A (scripts/Animations.sh)
|
||||
-- picks one and rewrites the require() line below; edit it by hand to switch too,
|
||||
-- e.g. require("presets.anim-ml4w-classic"). Keep it to this single line.
|
||||
|
||||
hl.config({
|
||||
animations = {
|
||||
enabled = true,
|
||||
},
|
||||
})
|
||||
|
||||
hl.curve("wind", { type = "bezier", points = { { 0.05, 0.9 }, { 0.1, 1.05 } } })
|
||||
hl.curve("winIn", { type = "bezier", points = { { 0.1, 1.1 }, { 0.1, 1.1 } } })
|
||||
hl.curve("winOut", { type = "bezier", points = { { 0.3, -0.3 }, { 0, 1 } } })
|
||||
hl.curve("liner", { type = "bezier", points = { { 1, 1 }, { 1, 1 } } })
|
||||
hl.curve("overshot", { type = "bezier", points = { { 0.05, 0.9 }, { 0.1, 1.05 } } })
|
||||
hl.curve("smoothOut", { type = "bezier", points = { { 0.5, 0 }, { 0.99, 0.99 } } })
|
||||
hl.curve("smoothIn", { type = "bezier", points = { { 0.5, -0.5 }, { 0.68, 1.5 } } })
|
||||
|
||||
hl.animation({ leaf = "windows", enabled = true, speed = 6, bezier = "wind", style = "slide" })
|
||||
hl.animation({ leaf = "windowsIn", enabled = true, speed = 5, bezier = "winIn", style = "slide" })
|
||||
hl.animation({ leaf = "windowsOut", enabled = true, speed = 3, bezier = "smoothOut", style = "slide" })
|
||||
hl.animation({ leaf = "windowsMove", enabled = true, speed = 5, bezier = "wind", style = "slide" })
|
||||
hl.animation({ leaf = "border", enabled = true, speed = 1, bezier = "liner" })
|
||||
hl.animation({ leaf = "borderangle", enabled = true, speed = 100, bezier = "liner", style = "loop" }) -- used by rainbow borders and rotating colors; speed clamped from 180 -> Lua hl.animation caps speed at 100
|
||||
hl.animation({ leaf = "fade", enabled = true, speed = 3, bezier = "smoothOut" })
|
||||
hl.animation({ leaf = "workspaces", enabled = true, speed = 5, bezier = "overshot" })
|
||||
|
||||
-- animations for -git or version >0.42.0
|
||||
hl.animation({ leaf = "workspacesIn", enabled = true, speed = 5, bezier = "winIn", style = "slide" })
|
||||
hl.animation({ leaf = "workspacesOut", enabled = true, speed = 5, bezier = "winOut", style = "slide" })
|
||||
require("presets.anim-hyprflux")
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# HyprFlux static color palette
|
||||
|
||||
$background = rgb(010102)
|
||||
$foreground = rgb(FDF8FE)
|
||||
$color0 = rgb(313131)
|
||||
$color1 = rgb(09050C)
|
||||
$color2 = rgb(221647)
|
||||
$color3 = rgb(2C1A40)
|
||||
$color4 = rgb(5E3887)
|
||||
$color5 = rgb(7344A6)
|
||||
$color6 = rgb(BAB0BD)
|
||||
$color7 = rgb(F3ECF5)
|
||||
$color8 = rgb(AAA5AC)
|
||||
$color9 = rgb(0B0711)
|
||||
$color10 = rgb(2D1D5F)
|
||||
$color11 = rgb(3B2355)
|
||||
$color12 = rgb(7D4AB4)
|
||||
$color13 = rgb(9A5BDD)
|
||||
$color14 = rgb(F8EAFC)
|
||||
$color15 = rgb(F3ECF5)
|
||||
@@ -19,8 +19,7 @@ hl.env("XDG_SESSION_TYPE", "wayland")
|
||||
-- QT Variables
|
||||
hl.env("QT_AUTO_SCREEN_SCALE_FACTOR", "1")
|
||||
hl.env("QT_WAYLAND_DISABLE_WINDOWDECORATION", "1")
|
||||
hl.env("QT_QPA_PLATFORMTHEME", "qt5ct")
|
||||
hl.env("QT_QPA_PLATFORMTHEME", "qt6ct")
|
||||
hl.env("QT_QPA_PLATFORMTHEME", "qt6ct") -- qt6ct also styles Qt5 apps that read it; qt5ct.conf is kept in sync
|
||||
|
||||
-- hyprland-qt-support
|
||||
hl.env("QT_QUICK_CONTROLS_STYLE", "org.hyprland.style")
|
||||
@@ -32,11 +31,14 @@ hl.env("QT_QUICK_CONTROLS_STYLE", "org.hyprland.style")
|
||||
hl.env("GDK_SCALE", "1")
|
||||
hl.env("QT_SCALE_FACTOR", "1")
|
||||
|
||||
-- Bibata-Modern-Ice-Cursor
|
||||
-- NOTE! You must have the hyprcursor version to activate this.
|
||||
-- Cursor: Bibata-Modern-Classic (AUR bibata-cursor-theme-bin, XCursor format).
|
||||
-- Same theme in gtk-*/settings.ini, the gsettings call in hyprland.lua and initial-boot.sh.
|
||||
-- There's no hyprcursor build installed, so Hyprland falls back to XCURSOR_THEME.
|
||||
-- https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/
|
||||
hl.env("HYPRCURSOR_THEME", "Bibata-Modern-Classic")
|
||||
hl.env("HYPRCURSOR_SIZE", "24")
|
||||
hl.env("XCURSOR_THEME", "Bibata-Modern-Classic")
|
||||
hl.env("XCURSOR_SIZE", "24")
|
||||
|
||||
-- firefox
|
||||
hl.env("MOZ_ENABLE_WAYLAND", "1")
|
||||
@@ -46,13 +48,17 @@ hl.env("MOZ_ENABLE_WAYLAND", "1")
|
||||
hl.env("ELECTRON_OZONE_PLATFORM_HINT", "auto") -- auto selects Wayland if possible, X11 otherwise
|
||||
|
||||
-- NVIDIA
|
||||
-- This is from the Hyprland wiki. Uncomment below if an nvidia GPU is detected.
|
||||
-- See hyprland wiki https://wiki.hyprland.org/Nvidia/#environment-variables
|
||||
|
||||
-- Only when the NVIDIA kernel driver is loaded, so the same config works on the
|
||||
-- laptop (forcing LIBVA_DRIVER_NAME=nvidia there breaks VA-API video decoding).
|
||||
local nvidia = io.open("/proc/driver/nvidia/version")
|
||||
if nvidia then
|
||||
nvidia:close()
|
||||
hl.env("LIBVA_DRIVER_NAME", "nvidia")
|
||||
hl.env("__GLX_VENDOR_LIBRARY_NAME", "nvidia")
|
||||
hl.env("NVD_BACKEND", "direct")
|
||||
hl.env("GSK_RENDERER", "ngl")
|
||||
end
|
||||
|
||||
-- additional ENV's for nvidia. Caution, activate with care
|
||||
-- hl.env("GBM_BACKEND", "nvidia-drm")
|
||||
|
||||
@@ -47,8 +47,7 @@ hl.on("hyprland.start", function()
|
||||
|
||||
hl.dispatch(hl.dsp.focus({ workspace = 3 }))
|
||||
|
||||
-- NOTE: the trailing "&&" here is a stray leftover from the original .conf (dangling, does nothing) — ported as-is
|
||||
hl.exec_cmd("/usr/bin/Plexamp.AppImage &&")
|
||||
hl.exec_cmd("plexamp") -- plexamp-bin (AUR)
|
||||
hl.exec_cmd("sleep 3 && vesktop")
|
||||
hl.dispatch(hl.dsp.focus({ workspace = 1 }))
|
||||
hl.exec_cmd("bitwarden-desktop --ozone-platform-hint=auto --silent")
|
||||
|
||||
@@ -8,7 +8,7 @@ general {
|
||||
lock_cmd = pidof hyprlock || hyprlock # runs hyprlock if it is not already running (this is always run when "loginctl lock-session" is called)
|
||||
# unlock_cmd = killall hyprlock # kills hyprlock when unlocking (this is always run when "loginctl unlock-session" is called)
|
||||
before_sleep_cmd = loginctl lock-session # ensures that the session is locked before going to sleep
|
||||
after_sleep_cmd = hyprctl dispatch dpms on # turn of screen after sleep (not strictly necessary, but just in case)
|
||||
after_sleep_cmd = hyprctl dispatch 'hl.dsp.dpms({action = "on"})' # turn of screen after sleep (not strictly necessary, but just in case)
|
||||
ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam)
|
||||
}
|
||||
|
||||
@@ -16,8 +16,8 @@ general {
|
||||
# (disabled by default)
|
||||
# listener {
|
||||
# timeout = 30 # 30 seconds
|
||||
# on-timeout = pidof hyprlock && hyprctl dispatch dpms off # turns off the screen if hyprlock is active
|
||||
# on-resume = pidof hyprlock && hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
|
||||
# on-timeout = pidof hyprlock && hyprctl dispatch 'hl.dsp.dpms({action = "off"})' # turns off the screen if hyprlock is active
|
||||
# on-resume = pidof hyprlock && hyprctl dispatch 'hl.dsp.dpms({action = "on"})' # command to run when activity is detected after timeout has fired.
|
||||
# }
|
||||
|
||||
# Warn
|
||||
@@ -38,8 +38,8 @@ listener {
|
||||
# (disabled by default)
|
||||
# listener {
|
||||
# timeout = 630 # 10.5 min
|
||||
# on-timeout = hyprctl dispatch dpms off # command to run when timeout has passed
|
||||
# on-resume = hyprctl dispatch dpms on # command to run when activity is detected after timeout has fired.
|
||||
# on-timeout = hyprctl dispatch 'hl.dsp.dpms({action = "off"})' # command to run when timeout has passed
|
||||
# on-resume = hyprctl dispatch 'hl.dsp.dpms({action = "on"})' # command to run when activity is detected after timeout has fired.
|
||||
# }
|
||||
|
||||
# Suspend # disabled by default
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
# Generated by HyprMod
|
||||
|
||||
general:allow_tearing = 1
|
||||
general:snap:enabled = 0
|
||||
# vrr forced off globally: the per-monitor vrr,0 flag below does NOT override this when
|
||||
# misc:vrr is 1 (tested live on Hyprland 0.56.2 — DP-2 stayed vrr:true until this global
|
||||
# was changed). DP-2 (Acer VG240Y S) flickers under VRR when idle in fullscreen (mouse
|
||||
# stationary -> no repaint damage -> frame delivery stalls near the panel's VRR floor).
|
||||
# The other two monitors don't negotiate VRR at all, so this has no effect on them.
|
||||
misc:vrr = 0
|
||||
|
||||
# Monitors
|
||||
monitor = DP-2, 1920x1080@165.00Hz, 0x0, 1, bitdepth, 10, cm, wide, vrr, 0
|
||||
|
||||
# Keybinds
|
||||
unbind = SUPER SHIFT, Print
|
||||
unbind = SUPER, up
|
||||
bind = SUPER, Print, exec, hyprshot -o $HOME/Pictures/Screenshots-Linux -m region
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER SHIFT, Print, exec, hyprshot -o $HOME/Pictures/Screenshots-Linux -m window
|
||||
@@ -1,34 +0,0 @@
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# always refer to Hyprland wiki
|
||||
# https://wiki.hyprland.org/
|
||||
|
||||
# Initial boot script enable to apply initial wallpapers, theming, new settings etc.
|
||||
# suggest not to change this or delete this including deleting referrence file in ~/.config/hypr/.initial_startup_done
|
||||
# as long as the referrence file is present, this initial-boot.sh will not execute
|
||||
exec-once = $HOME/.config/hypr/initial-boot.sh
|
||||
|
||||
# ## This is where you want to start tinkering
|
||||
$UserConfigs = $HOME/.config/hypr/UserConfigs # User Configs directory path
|
||||
|
||||
source= $UserConfigs/Startup_Apps.conf # put your start-up packages on this file
|
||||
|
||||
source= $UserConfigs/ENVariables.conf # Environment variables to load
|
||||
|
||||
source= $UserConfigs/WindowRules.conf # all about Hyprland Window Rules and Layer Rules
|
||||
|
||||
source= $UserConfigs/UserDecorations.conf # Decorations config file
|
||||
|
||||
source= $UserConfigs/UserAnimations.conf # Animation config file
|
||||
|
||||
source= $UserConfigs/Keybinds.conf # Put your own keybinds here
|
||||
|
||||
source= $UserConfigs/UserSettings.conf # Main Hyprland Settings.
|
||||
|
||||
# nwg-displays
|
||||
source= $UserConfigs/monitors.conf
|
||||
source= $UserConfigs/workspaces.conf
|
||||
|
||||
exec = gsettings set org.gnome.desktop.interface cursor-theme Future-black Cursors
|
||||
|
||||
# HyprMod managed settings
|
||||
source = $HOME/.config/hypr/hyprland-gui.conf
|
||||
@@ -35,7 +35,7 @@ require("layout.workspaces")
|
||||
-- only fires once at actual compositor start — close enough for a one-shot gsettings
|
||||
-- call, but worth knowing if you relied on the reload-time re-apply.
|
||||
hl.on("hyprland.start", function()
|
||||
hl.exec_cmd("gsettings set org.gnome.desktop.interface cursor-theme Future-black Cursors")
|
||||
hl.exec_cmd("gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Classic && gsettings set org.gnome.desktop.interface cursor-size 24")
|
||||
end)
|
||||
|
||||
-- HyprMod managed settings
|
||||
|
||||
@@ -113,7 +113,7 @@ label {
|
||||
text = cmd[update:1000] echo "$(~/.config/hypr/hyprlock/Scripts/songdetail.sh)"
|
||||
color = rgba(255, 255, 255, 0.6)
|
||||
font_size = 18
|
||||
font_family = JetBrains Mono Nerd, SF Pro Display Bold
|
||||
font_family = JetBrainsMono Nerd Font, SF Pro Display Bold
|
||||
position = 0, 90
|
||||
halign = center
|
||||
valign = bottom
|
||||
@@ -221,7 +221,7 @@ label {
|
||||
text = cmd[update:1000] echo "$(~/.config/hypr/hyprlock/Scripts/songdetail.sh)"
|
||||
color = rgba(255, 255, 255, 0.6)
|
||||
font_size = 28
|
||||
font_family = JetBrains Mono Nerd, SF Pro Display Bold
|
||||
font_family = JetBrainsMono Nerd Font, SF Pro Display Bold
|
||||
position = 0, 90
|
||||
halign = center
|
||||
valign = bottom
|
||||
|
||||
Binary file not shown.
@@ -13,7 +13,7 @@ kvantum_theme="catppuccin-mocha-blue"
|
||||
color_scheme="prefer-dark"
|
||||
gtk_theme="Material-DeepOcean-BL"
|
||||
icon_theme="Papirus-Dark"
|
||||
cursor_theme="Moga-Cursor"
|
||||
cursor_theme="Bibata-Modern-Classic"
|
||||
|
||||
# Check if a marker file exists.
|
||||
if [ ! -f "$HOME/.config/hypr/.initial_startup_done" ]; then
|
||||
|
||||
@@ -31,7 +31,7 @@ hl.bind(mainMod .. " + M", hl.dsp.exec_cmd("fdm")) -- Free Download Manager
|
||||
hl.bind(mainMod .. " + W", hl.dsp.exec_cmd("waypaper")) -- Wayland Wallpaper Setter
|
||||
hl.bind(mainMod .. " + L", hl.dsp.exec_cmd("hyprlock")) -- Screen Locker
|
||||
hl.bind(mainMod .. " + DELETE", hl.dsp.exec_cmd("~/.config/rofi/powermenu/type-2/powermenu.sh")) -- Power Menu
|
||||
hl.bind(mainMod .. " + S", hl.dsp.exec_cmd("cd /home/thomas/hyprmod && uv run hyprmod")) -- Hyprmod - A Hyprland settings manager (if installed)
|
||||
hl.bind(mainMod .. " + S", hl.dsp.exec_cmd("hyprmod")) -- Hyprmod - A Hyprland settings manager (AUR: hyprmod)
|
||||
hl.bind(mainMod .. " + SHIFT + R", hl.dsp.exec_cmd(scriptsDir .. "/Refresh.sh")) -- Refresh waybar, swaync, rofirrr
|
||||
hl.bind(mainMod .. " + N", hl.dsp.exec_cmd("swaync-client -t -sw")) -- swayNC notification panel
|
||||
|
||||
@@ -40,8 +40,9 @@ hl.bind(mainMod .. " + SHIFT + F", hl.dsp.window.fullscreen({ mode = "fullscreen
|
||||
hl.bind(mainMod .. " + SHIFT + SPACE", hl.dsp.window.float({ action = "toggle" })) -- Float Mode
|
||||
|
||||
-- Desktop zooming or magnifier
|
||||
hl.bind(mainMod .. " + ALT + mouse_down", hl.dsp.exec_cmd([[hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}')"]]))
|
||||
hl.bind(mainMod .. " + ALT + mouse_up", hl.dsp.exec_cmd([[hyprctl keyword cursor:zoom_factor "$(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}')"]]))
|
||||
-- (`hyprctl keyword` is rejected by the Lua config — "keyword can't work with non-legacy parsers" — so set it via eval)
|
||||
hl.bind(mainMod .. " + ALT + mouse_down", hl.dsp.exec_cmd([[hyprctl eval "hl.config({ cursor = { zoom_factor = $(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor * 2.0}') } })"]]))
|
||||
hl.bind(mainMod .. " + ALT + mouse_up", hl.dsp.exec_cmd([[hyprctl eval "hl.config({ cursor = { zoom_factor = $(hyprctl getoption cursor:zoom_factor | awk 'NR==1 {factor = $2; if (factor < 1) {factor = 1}; print factor / 2.0}') } })"]]))
|
||||
|
||||
-- Waybar / Bar related
|
||||
hl.bind(mainMod .. " + CTRL + ALT + B", hl.dsp.exec_cmd("pkill -SIGUSR1 waybar")) -- Toggle hide/show waybar
|
||||
@@ -150,9 +151,6 @@ hl.bind(mainMod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true }) --
|
||||
-- Laptop specific keybinds
|
||||
--------------------------------------------------------------------------------------
|
||||
|
||||
-- for disabling Touchpad. hyprctl devices to get device name.
|
||||
local touchpadDevice = "asue1209:00-04f3:319f-touchpad"
|
||||
|
||||
hl.bind("XF86KbdBrightnessDown", hl.dsp.exec_cmd(scriptsDir .. "/BrightnessKbd.sh --dec"), { repeating = true }) -- decrease keyboard brightness
|
||||
hl.bind("XF86KbdBrightnessUp", hl.dsp.exec_cmd(scriptsDir .. "/BrightnessKbd.sh --inc"), { repeating = true }) -- increase keyboard brightness
|
||||
hl.bind("XF86Launch1", hl.dsp.exec_cmd("rog-control-center")) -- ASUS Armory crate button
|
||||
@@ -160,7 +158,7 @@ hl.bind("XF86Launch3", hl.dsp.exec_cmd("asusctl led-mode -n")) -- FN+F4 Switch k
|
||||
hl.bind("XF86Launch4", hl.dsp.exec_cmd("asusctl profile -n")) -- FN+F5 change of fan profiles (Quiet, Balance, Performance)
|
||||
hl.bind("XF86MonBrightnessDown", hl.dsp.exec_cmd(scriptsDir .. "/Brightness.sh --dec"), { repeating = true }) -- decrease monitor brightness
|
||||
hl.bind("XF86MonBrightnessUp", hl.dsp.exec_cmd(scriptsDir .. "/Brightness.sh --inc"), { repeating = true }) -- increase monitor brightness
|
||||
hl.bind("XF86TouchpadToggle", hl.dsp.exec_cmd(scriptsDir .. "/TouchPad.sh")) -- disable touchpad
|
||||
hl.bind("XF86TouchpadToggle", hl.dsp.exec_cmd(scriptsDir .. "/TouchPad.sh")) -- toggle touchpad (finds the device itself)
|
||||
|
||||
-- Screenshot keybindings using F6 (no PrintSrc button)
|
||||
-- hl.bind(mainMod .. " + F6", hl.dsp.exec_cmd(scriptsDir .. "/ScreenShot.sh --now")) -- screenshot
|
||||
@@ -168,8 +166,3 @@ hl.bind("XF86TouchpadToggle", hl.dsp.exec_cmd(scriptsDir .. "/TouchPad.sh")) --
|
||||
-- hl.bind(mainMod .. " + CTRL + F6", hl.dsp.exec_cmd(scriptsDir .. "/ScreenShot.sh --in5")) -- screenshot (5 secs delay)
|
||||
-- hl.bind(mainMod .. " + ALT + F6", hl.dsp.exec_cmd(scriptsDir .. "/ScreenShot.sh --in10")) -- screenshot (10 secs delay)
|
||||
-- hl.bind("ALT + F6", hl.dsp.exec_cmd(scriptsDir .. "/ScreenShot.sh --active")) -- screenshot (active window only)
|
||||
|
||||
hl.device({
|
||||
name = touchpadDevice,
|
||||
enabled = true,
|
||||
})
|
||||
|
||||
@@ -98,7 +98,6 @@ hl.window_rule({ name = "windowrule-46", tag = "+settings", match = { class = "^
|
||||
-- Custom rule
|
||||
hl.window_rule({ name = "windowrule-47", tile = true, match = { class = "^([Cc]hromium)$" } })
|
||||
hl.window_rule({ name = "windowrule-48", size = "monitor_w*0.25 monitor_h*0.55", float = true, match = { class = "^(com.network.manager)$" } })
|
||||
hl.window_rule({ name = "windowrule-49", workspace = "special:nyx", match = { class = "^([Vv]esktop|[Dd]iscord|[Ss]potify)$" } })
|
||||
hl.window_rule({ name = "windowrule-255", size = "monitor_w*0.75 monitor_h*0.80", float = true, match = { class = "^([Bb]itwarden)$" } })
|
||||
-- System updater terminal (quickshell/scripts/update-system.sh) — float + center it instead of
|
||||
-- tiling into the current workspace. Matches the title the script launches it with, so it works
|
||||
@@ -139,11 +138,8 @@ hl.window_rule({
|
||||
-- hl.window_rule({ idle_inhibit = "fullscreen", match = { title = "^(*)$" } })
|
||||
hl.window_rule({ name = "windowrule-60", idle_inhibit = "fullscreen", match = { fullscreen = true } })
|
||||
|
||||
-- Discord to workspace 3
|
||||
-- NOTE: these two used the old single-line windowrule syntax in the source .conf (match packed
|
||||
-- oddly with the rule); windowrule-49 above already sends the same apps to special:nyx, so this
|
||||
-- looks like a pre-existing conflict in the original config rather than something introduced here —
|
||||
-- ported literally, last-defined-wins as before.
|
||||
-- Discord / Spotify / Plexamp to workspace 3 (the portrait LG). An older rule also sent
|
||||
-- Vesktop/Discord/Spotify to special:nyx; this one always won, so that rule was removed.
|
||||
hl.window_rule({ workspace = "3", match = { class = "^([Vv]esktop|[Dd]iscord|[Ss]potify|[Pp]lexamp)$" } })
|
||||
hl.window_rule({ size = "20% 20%", match = { class = "^([Pp]lexamp)" } })
|
||||
|
||||
|
||||
31
dotfiles/.config/hypr/presets/anim-hyprflux.lua
Normal file
31
dotfiles/.config/hypr/presets/anim-hyprflux.lua
Normal file
@@ -0,0 +1,31 @@
|
||||
-- HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
-- name "HyprFlux (default)"
|
||||
-- The animation set that shipped as appearance/animations.lua (ported from
|
||||
-- UserConfigs/UserAnimations.conf). Selected by default; Super+Shift+A switches.
|
||||
|
||||
hl.config({
|
||||
animations = {
|
||||
enabled = true,
|
||||
},
|
||||
})
|
||||
|
||||
hl.curve("wind", { type = "bezier", points = { { 0.05, 0.9 }, { 0.1, 1.05 } } })
|
||||
hl.curve("winIn", { type = "bezier", points = { { 0.1, 1.1 }, { 0.1, 1.1 } } })
|
||||
hl.curve("winOut", { type = "bezier", points = { { 0.3, -0.3 }, { 0, 1 } } })
|
||||
hl.curve("liner", { type = "bezier", points = { { 1, 1 }, { 1, 1 } } })
|
||||
hl.curve("overshot", { type = "bezier", points = { { 0.05, 0.9 }, { 0.1, 1.05 } } })
|
||||
hl.curve("smoothOut", { type = "bezier", points = { { 0.5, 0 }, { 0.99, 0.99 } } })
|
||||
hl.curve("smoothIn", { type = "bezier", points = { { 0.5, -0.5 }, { 0.68, 1.5 } } })
|
||||
|
||||
hl.animation({ leaf = "windows", enabled = true, speed = 6, bezier = "wind", style = "slide" })
|
||||
hl.animation({ leaf = "windowsIn", enabled = true, speed = 5, bezier = "winIn", style = "slide" })
|
||||
hl.animation({ leaf = "windowsOut", enabled = true, speed = 3, bezier = "smoothOut", style = "slide" })
|
||||
hl.animation({ leaf = "windowsMove", enabled = true, speed = 5, bezier = "wind", style = "slide" })
|
||||
hl.animation({ leaf = "border", enabled = true, speed = 1, bezier = "liner" })
|
||||
hl.animation({ leaf = "borderangle", enabled = true, speed = 100, bezier = "liner", style = "loop" }) -- used by rainbow borders and rotating colors; speed clamped from 180 -> Lua hl.animation caps speed at 100
|
||||
hl.animation({ leaf = "fade", enabled = true, speed = 3, bezier = "smoothOut" })
|
||||
hl.animation({ leaf = "workspaces", enabled = true, speed = 5, bezier = "overshot" })
|
||||
|
||||
-- animations for -git or version >0.42.0
|
||||
hl.animation({ leaf = "workspacesIn", enabled = true, speed = 5, bezier = "winIn", style = "slide" })
|
||||
hl.animation({ leaf = "workspacesOut", enabled = true, speed = 5, bezier = "winOut", style = "slide" })
|
||||
@@ -1,31 +1,38 @@
|
||||
#!/bin/bash
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# For applying Animations from different users
|
||||
# Animation preset picker (Super+Shift+A).
|
||||
# Lists ~/.config/hypr/presets/anim-*.lua by their original HyprFlux preset name
|
||||
# (the "Ported from animations/<name>.conf" line, else `-- name "..."`), then
|
||||
# points appearance/animations.lua's require() at the chosen one and reloads.
|
||||
|
||||
iDIR="$HOME/.config/swaync/images"
|
||||
presets_dir="$HOME/.config/hypr/presets"
|
||||
active_file="$HOME/.config/hypr/appearance/animations.lua"
|
||||
rofi_theme="$HOME/.config/rofi/launchers/type-4/style-4.rasi"
|
||||
|
||||
# Check if rofi is already running
|
||||
if pidof rofi >/dev/null; then
|
||||
pkill rofi
|
||||
fi
|
||||
|
||||
# Variables
|
||||
iDIR="$HOME/.config/swaync/images"
|
||||
SCRIPTSDIR="$HOME/.config/hypr/scripts"
|
||||
animations_dir="$HOME/.config/hypr/animations"
|
||||
UserConfigs="$HOME/.config/hypr/UserConfigs"
|
||||
rofi_theme="$HOME/.config/rofi/config-Animations.rasi"
|
||||
msg='❗NOTE:❗ This will copy animations into UserAnimations.conf'
|
||||
# list of animation files, sorted alphabetically with numbers first
|
||||
animations_list=$(find -L "$animations_dir" -maxdepth 1 -type f | sed 's/.*\///' | sed 's/\.conf$//' | sort -V)
|
||||
# "Display name<TAB>module" per preset, sorted by name
|
||||
list=$(for f in "$presets_dir"/anim-*.lua; do
|
||||
module=$(basename "$f" .lua)
|
||||
name=$(sed -n 's/^-- Ported from animations\/\(.*\)\.conf.*/\1/p' "$f" | head -n1)
|
||||
[[ -z "$name" ]] && name=$(sed -n 's/^-- name "\(.*\)"$/\1/p' "$f" | head -n1)
|
||||
printf '%s\t%s\n' "${name:-$module}" "$module"
|
||||
done | sort -f)
|
||||
|
||||
# Rofi Menu
|
||||
chosen_file=$(echo "$animations_list" | rofi -i -dmenu -config $rofi_theme -mesg "$msg")
|
||||
current=$(sed -n 's/^require("presets\.\(.*\)")$/\1/p' "$active_file")
|
||||
current_name=$(awk -F'\t' -v m="$current" '$2 == m { print $1 }' <<<"$list")
|
||||
|
||||
# Check if a file was selected
|
||||
if [[ -n "$chosen_file" ]]; then
|
||||
full_path="$animations_dir/$chosen_file.conf"
|
||||
cp "$full_path" "$UserConfigs/UserAnimations.conf"
|
||||
notify-send -u low -i "$iDIR/ja.png" "$chosen_file" "Hyprland Animation Loaded"
|
||||
fi
|
||||
chosen=$(cut -f1 <<<"$list" | rofi -i -dmenu -p "Animations" \
|
||||
-theme "$rofi_theme" \
|
||||
-theme-str 'mainbox { children: [ "inputbar", "message", "listview" ]; }' \
|
||||
-mesg "Current: ${current_name:-$current}")
|
||||
[[ -z "$chosen" ]] && exit 0
|
||||
|
||||
sleep 1
|
||||
"$SCRIPTSDIR/RefreshNoWaybar.sh"
|
||||
module=$(awk -F'\t' -v n="$chosen" '$1 == n { print $2; exit }' <<<"$list")
|
||||
[[ -z "$module" ]] && exit 1
|
||||
|
||||
sed -i "s/^require(\"presets\.[^\"]*\")$/require(\"presets.$module\")/" "$active_file"
|
||||
hyprctl reload >/dev/null
|
||||
notify-send -u low -i "$iDIR/note.png" "$chosen" "Hyprland animation loaded"
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
# Clipboard Manager. This script uses cliphist, rofi, and wl-copy.
|
||||
|
||||
# Variables
|
||||
rofi_theme="$HOME/.config/rofi/config-clipboard.rasi"
|
||||
rofi_theme="$HOME/.config/rofi/launchers/type-4/style-4.rasi"
|
||||
msg='👀 **note** CTRL DEL = cliphist del (entry) or ALT DEL - cliphist wipe (all)'
|
||||
# Actions:
|
||||
# CTRL Del to delete an entry
|
||||
@@ -19,7 +19,9 @@ while true; do
|
||||
rofi -i -dmenu \
|
||||
-kb-custom-1 "Control-Delete" \
|
||||
-kb-custom-2 "Alt-Delete" \
|
||||
-config $rofi_theme < <(cliphist list) \
|
||||
-theme "$rofi_theme" \
|
||||
-theme-str 'mainbox { children: [ "inputbar", "message", "listview" ]; }' \
|
||||
< <(cliphist list) \
|
||||
-mesg "$msg"
|
||||
)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# Scripts for refreshing waybar, rofi, swaync
|
||||
# Scripts for refreshing quickshell, rofi, swaync (Waybar is retired — not restarted here)
|
||||
|
||||
SCRIPTSDIR=$HOME/.config/hypr/scripts
|
||||
UserScripts=$HOME/.config/hypr/UserScripts
|
||||
@@ -15,31 +15,24 @@ file_exists() {
|
||||
}
|
||||
|
||||
# Kill already running processes
|
||||
_ps=(waybar rofi swaync ags)
|
||||
_ps=(rofi swaync ags)
|
||||
for _prs in "${_ps[@]}"; do
|
||||
if pidof "${_prs}" >/dev/null; then
|
||||
pkill "${_prs}"
|
||||
fi
|
||||
done
|
||||
|
||||
# ensure waybar fully reloads
|
||||
killall -SIGUSR2 waybar
|
||||
|
||||
# quit ags & relaunch ags
|
||||
#ags -q && ags &
|
||||
|
||||
# quit quickshell & relaunch quickshell
|
||||
pkill qs && qs &
|
||||
pkill -x qs; qs &
|
||||
|
||||
# some process to kill
|
||||
for pid in $(pidof waybar rofi swaync ags swaybg); do
|
||||
for pid in $(pidof rofi swaync ags swaybg); do
|
||||
kill -SIGUSR1 "$pid"
|
||||
done
|
||||
|
||||
#Restart waybar
|
||||
sleep 1
|
||||
waybar &
|
||||
|
||||
# relaunch swaync
|
||||
sleep 0.5
|
||||
swaync > /dev/null 2>&1 &
|
||||
|
||||
@@ -1,32 +1,30 @@
|
||||
#!/bin/bash
|
||||
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
||||
# For disabling touchpad.
|
||||
# Edit the Touchpad_Device on ~/.config/hypr/UserConfigs/Laptops.conf according to your system
|
||||
# use hyprctl devices to get your system touchpad device name
|
||||
# source https://github.com/hyprwm/Hyprland/discussions/4283?sort=new#discussioncomment-8648109
|
||||
# Toggles the laptop touchpad (XF86TouchpadToggle).
|
||||
# Finds the touchpad by name in `hyprctl devices`, so it works on any laptop
|
||||
# without hard-coding the device. The Lua config rejects `hyprctl keyword`,
|
||||
# so the device is switched with hl.device() through `hyprctl eval`.
|
||||
|
||||
notif="$HOME/.config/swaync/images/ja.png"
|
||||
notif="$HOME/.config/swaync/images/note.png"
|
||||
STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
|
||||
|
||||
export STATUS_FILE="$XDG_RUNTIME_DIR/touchpad.status"
|
||||
device=$(hyprctl devices -j | jq -r '[.mice[].name | select(test("touchpad"; "i"))][0] // empty')
|
||||
if [ -z "$device" ]; then
|
||||
notify-send -u low -i "$notif" "Touchpad" "No touchpad found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
enable_touchpad() {
|
||||
printf "true" >"$STATUS_FILE"
|
||||
notify-send -u low -i $notif " Enabling" " touchpad"
|
||||
hyprctl keyword '$TOUCHPAD_ENABLED' "true" -r
|
||||
}
|
||||
|
||||
disable_touchpad() {
|
||||
printf "false" >"$STATUS_FILE"
|
||||
notify-send -u low -i $notif " Disabling" " touchpad"
|
||||
hyprctl keyword '$TOUCHPAD_ENABLED' "false" -r
|
||||
}
|
||||
|
||||
if ! [ -f "$STATUS_FILE" ]; then
|
||||
enable_touchpad
|
||||
set_touchpad() {
|
||||
printf '%s' "$1" >"$STATUS_FILE"
|
||||
hyprctl eval "hl.device({ name = \"$device\", enabled = $1 })" >/dev/null
|
||||
if [ "$1" = true ]; then
|
||||
notify-send -u low -i "$notif" " Enabling" " touchpad"
|
||||
else
|
||||
if [ $(cat "$STATUS_FILE") = "true" ]; then
|
||||
disable_touchpad
|
||||
elif [ $(cat "$STATUS_FILE") = "false" ]; then
|
||||
enable_touchpad
|
||||
notify-send -u low -i "$notif" " Disabling" " touchpad"
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$(cat "$STATUS_FILE" 2>/dev/null)" = "false" ]; then
|
||||
set_touchpad true
|
||||
else
|
||||
set_touchpad false
|
||||
fi
|
||||
|
||||
@@ -119,7 +119,7 @@ Item {
|
||||
{ label: "Lock", icon: "lock", cmd: ["hyprlock"] },
|
||||
{ label: "Suspend", icon: "bedtime", cmd: ["systemctl", "suspend"] },
|
||||
{ label: "Hibernate", icon: "ac_unit", cmd: ["systemctl", "hibernate"] },
|
||||
{ label: "Log out", icon: "logout", cmd: ["hyprctl", "dispatch", "exit"] },
|
||||
{ label: "Log out", icon: "logout", cmd: ["hyprctl", "dispatch", "hl.dsp.exit()"] },
|
||||
{ label: "Reboot", icon: "restart_alt", cmd: ["systemctl", "reboot"] },
|
||||
{ label: "Shut down", icon: "power_settings_new", cmd: ["systemctl", "poweroff"] }
|
||||
]
|
||||
|
||||
@@ -40,9 +40,12 @@ if ! command -v stow &> /dev/null; then
|
||||
fi
|
||||
|
||||
info "Applying dotfiles with stow..."
|
||||
# Real dirs first, or stow links the whole folder into the repo (see bootstrap.sh)
|
||||
mkdir -p "$HOME/.local/share/fonts"
|
||||
# -R restows: drops links for files removed from the repo and adds new ones.
|
||||
if stow -R -d "$DOTFILES" -t "$HOME" dotfiles; then
|
||||
info "Dotfiles applied."
|
||||
fc-cache "$HOME/.local/share/fonts" >/dev/null 2>&1
|
||||
else
|
||||
warn "stow hit a conflict — nothing was changed. Fix it and re-run:"
|
||||
warn " stow -R -d $DOTFILES -t ~ dotfiles"
|
||||
|
||||
@@ -56,15 +56,15 @@
|
||||
"actions": [
|
||||
{
|
||||
"label": "",
|
||||
"command": "bash -c $HOME/.config/hypr/scripts/Wlogout.sh"
|
||||
"command": "bash -c $HOME/.config/rofi/powermenu/type-2/powermenu.sh"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "bash -c $HOME/.config/hypr/scripts/LockScreen.sh"
|
||||
"command": "loginctl lock-session"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
"command": "hyprctl dispatch exit"
|
||||
"command": "hyprctl dispatch 'hl.dsp.exit()'"
|
||||
},
|
||||
{
|
||||
"label": "",
|
||||
|
||||
@@ -104,6 +104,7 @@ thunar-archive-plugin # Adds archive operations to the Thunar file
|
||||
thunar-media-tags-plugin # Adds special features for media files to the Thunar File Manager
|
||||
thunar-shares-plugin # Thunar plugin to quickly share a folder using Samba without requiring root access
|
||||
thunar-volman # Automatic management of removable drives and media for Thunar
|
||||
ttf-cascadia-code-nerd # Patched font Cascadia Code (CaskaydiaCove) — Quickshell bar text and icons
|
||||
ttf-dejavu # Font family based on the Bitstream Vera Fonts with a wider range of characters
|
||||
ttf-iosevka-nerd # Patched font Iosevka from nerd fonts library
|
||||
ttf-jetbrains-mono # Typeface for developers, by JetBrains
|
||||
@@ -146,6 +147,7 @@ openssh # SSH client/server (sshd service, git over s
|
||||
avahi # mDNS daemon (avahi-daemon service, used by nss-mdns)
|
||||
|
||||
[aur]
|
||||
bibata-cursor-theme-bin # Bibata cursors (Bibata-Modern-Classic, used everywhere)
|
||||
bitwarden-bin # A secure and free password manager for all of your devices.
|
||||
# caelestia-shell # The desktop shell for the Caelestia dotfiles !! alternative quickshell config, not used by your shell.qml
|
||||
flutter-bin # Cross platform widget toolkit for Dart (monolithic)
|
||||
|
||||
Reference in New Issue
Block a user