diff options
| -rw-r--r-- | .config/mimeapps.list | 9 | ||||
| -rw-r--r-- | .config/systemd/user/eye-rest-reminder.service | 14 | ||||
| -rw-r--r-- | .gitignore | 2 | ||||
| -rwxr-xr-x | .scripts/20-20-20.sh | 53 | ||||
| -rw-r--r-- | stow/foot/.config/foot/foot.ini (renamed from .config/foot/foot.ini) | 6 | ||||
| -rw-r--r-- | stow/hyprland/.config/hypr/hyprland-base.conf | 341 | ||||
| -rw-r--r-- | stow/hyprland/.config/hypr/hyprland.conf (renamed from .config/hypr/hyprland.conf) | 264 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/init.lua (renamed from .config/nvim/init.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/bufferline-config.lua (renamed from .config/nvim/lua/justsaumit/bufferline-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/cmp-config.lua (renamed from .config/nvim/lua/justsaumit/cmp-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/colorizer-config.lua (renamed from .config/nvim/lua/justsaumit/colorizer-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/colorscheme.lua (renamed from .config/nvim/lua/justsaumit/colorscheme.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/keymaps.lua (renamed from .config/nvim/lua/justsaumit/keymaps.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/lastplace-config.lua (renamed from .config/nvim/lua/justsaumit/lastplace-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/lsp-config.lua (renamed from .config/nvim/lua/justsaumit/lsp-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/lspsaga-config.lua (renamed from .config/nvim/lua/justsaumit/lspsaga-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/lualine-config.lua (renamed from .config/nvim/lua/justsaumit/lualine-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/mason.lua (renamed from .config/nvim/lua/justsaumit/mason.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/nvim-comment-config.lua (renamed from .config/nvim/lua/justsaumit/nvim-comment-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/nvim-tree-config.lua (renamed from .config/nvim/lua/justsaumit/nvim-tree-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/options.lua (renamed from .config/nvim/lua/justsaumit/options.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/plugins.lua (renamed from .config/nvim/lua/justsaumit/plugins.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/telescope-config.lua (renamed from .config/nvim/lua/justsaumit/telescope-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/toggleterm-config.lua (renamed from .config/nvim/lua/justsaumit/toggleterm-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/treesitter-config.lua (renamed from .config/nvim/lua/justsaumit/treesitter-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/lua/justsaumit/which-key-config.lua (renamed from .config/nvim/lua/justsaumit/which-key-config.lua) | 0 | ||||
| -rw-r--r-- | stow/nvim/.config/nvim/plugin/packer_compiled.lua (renamed from .config/nvim/plugin/packer_compiled.lua) | 0 | ||||
| -rw-r--r-- | stow/vim/.config/vim/vimrc (renamed from .config/vim/vimrc) | 0 | ||||
| -rw-r--r-- | stow/vscode/.config/Code/User/keybindings.json | 7 | ||||
| -rw-r--r-- | stow/vscode/.config/Code/User/settings.json | 87 | ||||
| -rw-r--r-- | stow/waybar/.config/waybar/config.jsonc (renamed from .config/waybar/config.jsonc) | 0 | ||||
| -rw-r--r-- | stow/waybar/.config/waybar/style.css (renamed from .config/waybar/style.css) | 0 | ||||
| -rw-r--r-- | stow/zsh/.zshrc (renamed from .config/zsh/.zshrc) | 32 | ||||
| -rw-r--r-- | tmux/tmux.conf (renamed from .config/tmux/tmux.conf) | 0 |
34 files changed, 745 insertions, 70 deletions
diff --git a/.config/mimeapps.list b/.config/mimeapps.list new file mode 100644 index 0000000..991830d --- /dev/null +++ b/.config/mimeapps.list @@ -0,0 +1,9 @@ +[Default Applications] +video/mp4=mpv.desktop +video/x-matroska=mpv.desktop +video/x-msvideo=mpv.desktop +video/webm=mpv.desktop +video/mpeg=mpv.desktop +video/*=mpv.desktop + +[Added Associations] diff --git a/.config/systemd/user/eye-rest-reminder.service b/.config/systemd/user/eye-rest-reminder.service new file mode 100644 index 0000000..f4cd795 --- /dev/null +++ b/.config/systemd/user/eye-rest-reminder.service @@ -0,0 +1,14 @@ +[Unit] +Description=20-20-20 Eye Rest Reminder +After=graphical-session.target + +[Service] +Type=simple +ExecStart=%h/.scripts/20-20-20.sh +Restart=always +RestartSec=10 +Environment=DISPLAY=:0 +Environment=WAYLAND_DISPLAY=wayland-1 + +[Install] +WantedBy=default.target diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..acb92f8 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +stow/nvim/.config/nvim/lua/secrets.lua +stow/zsh/.zsh_secrets diff --git a/.scripts/20-20-20.sh b/.scripts/20-20-20.sh new file mode 100755 index 0000000..2179643 --- /dev/null +++ b/.scripts/20-20-20.sh @@ -0,0 +1,53 @@ +#!/bin/bash + +# 20-20-20 Eye Rest Reminder for Hyprland +# Every 20 minutes, shows a full-screen blocking reminder for 20 seconds + +INTERVAL=1200 # 20 minutes in seconds +DURATION=20 # 20 seconds break + +while true; do + sleep $INTERVAL + + # Show notification warning + notify-send -u critical -t 3000 "ποΈ 20-20-20 EYE BREAK" "Eye break starting in 3 seconds..." + + sleep 3 + + # Create full-screen blocking overlay using yad + # Install: sudo pacman -S yad + yad --width=1920 --height=1080 \ + --center \ + --undecorated \ + --no-buttons \ + --timeout=$DURATION \ + --timeout-indicator=top \ + --skip-taskbar \ + --on-top \ + --sticky \ + --fixed \ + --title="Eye Break" \ + --text="<span font='64' weight='bold' foreground='#eb6f92'>ποΈ EYE BREAK TIME ποΈ</span> + +<span font='32' foreground='#e0def4'>Look at something <b>20 FEET</b> away (6 meters)</span> + +<span font='32' foreground='#e0def4'>For <b>20 SECONDS</b></span> + +<span font='28' foreground='#9ccfd8'>πͺ Stand up and look away from the screen</span> + +<span font='20' foreground='#6e6a86'>This window will close automatically...</span>" \ + --text-align=center \ + --back=1f1d2e \ + --borders=50 & + + YAD_PID=$! + + # Wait for the duration + sleep $DURATION + + # Kill yad if still running + kill $YAD_PID 2>/dev/null + + # Show completion notification + notify-send -u normal -t 3000 "β
Eye Break Complete" "Great job! Back to work πͺ" +done diff --git a/.config/foot/foot.ini b/stow/foot/.config/foot/foot.ini index cc08d77..4d7c22c 100644 --- a/.config/foot/foot.ini +++ b/stow/foot/.config/foot/foot.ini @@ -8,11 +8,13 @@ font-decrease=Control+Shift+Page_Down scrollback-up-line=Mod1+Up scrollback-down-line=Mod1+Down +[search-bindings] +find-prev=Control+Shift+f + # theme-Catppuccin(same as kitty) -[cursor] -color=1A1826 D9E0EE [colors] +cursor=1A1826 D9E0EE foreground=D9E0EE background=1E1D2F regular0=6E6C7E # black diff --git a/stow/hyprland/.config/hypr/hyprland-base.conf b/stow/hyprland/.config/hypr/hyprland-base.conf new file mode 100644 index 0000000..98ac099 --- /dev/null +++ b/stow/hyprland/.config/hypr/hyprland-base.conf @@ -0,0 +1,341 @@ +# This is an example Hyprland config file. +# Refer to the wiki for more information. +# https://wiki.hypr.land/Configuring/ + +# Please note not all available settings / options are set here. +# For a full list, see the wiki + +# You can split this configuration into multiple files +# Create your files separately and then link them to this file like this: +# source = ~/.config/hypr/myColors.conf + + +################ +### MONITORS ### +################ + +# See https://wiki.hypr.land/Configuring/Monitors/ +monitor=,preferred,auto,auto + + +################### +### MY PROGRAMS ### +################### + +# See https://wiki.hypr.land/Configuring/Keywords/ + +# Set programs that you use +$terminal = kitty +$fileManager = dolphin +$menu = hyprlauncher + + +################# +### AUTOSTART ### +################# + +# Autostart necessary processes (like notifications daemons, status bars, etc.) +# Or execute your favorite apps at launch like this: + +# exec-once = $terminal +# exec-once = nm-applet & +# exec-once = waybar & hyprpaper & firefox + + +############################# +### ENVIRONMENT VARIABLES ### +############################# + +# See https://wiki.hypr.land/Configuring/Environment-variables/ + +env = XCURSOR_SIZE,24 +env = HYPRCURSOR_SIZE,24 + + +################### +### PERMISSIONS ### +################### + +# See https://wiki.hypr.land/Configuring/Permissions/ +# Please note permission changes here require a Hyprland restart and are not applied on-the-fly +# for security reasons + +# ecosystem { +# enforce_permissions = 1 +# } + +# permission = /usr/(bin|local/bin)/grim, screencopy, allow +# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow +# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow + + +##################### +### LOOK AND FEEL ### +##################### + +# Refer to https://wiki.hypr.land/Configuring/Variables/ + +# https://wiki.hypr.land/Configuring/Variables/#general +general { + gaps_in = 5 + gaps_out = 20 + + border_size = 2 + + # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors + col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.inactive_border = rgba(595959aa) + + # Set to true enable resizing windows by clicking and dragging on borders and gaps + resize_on_border = false + + # Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on + allow_tearing = false + + layout = dwindle +} + +# https://wiki.hypr.land/Configuring/Variables/#decoration +decoration { + rounding = 10 + rounding_power = 2 + + # Change transparency of focused and unfocused windows + active_opacity = 1.0 + inactive_opacity = 1.0 + + shadow { + enabled = true + range = 4 + render_power = 3 + color = rgba(1a1a1aee) + } + + # https://wiki.hypr.land/Configuring/Variables/#blur + blur { + enabled = true + size = 3 + passes = 1 + + vibrancy = 0.1696 + } +} + +# https://wiki.hypr.land/Configuring/Variables/#animations +animations { + enabled = yes, please :) + + # Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves + # NAME, X0, Y0, X1, Y1 + bezier = easeOutQuint, 0.23, 1, 0.32, 1 + bezier = easeInOutCubic, 0.65, 0.05, 0.36, 1 + bezier = linear, 0, 0, 1, 1 + bezier = almostLinear, 0.5, 0.5, 0.75, 1 + bezier = quick, 0.15, 0, 0.1, 1 + + # Default animations, see https://wiki.hypr.land/Configuring/Animations/ + # NAME, ONOFF, SPEED, CURVE, [STYLE] + animation = global, 1, 10, default + animation = border, 1, 5.39, easeOutQuint + animation = windows, 1, 4.79, easeOutQuint + animation = windowsIn, 1, 4.1, easeOutQuint, popin 87% + animation = windowsOut, 1, 1.49, linear, popin 87% + animation = fadeIn, 1, 1.73, almostLinear + animation = fadeOut, 1, 1.46, almostLinear + animation = fade, 1, 3.03, quick + animation = layers, 1, 3.81, easeOutQuint + animation = layersIn, 1, 4, easeOutQuint, fade + animation = layersOut, 1, 1.5, linear, fade + animation = fadeLayersIn, 1, 1.79, almostLinear + animation = fadeLayersOut, 1, 1.39, almostLinear + animation = workspaces, 1, 1.94, almostLinear, fade + animation = workspacesIn, 1, 1.21, almostLinear, fade + animation = workspacesOut, 1, 1.94, almostLinear, fade + animation = zoomFactor, 1, 7, quick +} + +# Ref https://wiki.hypr.land/Configuring/Workspace-Rules/ +# "Smart gaps" / "No gaps when only" +# uncomment all if you wish to use that. +# workspace = w[tv1], gapsout:0, gapsin:0 +# workspace = f[1], gapsout:0, gapsin:0 +# windowrule { +# name = no-gaps-wtv1 +# match:float = false +# match:workspace = w[tv1] +# +# border_size = 0 +# rounding = 0 +# } +# +# windowrule { +# name = no-gaps-f1 +# match:float = false +# match:workspace = f[1] +# +# border_size = 0 +# rounding = 0 +# } + +# See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more +dwindle { + pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + preserve_split = true # You probably want this +} + +# See https://wiki.hypr.land/Configuring/Master-Layout/ for more +master { + new_status = master +} + +# https://wiki.hypr.land/Configuring/Variables/#misc +misc { + 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. :( +} + + +############# +### INPUT ### +############# + +# https://wiki.hypr.land/Configuring/Variables/#input +input { + kb_layout = us + kb_variant = + kb_model = + kb_options = + kb_rules = + + follow_mouse = 1 + + sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + + touchpad { + natural_scroll = false + } +} + +# See https://wiki.hypr.land/Configuring/Gestures +gesture = 3, horizontal, workspace + +# Example per-device config +# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more +device { + name = epic-mouse-v1 + sensitivity = -0.5 +} + + +################### +### KEYBINDINGS ### +################### + +# See https://wiki.hypr.land/Configuring/Keywords/ +$mainMod = SUPER # Sets "Windows" key as main modifier + +# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more +bind = $mainMod, Q, exec, $terminal +bind = $mainMod, C, killactive, +bind = $mainMod, M, exec, command -v hyprshutdown >/dev/null 2>&1 && hyprshutdown || hyprctl dispatch exit +bind = $mainMod, E, exec, $fileManager +bind = $mainMod, V, togglefloating, +bind = $mainMod, R, exec, $menu +bind = $mainMod, P, pseudo, # dwindle +bind = $mainMod, J, togglesplit, # dwindle + +# 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 + +# Switch workspaces with mainMod + [0-9] +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + +# Move active window to a workspace with mainMod + SHIFT + [0-9] +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +# Example special workspace (scratchpad) +bind = $mainMod, S, togglespecialworkspace, magic +bind = $mainMod SHIFT, S, movetoworkspace, special:magic + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +# Move/resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow + +# Laptop multimedia keys for volume and LCD brightness +bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ +bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- +bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle +bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle +bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+ +bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%- + +# Requires playerctl +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPause, exec, playerctl play-pause +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioPrev, exec, playerctl previous + +############################## +### WINDOWS AND WORKSPACES ### +############################## + +# See https://wiki.hypr.land/Configuring/Window-Rules/ for more +# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules + +# Example windowrules that are useful + +windowrule { + # Ignore maximize requests from all apps. You'll probably like this. + name = suppress-maximize-events + match:class = .* + + suppress_event = maximize +} + +windowrule { + # Fix some dragging issues with XWayland + name = fix-xwayland-drags + match:class = ^$ + match:title = ^$ + match:xwayland = true + match:float = true + match:fullscreen = false + match:pin = false + + no_focus = true +} + +# Hyprland-run windowrule +windowrule { + name = move-hyprland-run + + match:class = hyprland-run + + move = 20 monitor_h-120 + float = yes +} diff --git a/.config/hypr/hyprland.conf b/stow/hyprland/.config/hypr/hyprland.conf index 3f31cc3..6b6dc24 100644 --- a/.config/hypr/hyprland.conf +++ b/stow/hyprland/.config/hypr/hyprland.conf @@ -26,8 +26,10 @@ monitor=HDMI-A-1,1920x1080@144,0x0,1.00,transform,0,mirror,eDP-1 # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: +# exec-once = $terminal +# exec-once = nm-applet & # exec-once = waybar & hyprpaper & firefox -exec-once = waybar & dunst & wpaperd & suspend.sh & nextcloud & nm-applet & blueman-applet & notion-app +exec-once = waybar & dunst & wpaperd & suspend.sh & nm-applet & blueman-applet & notion-app & memospot #exec-once = dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY #exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY && XDG_CURRENT_DESKTOP=Hyprland exec-once = systemctl --user import-environment DISPLAY WAYLAND_DISPLAY XDG_CURRENT_DESKTOP @@ -40,36 +42,59 @@ exec-once = xhost +SI:localuser:root ### ENVIRONMENT VARIABLES ### ############################# -# See https://wiki.hyprland.org/Configuring/Environment-variables/ +# See https://wiki.hypr.land/Configuring/Environment-variables/ env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 +env = XDG_SESSION_TYPE,wayland +env = WLR_NO_HARDWARE_CURSORS,1 + #env = LIBVA_DRIVER_NAME,nvidia env = XDG_SESSION_TYPE,wayland #env = GBM_BACKEND,nvidia-drm #env = __GLX_VENDOR_LIBRARY_NAME,nvidia env = WLR_NO_HARDWARE_CURSORS,1 +env = WLR_DRM_NO_MODIFIERS,1 +env = WLR_RENDERER,vulkan + +################### +### PERMISSIONS ### +################### + +# See https://wiki.hypr.land/Configuring/Permissions/ +# Please note permission changes here require a Hyprland restart and are not applied on-the-fly +# for security reasons + +# ecosystem { +# enforce_permissions = 1 +# } + +# permission = /usr/(bin|local/bin)/grim, screencopy, allow +# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow +# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow + ##################### ### LOOK AND FEEL ### ##################### -# Refer to https://wiki.hyprland.org/Configuring/Variables/ +# Refer to https://wiki.hypr.land/Configuring/Variables/ +# https://wiki.hypr.land/Configuring/Variables/#general general { gaps_in = 5 gaps_out = 20 border_size = 2 - # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors + # https://wiki.hypr.land/Configuring/Variables/#variable-types for info about colors col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = false - # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on + # Please see https://wiki.hypr.land/Configuring/Tearing/ before you turn this on allow_tearing = false layout = master @@ -81,10 +106,9 @@ master { new_on_top=false # no_gaps_when_only=true // config removed add through Workspace rules orientation=left - inherit_fullscreen=true } -# https://wiki.hyprland.org/Configuring/Variables/#decoration +# https://wiki.hypr.land/Configuring/Variables/#decoration decoration { rounding = 3 #multisample_edges = true @@ -101,7 +125,7 @@ decoration { color = rgba(1a1a1aee) } - # https://wiki.hyprland.org/Configuring/Variables/#blur + # https://wiki.hypr.land/Configuring/Variables/#blur blur { enabled = true size = 4 @@ -111,8 +135,8 @@ decoration { } } +# https://wiki.hypr.land/Configuring/Variables/#animations animations { - #enabled = true enabled = yes, please :) # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more @@ -151,7 +175,7 @@ animations { } -# https://wiki.hyprland.org/Configuring/Variables/#misc +# https://wiki.hypr.land/Configuring/Variables/#misc misc { # enable_swallow = true # swallow_regex = ^(foot)$ @@ -164,7 +188,7 @@ misc { ### INPUT ### ############# -# https://wiki.hyprland.org/Configuring/Variables/#input +# https://wiki.hypr.land/Configuring/Variables/#input input { kb_layout = us kb_variant = @@ -177,21 +201,25 @@ input { sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + scroll_factor = 1.0 + scroll_method = 2fg + touchpad { natural_scroll = true + scroll_factor = 1.0 + tap-to-click = yes + tap-and-drag = yes disable_while_typing = false - tap-to-click=yes + clickfinger_behavior = yes } } -# https://wiki.hyprland.org/Configuring/Variables/#gestures -gestures { - workspace_swipe = on - workspace_swipe_fingers = 3 - workspace_swipe_distance = 500 - workspace_swipe_invert = true - workspace_swipe_min_speed_to_force = 40 -} +# See https://wiki.hypr.land/Configuring/Gestures +gesture = 3, horizontal, workspace +gesture = 3, down, dispatcher, movetoworkspacesilent, special +gesture = 3, up, scale: 1.5, dispatcher, movetoworkspacesilent, +0 +gesture = 3, pinch, fullscreen + binds { workspace_back_and_forth = true allow_workspace_cycles = true @@ -200,32 +228,49 @@ binds { } # Example per-device config -# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more +# See https://wiki.hypr.land/Configuring/Keywords/#per-device-input-configs for more #device { # name = epic-mouse-v1 # sensitivity = -0.5 #} -$TOUCHPAD_ENABLED = true +# $TOUCHPAD_ENABLED = true +# device { +# name = pnp0c50:0d-06cb:cebd-touchpad +# enabled = $TOUCHPAD_ENABLED +# scroll_factor = 1.0 +# natural_scroll = false +# } + +# $KEYBOARD_ENABLED = true +# device { +# name = at-translated-set-2-keyboard +# enabled = $KEYBOARD_ENABLED +# } device { name = pnp0c50:0d-06cb:cebd-touchpad - enabled = $TOUCHPAD_ENABLED + enabled = true + accel_profile = flat + tap-to-click = true + tap-and-drag = true + drag_lock = true + middle_button_emulation = false } -$KEYBOARD_ENABLED = true -device { - name = at-translated-set-2-keyboard - enabled = $KEYBOARD_ENABLED -} +# $KEYBOARD_ENABLED = true +# device { +# name = at-translated-set-2-keyboard +# enabled = $KEYBOARD_ENABLED +# } ################### ### KEYBINDINGS ### ################### -# See https://wiki.hyprland.org/Configuring/Keywords/ +# See https://wiki.hypr.land/Configuring/Keywords/ $MOD = SUPER -# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more +# Example binds, see https://wiki.hypr.land/Configuring/Binds/ for more ############### @@ -260,22 +305,25 @@ bind = $MOD ALT, M, exec, toggle-touchpad-hypr # Launch Brave bind = $MOD, Q, exec, brave bind = $MOD CTRL, Q, exec, brave --incognito -bind = $MOD ALT, Q, exec, brave --tor +bind = $MOD SHIFT, Z, exec, zen-browser # Launch wa bind = $MOD SHIFT, W, exec, whatsapp-nativefier --no-sandbox -#Launch emacs -bind = $MOD, E, exec, emacs # Launch ncloud -bind = $MOD SHIFT, N, exec, qutebrowser https://ncloud.draconyan.xyz +bind = $MOD SHIFT, N, exec, zen-browser https://ncloud.draconyan.xyz +#Launch emacs +bind = $MOD CTRL, E, exec, emacs # Launch thunderbird bind = $MOD SHIFT, E, exec, thunderbird # Launch protonmail -bind = $MOD ALT, E, exec, qutebrowser https://mail.proton.me/u/0/inbox +bind = $MOD ALT, E, exec, zen-browser https://mail.proton.me/u/0/inbox # Launch teams # bind = $MOD SHIFT, T, exec, qutebrowser https://teams.microsoft.com -bind = $MOD SHIFT, T, exec, teams +# bind = $MOD SHIFT, T, exec, teams +bind = $MOD , T, exec, tessen # Launch spotify bind = $MOD SHIFT, M, exec, spotify +# Launch memospot +bind = $MOD CTRL, M, exec, memospot # Launch discord bind = $MOD SHIFT, D, exec, webcord --enable-features=UseOzonePlatform --ozone-platform=wayland # Launch telegram @@ -302,9 +350,21 @@ bind = $MOD , L, exec, swaylock #bind = ,Print, exec, IMG=pic-full-"$(date +%y-%m-%d--%H-%M-%S)".png && grim "$GRIM_DEFAULT_DIR/""$IMG" && wl-copy < "$GRIM_DEFAULT_DIR/""$IMG" #bind = CTRL,Print, exec, IMG=pic-sel-"$(date +%y-%m-%d--%H-%M-%S)".png && grim -g "$(slurp)" "$GRIM_DEFAULT_DIR/""$IMG" && wl-copy < "$GRIM_DEFAULT_DIR/""$IMG" #bind = ALT ,Print, exec, flameshot gui -bind = ,Print, exec, IMG=pic-full-"$(date +%y-%m-%d--%H-%M-%S)".png && grim - | wl-copy && wl-paste > "$GRIM_DEFAULT_DIR/""$IMG" && dunstify "Screenshot of the whole screen taken" "$IMG" -t 1000 # screenshot of whole screen +$SS_DIR = /home/justsaumit/pix/Screenshots + +# Full screen β Print or F10 +bind = , Print, exec, IMG="$SS_DIR/pic-full-$(date +%y-%m-%d--%H-%M-%S).png" && grim "$IMG" && wl-copy < "$IMG" && dunstify "Full screenshot" "$(basename $IMG)" -t 1500 +bind = , F10, exec, IMG="$SS_DIR/pic-full-$(date +%y-%m-%d--%H-%M-%S).png" && grim "$IMG" && wl-copy < "$IMG" && dunstify "Full screenshot" "$(basename $IMG)" -t 1500 + +# Region select β CTRL+Print or F11 +bind = CTRL ,Print, exec, IMG="$SS_DIR/pic-sel-$(date +%y-%m-%d--%H-%M-%S).png" && grim -g "$(slurp)" "$IMG" && wl-copy < "$IMG" && dunstify "Region screenshot" "$(basename $IMG)" -t 1500 bind = $MOD SHIFT,Print, exec, IMG=pic-sel-"$(date +%y-%m-%d--%H-%M-%S)".png && grim -g "$(slurp)" - | wl-copy && wl-paste > "$GRIM_DEFAULT_DIR/""$IMG" && dunstify "Screenshot of the region taken" "$IMG" -t 1000 # screenshot of a region -bind = ALT ,Print, exec, flameshot gui +bind = ,F11, exec, IMG="$SS_DIR/pic-sel-$(date +%y-%m-%d--%H-%M-%S).png" && grim -g "$(slurp)" "$IMG" && wl-copy < "$IMG" && dunstify "Region screenshot" "$(basename $IMG)" -t 1500 + +# Flameshot (annotate/edit) β ALT+Print or F12 +bind = ALT, Print, exec, flameshot gui +bind = , F12, exec, flameshot gui +bind = CTRL,Print, exec, IMG=pic-sel-"$(date +%y-%m-%d--%H-%M-%S)".png && grim -g "$(slurp)" - | wl-copy && wl-paste > "$GRIM_DEFAULT_DIR/""$IMG" && dunstify "Screenshot of the region taken" "$IMG" -t 1000 # screenshot of a region #otherkeyb bind = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && [[ "$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | grep MUTE)" ]] && dunstify "Mute" "Volume set to 0%" -i volume-xmark -t 1000 -r 1234 @@ -315,20 +375,24 @@ binde = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- & binde = ,XF86MonBrightnessUp, exec, brillo -A 4 && dunstify -u normal -t 3000 -r 90210 -i brightness "$(printf %.0f%% $( brillo -G) )" binde = ,XF86MonBrightnessDown, exec, brillo -U 4 && dunstify -u normal -t 3000 -r 90210 -i brightness "$(printf %.0f%% $( brillo -G) )" #Launch rofi calc mode -bind = $MOD, F2 , exec, rofi -show calc -modi calc -no-show-match -no-sort -bind = , XF86Calculator, exec, rofi -show calc -modi calc -no-show-match -no-sort +bind = $MOD, F2 , exec, rofi -show calc -modi calc -no-show-match -no-sort -calc-command "echo -n '{result}' | wl-copy" +bind = , XF86Calculator, exec, rofi -show calc -modi calc -no-show-match -no-sort -calc-command "echo -n '{result}' | wl-copy" + +# Toggle play/pause in Spotify or Chromium (fallback) +bind = , XF86AudioPlay, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify play-pause; else playerctl -p chromium play-pause; fi -#Toggle play/pause in spotify (universal) -bind = , XF86AudioPlay, exec, playerctl -p spotify play-pause -# Change tracks spotify only -bind = , XF86AudioPrev, exec, playerctl -p spotify previous -bind = , XF86AudioNext, exec, playerctl -p spotify next +# Change tracks in Spotify or Chromium (fallback) +bind = , XF86AudioPrev, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify previous; else playerctl -p chromium previous; fi +bind = , XF86AudioNext, exec, if playerctl -p spotify status > /dev/null 2>&1; then playerctl -p spotify next; else playerctl -p chromium next; fi +#bluetooth applet +bind = $MOD, F9, exec, blueman-manager #master-stack layout bind = $MOD, Return,layoutmsg, swapwithmaster #fullscreen layout toggle +bind = $MOD, H, togglesplit bind= $MOD, U, fullscreen # Move focus with MOD + arrow keys @@ -372,6 +436,9 @@ bind = ALT, tab, workspace, e+1 bind = ALT SHIFT, tab, workspace, e-1 bind = $MOD, mouse_down, workspace, e+1 bind = $MOD, mouse_up, workspace, e-1 +# Scroll through existing workspaces with just mouse sidebuttons +bind = , mouse:276, workspace, e+1 +bind = , mouse:275, workspace, e-1 # Move/resize windows with MOD + LMB/RMB and dragging bindm = $MOD, mouse:272, movewindow @@ -402,33 +469,96 @@ submap=reset ### WINDOWS AND WORKSPACES ### ############################## -# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more -# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules +# See https://wiki.hypr.land/Configuring/Window-Rules/ for more +# See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules -# Example windowrule v1 -# windowrule = float, ^(kitty)$ +# Example windowrules that are useful +# Suppress maximize events +windowrule = suppress_event maximize, match:class .* -# Example windowrule v2 -# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ -# Ignore maximize requests from apps. You'll probably like this. -windowrulev2 = suppressevent maximize, class:.* -# Spotify does not follow window rules. This is because the client sets its class after the window has opened, thus making it βimmuneβ to windowrules. -windowrulev2=workspace 9,class:^(Spotify)$ -windowrulev2=opacity 1.0 1.0,class:^(obsidian)$ -windowrule = pin,floating,move 1232 615,size 687 467,class:mpv -#windowrulev2=workspace 9,class:^(Spotify)$,title:^(Spotify)$ +# Fix some dragging issues with XWayland +windowrule = no_focus on, match:class ^$, match:title ^$, match:xwayland 1, match:float 1, match:fullscreen 0, match:pin 0 + +# Move Hyprland-run +windowrule = move 20 (monitor_h-120), match:class hyprland-run +windowrule = float on, match:class hyprland-run + +# windowrule { +# # Ignore maximize requests from all apps. You'll probably like this. +# name = suppress-maximize-events +# match:class = .* +# suppress_event = maximize +# } + +# windowrule { +# # Fix some dragging issues with XWayland +# name = fix-xwayland-drags +# match:class = ^$ +# match:title = ^$ +# match:xwayland = true +# match:float = true +# match:fullscreen = false +# match:pin = false + +# no_focus = true +# } + +# # Hyprland-run windowrule +# windowrule { +# name = move-hyprland-run + +# match:class = hyprland-run + +# move = 20 monitor_h-120 +# float = yes +# } + +# Spotify to workspace 9 +windowrule = workspace 9, match:class ^(spotify)$ + +# Obsidian opacity +windowrule = opacity 1.0, match:class ^(obsidian)$ +windowrule = opacity 1.0, match:class ^(code)$ +windowrule = opacity 1.0, match:class ^(brave)$ +windowrule = opacity 1.0, match:class ^(mpv)$ +windowrule = opacity 1.0, match:class ^(zen)$ + +#windowrulev2 = no_direct_scanout, class:^(mpv)$ + +# MPV player floating -> spawn bottomright +# windowrule { +# name = mpv-floating-bottomright +# match:class = mpv + +# pin = on +# float = on +# move = 1232 615 +# size = 687 467 +# } # "Smart gaps" / "No gaps when only" workspace = w[t1], gapsout:0, gapsin:0 workspace = w[tg1], gapsout:0, gapsin:0 workspace = f[1], gapsout:0, gapsin:0 -windowrulev2 = bordersize 0, floating:0, onworkspace:w[t1] -windowrulev2 = rounding 0, floating:0, onworkspace:w[t1] -windowrulev2 = bordersize 0, floating:0, onworkspace:w[tg1] -windowrulev2 = rounding 0, floating:0, onworkspace:w[tg1] -windowrulev2 = bordersize 0, floating:0, onworkspace:f[1] -windowrulev2 = rounding 0, floating:0, onworkspace:f[1] - -# Fix some dragging issues with XWayland -windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 +windowrule = border_size 0, match:float false, match:workspace w[t1] +windowrule = rounding 0, match:float false, match:workspace w[t1] +windowrule = border_size 0, match:float false, match:workspace w[tg1] +windowrule = rounding 0, match:float false, match:workspace w[tg1] +windowrule = border_size 0, match:float false, match:workspace f[1] +windowrule = rounding 0, match:float false, match:workspace f[1] + +# fix some dragging issues with xwayland +windowrule = no_focus on, match:class ^$, match:title ^$, match:xwayland true, match:float true, match:fullscreen false, match:pin false + +# See https://wiki.hypr.land/Useful-Utilities/Screen-Sharing/#xwayland +windowrule { + name = xwayland-video-bridge-fixes + match:class = xwaylandvideobridge + no_initial_focus = on + no_focus = on + no_anim = on + no_blur = on + max_size = 1 1 + opacity = 0.0 +} diff --git a/.config/nvim/init.lua b/stow/nvim/.config/nvim/init.lua index 11ab069..11ab069 100644 --- a/.config/nvim/init.lua +++ b/stow/nvim/.config/nvim/init.lua diff --git a/.config/nvim/lua/justsaumit/bufferline-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/bufferline-config.lua index 879c669..879c669 100644 --- a/.config/nvim/lua/justsaumit/bufferline-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/bufferline-config.lua diff --git a/.config/nvim/lua/justsaumit/cmp-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/cmp-config.lua index 7e29155..7e29155 100644 --- a/.config/nvim/lua/justsaumit/cmp-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/cmp-config.lua diff --git a/.config/nvim/lua/justsaumit/colorizer-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/colorizer-config.lua index 569021d..569021d 100644 --- a/.config/nvim/lua/justsaumit/colorizer-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/colorizer-config.lua diff --git a/.config/nvim/lua/justsaumit/colorscheme.lua b/stow/nvim/.config/nvim/lua/justsaumit/colorscheme.lua index 67c166f..67c166f 100644 --- a/.config/nvim/lua/justsaumit/colorscheme.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/colorscheme.lua diff --git a/.config/nvim/lua/justsaumit/keymaps.lua b/stow/nvim/.config/nvim/lua/justsaumit/keymaps.lua index 582113c..582113c 100644 --- a/.config/nvim/lua/justsaumit/keymaps.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/keymaps.lua diff --git a/.config/nvim/lua/justsaumit/lastplace-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/lastplace-config.lua index 4fa6a83..4fa6a83 100644 --- a/.config/nvim/lua/justsaumit/lastplace-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/lastplace-config.lua diff --git a/.config/nvim/lua/justsaumit/lsp-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/lsp-config.lua index 2c0d746..2c0d746 100644 --- a/.config/nvim/lua/justsaumit/lsp-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/lsp-config.lua diff --git a/.config/nvim/lua/justsaumit/lspsaga-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/lspsaga-config.lua index 70d3d79..70d3d79 100644 --- a/.config/nvim/lua/justsaumit/lspsaga-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/lspsaga-config.lua diff --git a/.config/nvim/lua/justsaumit/lualine-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/lualine-config.lua index 56c426a..56c426a 100644 --- a/.config/nvim/lua/justsaumit/lualine-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/lualine-config.lua diff --git a/.config/nvim/lua/justsaumit/mason.lua b/stow/nvim/.config/nvim/lua/justsaumit/mason.lua index d651810..d651810 100644 --- a/.config/nvim/lua/justsaumit/mason.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/mason.lua diff --git a/.config/nvim/lua/justsaumit/nvim-comment-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/nvim-comment-config.lua index d71ce14..d71ce14 100644 --- a/.config/nvim/lua/justsaumit/nvim-comment-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/nvim-comment-config.lua diff --git a/.config/nvim/lua/justsaumit/nvim-tree-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/nvim-tree-config.lua index b499f91..b499f91 100644 --- a/.config/nvim/lua/justsaumit/nvim-tree-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/nvim-tree-config.lua diff --git a/.config/nvim/lua/justsaumit/options.lua b/stow/nvim/.config/nvim/lua/justsaumit/options.lua index 4eae867..4eae867 100644 --- a/.config/nvim/lua/justsaumit/options.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/options.lua diff --git a/.config/nvim/lua/justsaumit/plugins.lua b/stow/nvim/.config/nvim/lua/justsaumit/plugins.lua index 460d6f3..460d6f3 100644 --- a/.config/nvim/lua/justsaumit/plugins.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/plugins.lua diff --git a/.config/nvim/lua/justsaumit/telescope-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/telescope-config.lua index 534e663..534e663 100644 --- a/.config/nvim/lua/justsaumit/telescope-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/telescope-config.lua diff --git a/.config/nvim/lua/justsaumit/toggleterm-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/toggleterm-config.lua index b1579cd..b1579cd 100644 --- a/.config/nvim/lua/justsaumit/toggleterm-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/toggleterm-config.lua diff --git a/.config/nvim/lua/justsaumit/treesitter-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/treesitter-config.lua index c64e659..c64e659 100644 --- a/.config/nvim/lua/justsaumit/treesitter-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/treesitter-config.lua diff --git a/.config/nvim/lua/justsaumit/which-key-config.lua b/stow/nvim/.config/nvim/lua/justsaumit/which-key-config.lua index 93a42fa..93a42fa 100644 --- a/.config/nvim/lua/justsaumit/which-key-config.lua +++ b/stow/nvim/.config/nvim/lua/justsaumit/which-key-config.lua diff --git a/.config/nvim/plugin/packer_compiled.lua b/stow/nvim/.config/nvim/plugin/packer_compiled.lua index f5e9107..f5e9107 100644 --- a/.config/nvim/plugin/packer_compiled.lua +++ b/stow/nvim/.config/nvim/plugin/packer_compiled.lua diff --git a/.config/vim/vimrc b/stow/vim/.config/vim/vimrc index 0832263..0832263 100644 --- a/.config/vim/vimrc +++ b/stow/vim/.config/vim/vimrc diff --git a/stow/vscode/.config/Code/User/keybindings.json b/stow/vscode/.config/Code/User/keybindings.json new file mode 100644 index 0000000..ba29206 --- /dev/null +++ b/stow/vscode/.config/Code/User/keybindings.json @@ -0,0 +1,7 @@ +// Place your key bindings in this file to override the defaults +[ + { + "key": "shift+space", + "command": "toggleVim" + } +]
\ No newline at end of file diff --git a/stow/vscode/.config/Code/User/settings.json b/stow/vscode/.config/Code/User/settings.json new file mode 100644 index 0000000..6d67f96 --- /dev/null +++ b/stow/vscode/.config/Code/User/settings.json @@ -0,0 +1,87 @@ +{ + // ========================================================= + // CORE EDITOR & APPEARANCE + // ========================================================= + "editor.fontSize": 16, + "editor.insertSpaces": false, + "editor.tabSize": 2, + "editor.detectIndentation": false, + + // Visual Guides + "editor.guides.bracketPairs": true, + "editor.guides.bracketPairsHorizontal": true, + + // Minimap (Small code preview on the right) + "editor.minimap.enabled": false, + "editor.minimap.autohide": "none", // Redundant if enabled is false, but kept for preference + + // ========================================================= + // WORKBENCH & UI + // ========================================================= + "workbench.colorTheme": "Tokyo Night Gogh", + "workbench.iconTheme": "material-icon-theme", + "window.titleBarStyle": "custom", + "workbench.settings.applyToAllProfiles": [], + + // ========================================================= + // FILE SAVING + // ========================================================= + // Replaces the "Auto save while typing" extension + "files.autoSave": "afterDelay", + "files.autoSaveDelay": 1000, // Saves 1 second after you stop typing + + // ========================================================= + // VIM CONFIGURATION + // ========================================================= + "vim.useSystemClipboard": true, + "vim.handleKeys": { + "<C-k>": false // Allows Ctrl+K chords (like language switching) to bypass Vim + }, + + // ========================================================= + // KEYBOARD & INPUT + // ========================================================= + // Fixes CapsLock remap issues on Linux/Hyprland + "keyboard.dispatch": "keyCode", + + // ========================================================= + // GIT INTEGRATION + // ========================================================= + "git.confirmSync": false, // Don't ask before syncing + "git.enableSmartCommit": true, // Commit all changes if none are staged + + // ========================================================= + // LANGUAGE SPECIFIC FORMATTERS + // ========================================================= + "[css]": { + "editor.defaultFormatter": "vscode.css-language-features" + }, + "[html]": { + "editor.defaultFormatter": "vscode.html-language-features" + }, + "[jsonc]": { + "editor.defaultFormatter": "vscode.json-language-features" + }, + + // ========================================================= + // EXTENSIONS & MISC + // ========================================================= + // Spell Checker + "cSpell.userWords": [ + "Bootcamp", + "lmao" + ], + + // Live Server + "liveServer.settings.donotVerifyTags": true, + "liveServer.settings.ChromeDebuggingAttachment": false, + + // Remote SSH + "remote.SSH.remotePlatform": { + "sandbox.vyxff4.csb": "linux" + }, + + // Icons & AI + "vsicons.dontShowNewVersionMessage": true, + "chat.disableAIFeatures": true +}
\ No newline at end of file diff --git a/.config/waybar/config.jsonc b/stow/waybar/.config/waybar/config.jsonc index 513c578..513c578 100644 --- a/.config/waybar/config.jsonc +++ b/stow/waybar/.config/waybar/config.jsonc diff --git a/.config/waybar/style.css b/stow/waybar/.config/waybar/style.css index 4ac1b0d..4ac1b0d 100644 --- a/.config/waybar/style.css +++ b/stow/waybar/.config/waybar/style.css diff --git a/.config/zsh/.zshrc b/stow/zsh/.zshrc index 4231e29..3a021a1 100644 --- a/.config/zsh/.zshrc +++ b/stow/zsh/.zshrc @@ -6,7 +6,17 @@ export ZSH="$HOME/.oh-my-zsh" # to know which specific one was loaded, run: echo $RANDOM_THEME # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes ZSH_THEME="spaceship" - +PROMPT='$(kube_ps1)'$PROMPT +export SPACESHIP_KUBECTL_SHOW=true +export SPACESHIP_KUBECTL_VERSION_SHOW=false # Hide version if it's too verbose +export SPACESHIP_KUBECTL_NAMESPACE_SHOW=true # Show current namespace +export SPACESHIP_KUBECTL_PREFIX=" " +export SPACESHIP_KUBECTL_SYMBOL="β " +export SPACESHIP_KUBECTL_COLOR="cyan" + +if [[ $(tty) == "/dev/tty1" ]]; then + start-hyprland +fi # Set list of themes to pick from when loading at random # Setting this variable when ZSH_THEME=random will cause zsh to load @@ -85,6 +95,16 @@ plugins=( nvm npm node + kubectl + kubectx + kube-ps1 + aws + azure + helm + terraform + ansible + fzf + z ) source $ZSH/oh-my-zsh.sh @@ -117,11 +137,19 @@ source $ZSH/oh-my-zsh.sh # Example aliases # alias zshconfig="mate ~/.zshrc" # alias ohmyzsh="mate ~/.oh-my-zsh" +alias kns="kubens" +alias kctx="kubectx" export NVM_DIR="$HOME/.nvm" export PATH=$PATH:/usr/local/x export PATH="$PATH:$HOME/.scripts" +export ANDROID_HOME=/home/justsaumit/Android/Sdk +export PATH=$PATH:$ANDROID_HOME/tools +export PATH=$PATH:$ANDROID_HOME/platform-tools +export PATH="$PATH:$ANDROID_HOME/tools/bin" + + [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion @@ -131,3 +159,5 @@ export PATH="$PATH:$HOME/.scripts" [ -f "${xdg_config_home:-$home/.config}/shell/shortcutrc" ] && source "${xdg_config_home:-$home/.config}/shell/shortcutrc" # Load profile [ -f "${XDG_CONFIG_HOME:-$HOME/.config}/shell/profile" ] && source "${XDG_CONFIG_HOME:-$HOME/.config}/shell/profile" +# Load secrets +[ -f "${XDG_CONFIG_HOME:-$HOME}/.zsh_secrets" ] && source "${XDG_CONFIG_HOME:-$HOME}/.zsh_secrets" diff --git a/.config/tmux/tmux.conf b/tmux/tmux.conf index 0023540..0023540 100644 --- a/.config/tmux/tmux.conf +++ b/tmux/tmux.conf |
