diff --git a/dot_config/hypr/binds.conf b/dot_config/hypr/binds.conf index e123a6f..c2d710f 100644 --- a/dot_config/hypr/binds.conf +++ b/dot_config/hypr/binds.conf @@ -1,91 +1,91 @@ # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more # Single app hotkeys -bind = $mainMod, SPACE, exec, $menu -bind = $mainMod, Q, exec, $terminal -bind = $mainMod, W, exec, $browser -bind = $mainMod, E, exec, $noteManager -bind = $mainMod, R, exec, $literatureManager -bind = $mainMod, T, exec, $localDocs -bind = $mainMod, Y, exec, $musicPlayer -bind = $mainMod, U, exec, $bluetoothManager -bind = $mainMod, I, exec, $officeSuite -bind = $mainMod, O, exec, $fileManager -bind = $mainMod, P, exec, $perfMonitor -bind = $mainMod, S, exec, $terminalBackup -bind = $mainMod, D, exec, $noteManagerSearch +bind = $mainMod, SPACE, exec, $menu #"Activate the launcher" +bind = $mainMod, Q, exec, $terminal #"Launch the terminal" +bind = $mainMod, W, exec, $browser #"Launch the browser" +bind = $mainMod, E, exec, $noteManager #"Launch the note manager" +bind = $mainMod, R, exec, $literatureManager #"Launch the literature manager" +bind = $mainMod, T, exec, $localDocs #"Launch the local documentation browser" +bind = $mainMod, Y, exec, $musicPlayer #"Launch the music player" +bind = $mainMod, U, exec, $bluetoothManager #"Launch the bluetooth manager" +bind = $mainMod, I, exec, $officeSuite #"Launch the office suite" +bind = $mainMod, O, exec, $fileManager #"Launch the file manager" +bind = $mainMod, P, exec, $perfMonitor #"Launch the performance monitor" +bind = $mainMod, S, exec, $terminalBackup #"Launch the backup terminal" +bind = $mainMod, D, exec, $noteManagerSearch #"Search the note manager" # Multi-app hotkeys -bind = $mainModShift, Q, exec, [workspace 1 silent] $browser & [workspace 2 silent] $terminal & [workspace 3 silent] $noteManager & [workspace 3 silent] $localDocs +bind = $mainModShift, Q, exec, [workspace 1 silent] $browser & [workspace 2 silent] $terminal & [workspace 3 silent] $noteManager & [workspace 3 silent] $localDocs #"Launch the default layout" # DE function hotkeys -bind = $mainMod, TAB, exec, $screenshot -bind = $mainMod, ESCAPE, exec, $lockscreen -bind = $mainMod SHIFT, T, exec, $colorpicker -bind = $mainMod, ., exec, $emojipicker -bind = $mainMod, C, killactive, -bind = $mainMod, V, togglefloating, -bind = $mainMod, M, exec, $powerMenu -bind = $mainMod, P, pseudo, # dwindle -bind = $mainMod, ;, togglesplit, # dwindle -bind = $mainMod, /, exec, $cheatsheet +bind = $mainMod, TAB, exec, $screenshot #"Take a screenshot" +bind = $mainMod, ESCAPE, exec, $lockscreen #"Lock the screen" +bind = $mainMod SHIFT, T, exec, $colorpicker #"Activate Color Picker" +bind = $mainMod, ., exec, $emojipicker #"Launch emoji picker" +bind = $mainMod, C, killactive #"Kill the active window" +bind = $mainMod, V, togglefloating #"Toggle floating window" +bind = $mainMod, M, exec, $powerMenu #"Launch the power menu" +bind = $mainMod, P, pseudo, #"Toggle pseudotiling mode" +bind = $mainMod, ;, togglesplit, #"Toggle split mode" +bind = $mainMod, A, exec, $cheatsheet #"Display this cheatsheet" # Move focus with mainMod + arrow keys -bind = $mainMod, left, movefocus, l -bind = $mainMod, down, movefocus, d -bind = $mainMod, up, movefocus, u -bind = $mainMod, right, movefocus, r -bind = $mainMod, H, movefocus, l -bind = $mainMod, J, movefocus, d -bind = $mainMod, K, movefocus, u -bind = $mainMod, L, movefocus, r +bind = $mainMod, left, movefocus, l #"Navigate left" +bind = $mainMod, down, movefocus, d #"Navigate right" +bind = $mainMod, up, movefocus, u #"Navigate up" +bind = $mainMod, right, movefocus, r #"Navigate down" +bind = $mainMod, H, movefocus, l #"Navigate left" +bind = $mainMod, J, movefocus, d #"Navigate down" +bind = $mainMod, K, movefocus, u #"Navigate up" +bind = $mainMod, L, movefocus, r #"Navigate right" # Move active window around workspaces with mainMod + SHIFT + arrow keys -bind = $mainMod SHIFT, left, movewindow, l -bind = $mainMod SHIFT, down, movetoworkspace, +1 -bind = $mainMod SHIFT, up, movetoworkspace, -1 -bind = $mainMod SHIFT, right, movewindow, r -bind = $mainMod SHIFT, H, movewindow, l -bind = $mainMod SHIFT, J, movetoworkspace, +1 -bind = $mainMod SHIFT, K, movetoworkspace, -1 -bind = $mainMod SHIFT, L, movewindow, r +bind = $mainMod SHIFT, left, movewindow, l #"Move window left" +bind = $mainMod SHIFT, down, movetoworkspace, +1 #"Move window to left workspace" +bind = $mainMod SHIFT, up, movetoworkspace, -1 #"Move window to right workspace" +bind = $mainMod SHIFT, right, movewindow, r #"Move window right" +bind = $mainMod SHIFT, H, movewindow, l #"Move window left" +bind = $mainMod SHIFT, J, movetoworkspace, +1 #"Move window to left workspace" +bind = $mainMod SHIFT, K, movetoworkspace, -1 #"Move window to right workspace" +bind = $mainMod SHIFT, L, movewindow, r #"Move window right" # 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 +bind = $mainMod, 1, workspace, 1 #"Move to workspace 1" +bind = $mainMod, 2, workspace, 2 #"Move to workspace 2" +bind = $mainMod, 3, workspace, 3 #"Move to workspace 3" +bind = $mainMod, 4, workspace, 4 #"Move to workspace 4" +bind = $mainMod, 5, workspace, 5 #"Move to workspace 5" +bind = $mainMod, 6, workspace, 6 #"Move to workspace 6" +bind = $mainMod, 7, workspace, 7 #"Move to workspace 7" +bind = $mainMod, 8, workspace, 8 #"Move to workspace 8" +bind = $mainMod, 9, workspace, 9 #"Move to workspace 9" +bind = $mainMod, 0, workspace, 10 #"Move to 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 +bind = $mainMod SHIFT, 1, movetoworkspace, 1 #"Move window to workspace 1" +bind = $mainMod SHIFT, 2, movetoworkspace, 2 #"Move window to workspace 2" +bind = $mainMod SHIFT, 3, movetoworkspace, 3 #"Move window to workspace 3" +bind = $mainMod SHIFT, 4, movetoworkspace, 4 #"Move window to workspace 4" +bind = $mainMod SHIFT, 5, movetoworkspace, 5 #"Move window to workspace 5" +bind = $mainMod SHIFT, 6, movetoworkspace, 6 #"Move window to workspace 6" +bind = $mainMod SHIFT, 7, movetoworkspace, 7 #"Move window to workspace 7" +bind = $mainMod SHIFT, 8, movetoworkspace, 8 #"Move window to workspace 8" +bind = $mainMod SHIFT, 9, movetoworkspace, 9 #"Move window to workspace 9" +bind = $mainMod SHIFT, 0, movetoworkspace, 10 #"Move window to workspace 10" # Example special workspace (scratchpad) -bind = $mainMod, S, togglespecialworkspace, magic -bind = $mainMod SHIFT, S, movetoworkspace, special:magic +bind = $mainMod, S, togglespecialworkspace, magic #"Toggle scratchpad" +bind = $mainMod SHIFT, S, movetoworkspace, special:magic #"Move to scratchpad" # Scroll through existing workspaces with mainMod + scroll -bind = $mainMod, mouse_down, workspace, e+1 -bind = $mainMod, mouse_up, workspace, e-1 +bind = $mainMod, mouse_down, workspace, e+1 #"Scroll forward through workspaces" +bind = $mainMod, mouse_up, workspace, e-1 #"Scroll backwards through workspaces" # Move/resize windows with mainMod + LMB/RMB and dragging -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow +bindm = $mainMod, mouse:272, movewindow #"Move the window" +bindm = $mainMod, mouse:273, resizewindow #"Resize the window" # Media key bindings -binde=, XF86AudioRaiseVolume, exec, noctalia-shell ipc call volume increase -binde=, XF86AudioLowerVolume, exec, noctalia-shell ipc call volume decrease -binde=, XF86AudioMute, exec, noctalia-shell ipc call volume muteOutput +binde=, XF86AudioRaiseVolume, exec, noctalia-shell ipc call volume increase #"Increase volume" +binde=, XF86AudioLowerVolume, exec, noctalia-shell ipc call volume decrease #"Decrease volume" +binde=, XF86AudioMute, exec, noctalia-shell ipc call volume muteOutput #"Mute volume" diff --git a/dot_config/hypr/hyprland.conf b/dot_config/hypr/hyprland.conf index df7c662..0db657e 100644 --- a/dot_config/hypr/hyprland.conf +++ b/dot_config/hypr/hyprland.conf @@ -1,4 +1,4 @@ -exec-once = noctalia-shell # Here for now, until they fix systemd launching +exec-once = qs -c noctalia-shell # Here for now, until they fix systemd launching # Some default env vars. env = XDG_CURRENT_DESKTOP,Hyprland @@ -18,17 +18,17 @@ $noteManagerSearch = walker-obsidian-search $literatureManager = zotero $localDocs = zeal $musicPlayer = spotify -$bluetoothManager = noctalia-shell ipc call controlCenter toggle +$bluetoothManager = qs -c noctalia-shell ipc call controlCenter toggle $officeSuite = onlyoffice-desktopeditors $fileManager = thunar $perfMonitor = missioncenter $terminalBackup = kitty $screenshot = hyprshot --mode region -o ~/Pictures/Screenshot/ -$lockscreen = noctalia-shell ipc call lockScreen lock -$powerMenu = noctalia-shell ipc call sessionMenu toggle +$lockscreen = qs -c noctalia-shell ipc call lockScreen lock +$powerMenu = qs -c noctalia-shell ipc call sessionMenu toggle $colorpicker = hyprpicker -a $emojipicker = walker -m symbols -$cheatsheet = noctalia-shell ipc call plugin:keybind-cheatsheet toggle +$cheatsheet = qs -c noctalia-shell ipc call plugin:keybind-cheatsheet toggle source = monitors.conf source = variables.conf diff --git a/dot_config/niri/config.kdl b/dot_config/niri/config.kdl new file mode 100644 index 0000000..7b0ec88 --- /dev/null +++ b/dot_config/niri/config.kdl @@ -0,0 +1,114 @@ +layout { + gaps 12 + focus-ring { + off + } + border { + width 2 + active-color "#7aa2f7" + inactive-color "#595959aa" + } + shadow { + softness 30 + spread 5 + offset x=0 y=5 + color "#0007" + } +} + +spawn-sh-at-startup "qs -c noctalia-shell" + +hotkey-overlay { + skip-at-startup +} + +screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png" + +binds { + // --------------------------------------------------------- + // Applications & Launchers + // --------------------------------------------------------- + Mod+Space { spawn "walker"; } + Mod+Q { spawn "ghostty" "+new-window"; } + Mod+W { spawn "vivaldi"; } + Mod+E { spawn "obsidian"; } + Mod+R { spawn "zotero"; } + Mod+T { spawn "zeal"; } + Mod+Y { spawn "spotify"; } + Mod+U { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "controlCenter" "toggle"; } + Mod+I { spawn "onlyoffice-desktopeditors"; } + Mod+O { spawn "thunar"; } + Mod+P { spawn "missioncenter"; } + Mod+S { spawn "kitty"; } + Mod+D { spawn "walker-obsidian-search"; } + + // --------------------------------------------------------- + // DE Functions + // --------------------------------------------------------- + Mod+Tab { spawn-sh "hyprshot --mode region -o ~/Pictures/Screenshot/"; } // Or replace with native `screenshot;` + Mod+Escape { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "lockScreen" "lock"; } + Mod+Shift+T { spawn "hyprpicker" "-a"; } + Mod+Period { spawn "walker" "-m" "symbols"; } + Mod+C { close-window; } + Mod+V { toggle-window-floating; } + Mod+M { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "sessionMenu" "toggle"; } + Mod+A { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "plugin:keybind-cheatsheet" "toggle"; } + + // --------------------------------------------------------- + // Media Controls + // --------------------------------------------------------- + XF86AudioRaiseVolume allow-when-locked=true { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "increase"; } + XF86AudioLowerVolume allow-when-locked=true { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "decrease"; } + XF86AudioMute allow-when-locked=true { spawn "qs" "-c" "noctalia-shell" "ipc" "call" "volume" "muteOutput"; } + + // --------------------------------------------------------- + // Navigation (The Niri Paradigm) + // Left/Right navigates columns, Up/Down navigates windows inside a column + // --------------------------------------------------------- + Mod+Left { focus-column-left; } + Mod+Down { focus-window-down; } + Mod+Up { focus-window-up; } + Mod+Right { focus-column-right; } + Mod+H { focus-column-left; } + Mod+J { focus-window-down; } + Mod+K { focus-window-up; } + Mod+L { focus-column-right; } + + // --------------------------------------------------------- + // Window Movement + // --------------------------------------------------------- + Mod+Shift+Left { move-column-left; } + Mod+Shift+Right { move-column-right; } + Mod+Shift+H { move-column-left; } + Mod+Shift+L { move-column-right; } + + Mod+Shift+Down { move-window-to-workspace-down; } + Mod+Shift+Up { move-window-to-workspace-up; } + Mod+Shift+J { move-window-to-workspace-down; } + Mod+Shift+K { move-window-to-workspace-up; } + + // --------------------------------------------------------- + // Workspaces + // --------------------------------------------------------- + Mod+1 { focus-workspace 1; } + Mod+2 { focus-workspace 2; } + Mod+3 { focus-workspace 3; } + Mod+4 { focus-workspace 4; } + Mod+5 { focus-workspace 5; } + Mod+6 { focus-workspace 6; } + Mod+7 { focus-workspace 7; } + Mod+8 { focus-workspace 8; } + Mod+9 { focus-workspace 9; } + + Mod+Shift+1 { move-window-to-workspace 1; } + Mod+Shift+2 { move-window-to-workspace 2; } + Mod+Shift+3 { move-window-to-workspace 3; } + Mod+Shift+4 { move-window-to-workspace 4; } + Mod+Shift+5 { move-window-to-workspace 5; } + Mod+Shift+6 { move-window-to-workspace 6; } + Mod+Shift+7 { move-window-to-workspace 7; } + Mod+Shift+8 { move-window-to-workspace 8; } + Mod+Shift+9 { move-window-to-workspace 9; } + + Mod+Shift+E { quit; } +} diff --git a/dot_config/noctalia/plugins.json b/dot_config/noctalia/plugins.json index 25f5400..87fa96f 100644 --- a/dot_config/noctalia/plugins.json +++ b/dot_config/noctalia/plugins.json @@ -8,10 +8,16 @@ ], "states": { "keybind-cheatsheet": { - "enabled": true + "enabled": true, + "sourceUrl": "https://github.com/noctalia-dev/noctalia-plugins" }, "privacy-indicator": { - "enabled": true + "enabled": true, + "sourceUrl": "https://github.com/noctalia-dev/noctalia-plugins" + }, + "screen-toolkit": { + "enabled": true, + "sourceUrl": "https://github.com/noctalia-dev/noctalia-plugins" } }, "version": 2 diff --git a/dot_config/noctalia/plugins/screen-toolkit b/dot_config/noctalia/plugins/screen-toolkit new file mode 120000 index 0000000..e871c94 --- /dev/null +++ b/dot_config/noctalia/plugins/screen-toolkit @@ -0,0 +1 @@ +/home/cianh/.config/nix/home-manager/core/dotfiles/dot_config/noctalia/plugins-repo/screen-toolkit \ No newline at end of file diff --git a/dot_config/noctalia/settings.json b/dot_config/noctalia/settings.json index 0d2a136..00ba971 100644 --- a/dot_config/noctalia/settings.json +++ b/dot_config/noctalia/settings.json @@ -36,7 +36,7 @@ "visualizerType": "linear", "volumeFeedback": true, "volumeFeedbackSoundFile": "", - "volumeOverdrive": false, + "volumeOverdrive": true, "volumeStep": 5 }, "bar": { @@ -103,7 +103,6 @@ "left": [ { "colorizeSystemIcon": "tertiary", - "colorizeSystemText": "none", "customIconPath": "", "enableColorization": true, "icon": "rocket", @@ -149,7 +148,7 @@ "maxWidth": 145, "scrollingMode": "hover", "showIcon": true, - "showText": true, + "showText": false, "textColor": "none", "useFixedWidth": false }, @@ -172,8 +171,32 @@ ], "right": [ { + "defaultSettings": { + "activeColor": "primary", + "enableToast": true, + "hideInactive": false, + "iconSpacing": 4, + "inactiveColor": "none", + "micFilterRegex": "", + "removeMargins": false + }, "id": "plugin:privacy-indicator" }, + { + "defaultSettings": { + "colorHistory": [ + ], + "detectedRecorder": "", + "installedLangs": [ + "eng" + ], + "paletteColors": [ + ], + "selectedOcrLang": "eng", + "transAvailable": false + }, + "id": "plugin:screen-toolkit" + }, { "blacklist": [ ], @@ -226,7 +249,6 @@ { "colorizeDistroLogo": false, "colorizeSystemIcon": "primary", - "colorizeSystemText": "none", "customIconPath": "", "enableColorization": true, "icon": "noctalia", @@ -265,7 +287,7 @@ "manualSunrise": "06:30", "manualSunset": "18:30", "monitorForColors": "", - "predefinedScheme": "Tokyo-Night", + "predefinedScheme": "Tokyo Night", "schedulingMode": "off", "syncGsettings": true, "useWallpaperColors": false @@ -591,15 +613,15 @@ "action": "logout", "command": "", "countdownEnabled": true, - "enabled": false, - "keybind": "" + "enabled": true, + "keybind": "4" }, { "action": "shutdown", "command": "", "countdownEnabled": true, "enabled": true, - "keybind": "4" + "keybind": "5" }, { "action": "rebootToUefi",