diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index eb4b3e4..d3f0877 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -24,7 +24,7 @@ monitor= ,preferred,auto,auto # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: -exec-once = swaync & elephant +exec-once = waybar & swaync & elephant ############################# ### ENVIRONMENT VARIABLES ### @@ -158,7 +158,7 @@ master { # https://wiki.hyprland.org/Configuring/Variables/#misc misc { - force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers + force_default_wallpaper = 1 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( } @@ -205,7 +205,7 @@ device { # Example windowrule # windowrule = float,class:^(kitty)$,title:^(kitty)$ -# + windowrulev2 = float,class:^(float)$ #windowrule = float,title:InstallWebApp windowrulev2 = size 800 600,class:^(float)$,title:^(Install Web App)$ @@ -217,5 +217,7 @@ windowrule = suppressevent maximize, class:.* # Fix some dragging issues with XWayland windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 +workspace = special:hidden, invisible + # Include the keybinds file. source = ~/.config/hypr/keybinds.conf diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf index fae0fbb..276d8aa 100644 --- a/hypr/hyprlock.conf +++ b/hypr/hyprlock.conf @@ -25,17 +25,20 @@ general { # } # } +# NOTE: Currently enabling animations and background 'path = screenshot' causes hyprlock +# to not work, so they are disabled. animations { - enabled = true + enabled = false bezier = linear, 1, 1, 0, 0 animation = fadeIn, 1, 5, linear animation = fadeOut, 1, 5, linear - animation = inputFieldDots, 1, 2, linear + animaution = inputFieldDots, 1, 2, linear } background { - monitor = eDP-1 - path = /usr/share/hypr/lockdead2.png + monitor = + #path = screenshot + path = ~/.config/hypr/wallpaper.png blur_passes = 3 } diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf new file mode 100644 index 0000000..70615a3 --- /dev/null +++ b/hypr/hyprpaper.conf @@ -0,0 +1,3 @@ +preload = /home/michael/.config/hypr/wallpaper.png +wallpaper = eDP-1,/home/michael/.config/hypr/wallpaper.png +splash = true diff --git a/hypr/keybinds.conf b/hypr/keybinds.conf index 096761e..4c39ba4 100644 --- a/hypr/keybinds.conf +++ b/hypr/keybinds.conf @@ -18,9 +18,9 @@ $fileManager = $terminal -e yazi $fileBrowser = nautilus $menu = walker $pwa = chromium --profile-directory=Default +$launch = gtk-launch $btop = $terminal -e btop -$chatgpt = $pwa --app-id=cadlkienfkclaiaibeoongdcgmdikeeg $config = $terminal -e ~/.local/share/scripts/tmux-sessionator ~/.config $email = $pwa --app-id=jnpecgipniidlgicjocehkhajgdnjekh # proton mail $excalidraw = $pwa --app-id=fehpfgkaiahomgjlkjleaolhifmngapb @@ -34,13 +34,15 @@ $youtube = $pwa --app-id=agimnkijcaahngcdmfeangaknmldooml # Apps bind = $mainMod, Space, exec, $menu # launcher (set above) bind = $mainMod, Return, exec, $terminal -bind = $mainMod, A, exec, $chatgpt +bind = $mainMod, A, exec, $launch ChatGPT bind = $mainMod, B, exec, $browser -bind = $mainMod Shift, B, exec, $btop +bind = $mainMod Shift, B, exec, $browser --private-window bind = $mainMod, C, exec, $config bind = $mainMod, D, exec, $excalidraw +bind = $mainMod Shift, D, exec, ~/.local/bin/toggle-desktop bind = $mainMod, E, exec, $email bind = $mainMod, F, exec, $fileManager +bind = $mainMod, K, exec, $launch Komodo bind = $mainMod Shift, F, exec, $fileBrowser bind = $mainMod Shift, G, exec, $gitea bind = $mainMod, N, exec, $neovim @@ -48,9 +50,10 @@ bind = $mainMod, P, exec, $protonPass bind = $mainMod, Y, exec, $youtube bind = $mainMod, W, killactive, -bind = $mainMod Shift, M, exit, +bind = $mainMod Shift, L, exec, hyprlock +# TODO: change modifier key. bind = $mainMod, M, exec, ~/.local/bin/toggle-waybar -bind = $mainMod, V, togglefloating, +bind = $mainMod, V, togglefloating #bind = $mainMod, P, pseudo, # dwindle #bind = $mainMod, J, togglesplit, # dwindle # @@ -58,6 +61,10 @@ bind = $mainMod, V, togglefloating, bind = $mainMod Shift Alt, 3, exec, hyprshot -m window -o ~/Pictures bind = $mainMod Shift Alt, 4, exec, hyprshot -m region -o ~/Pictures +bind = Ctrl, M, fullscreen +bind = Ctrl, F, exec, hyprctl dispatch togglefloating \ + && hyprctl dispatch centerwindow + # Move focus with mainMod + arrow keys bind = $mainMod, H, movefocus, l bind = $mainMod, L, movefocus, r @@ -121,7 +128,7 @@ bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioPrev, exec, playerctl previous # Shut off laptop monitor when lid is closed and on when lid is open. -#bindl = , switch:off:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, disable\" -#bindl = , switch:on:Lid Switch,exec,hyprctl keyword monitor \"eDP-1, preferred, auto, auto\" +bindl = , switch:on:Lid Switch, exec, hyprctl dispatch dpms off +bindl = , switch:off:Lid Switch, exec, hyprctl dispatch dpms on diff --git a/hypr/wallpaper.png b/hypr/wallpaper.png new file mode 100644 index 0000000..34b324e Binary files /dev/null and b/hypr/wallpaper.png differ diff --git a/scripts/arch/toggle-desktop b/scripts/arch/toggle-desktop new file mode 100755 index 0000000..cf5b8da --- /dev/null +++ b/scripts/arch/toggle-desktop @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +# Workspace to hide everything in +HIDE_WS="special:hidden" + +# File to store original workspace ID +STATE_FILE="/tmp/hypr_hide_state" + +# Get current workspace ID +CUR_WS=$(hyprctl -j activeworkspace | jq -r '.id') + +# Check if we're currently hidden +if [[ -f "$STATE_FILE" ]]; then + # Restore windows + ORIG_WS=$(cat "$STATE_FILE") + for win in $(hyprctl -j clients | jq -r '.[] | select(.workspace.name | contains("$HIDE_WS")) | .address'); do + hyprctl dispatch movetoworkspace "$ORIG_WS,address:$win" + hyprctl dispatch workspace "$ORIG_WS" + done + rm "$STATE_FILE" +else + # Hide all windows (move to special hidden workspace) + for win in $(hyprctl -j clients | jq -r ".[] | select(.workspace.id == $CUR_WS) | .address"); do + hyprctl dispatch movetoworkspace "$HIDE_WS,address:$win" + hyprctl dispatch togglespecialworkspace "$HIDE_WS" + done + rm "$STATE_FILE" + echo "$CUR_WS" >"$STATE_FILE" +fi diff --git a/zsh/config/.zshenv b/zsh/config/.zshenv index f686905..c1786f5 100755 --- a/zsh/config/.zshenv +++ b/zsh/config/.zshenv @@ -17,6 +17,7 @@ export TERM=xterm-256color export EDITOR=nvim export VISUAL=nvim export EDITOR_PREFIX=nvim +export MANPAGER="bat" #export VIMINIT='source $MYVIMRC' #export MYVIMRC="$HOME/.vim/vimrc" #export NVIM_APPNAME="m-housh" diff --git a/zsh/config/.zshrc b/zsh/config/.zshrc index fcc23fd..7ee9434 100755 --- a/zsh/config/.zshrc +++ b/zsh/config/.zshrc @@ -61,14 +61,15 @@ zle -N down-line-or-beginning-search autoload -Uz colors && colors #------------------------------ pager ------------------------------ -export LESS_TERMCAP_mb="" # magenta -export LESS_TERMCAP_md="" # yellow -export LESS_TERMCAP_me="" -export LESS_TERMCAP_se="" -export LESS_TERMCAP_so="" # blue -export LESS_TERMCAP_ue="" -export LESS_TERMCAP_so="" # underline -export LESSHISTFILE="-" +#eval "$(batman --export-env)" +# export LESS_TERMCAP_mb="" # magenta +# export LESS_TERMCAP_md="" # yellow +# export LESS_TERMCAP_me="" +# export LESS_TERMCAP_se="" +# export LESS_TERMCAP_so="" # blue +# export LESS_TERMCAP_ue="" +# export LESS_TERMCAP_so="" # underline +# export LESSHISTFILE="-" #------------------------------ path ------------------------------