niri, waybar, swaylock

This commit is contained in:
Matt Nish-Lapidus 2025-01-30 11:25:14 -05:00
parent f5a0090ea0
commit 41a49f8c2a
12 changed files with 383 additions and 246 deletions

View file

@ -3,6 +3,10 @@
// Check the wiki for a full description of the configuration:
// https://github.com/YaLTeR/niri/wiki/Configuration:-Overview
debug {
wait-for-frame-completion-before-queueing
}
input {
keyboard {
xkb {
@ -12,16 +16,16 @@ input {
touchpad {
natural-scroll
// accel-speed 0.2
// accel-profile "flat"
// scroll-method "two-finger"
// disabled-on-external-mouse
scroll-method "two-finger"
dwt
tap-button-map "left-right-middle"
click-method "clickfinger"
}
mouse {
natural-scroll
accel-speed 0.2
accel-profile "flat"
accel-speed 0.1
accel-profile "adaptive"
}
workspace-auto-back-and-forth
@ -34,23 +38,35 @@ output "eDP-1" {
transform "normal"
}
output "DP-3" {
output "PNP(BNQ) BenQ PD2725U N2N00414019" {
mode "3840x2160@59.997"
background-color "#000000"
scale 1.1
scale 1
transform "normal"
}
environment {
DISPLAY ":0"
//QT_QPA_PLATFORM "wayland"
QT_QPA_PLATFORM "wayland"
//XDG_CURRENT_DESKTOP "niri"
//XDG_SESSION_TYPE "wayland"
MOZ_ENABLE_WAYLAND "1"
}
/-switch-events {
lid-close { spawn "swaylock"; }
}
cursor {
xcursor-theme "Bibata-Modern-Classic"
xcursor-size 24
hide-after-inactive-ms 30000
}
layout {
gaps 10
center-focused-column "never"
always-center-single-column
preset-column-widths {
proportion 0.33333
proportion 0.5
@ -58,27 +74,34 @@ layout {
}
default-column-width { proportion 0.5; }
focus-ring {
off
//active-color "#d8bfffee"
active-gradient from="#d8bfffdd" to="#BD93FF99" angle=0 in="srgb-linear"
width 2
}
border {
active-color "#424242"
inactive-color "#323232"
width 1
//active-gradient from="#ffbb66aa" to="#ffc880aa" angle=45 in="oklch longer hue"
inactive-gradient from="#333333" to="#000000" angle=180 in="srgb-linear"
active-color "#000"
//inactive-color "#323232"
width 2
}
}
prefer-no-csd
workspace "main"
workspace "scratchpad"
// prefer-no-csd
// spawn-at-startup "mako"
// spawn-at-startup "fuzzel"
// spawn-at-startup "eww" "daemon"
spawn-at-startup "maestral_qt"
spawn-at-startup "xwayland-satellite" ":0"
spawn-at-startup "clipse" "-listen"
spawn-at-startup "waybar"
spawn-at-startup "eww" "daemon"
spawn-at-startup "swayosd-server"
spawn-at-startup "bitwarden"
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
@ -87,18 +110,19 @@ animations {
}
window-rule {
match app-id="plexamp"
match app-id="Calculator"
match app-id="Color Picker"
match app-id="Volume Control"
open-floating true
}
window-rule {
match app-id="Plexamp"
match app-id="scratchpad"
open-on-workspace "scratchpad"
open-floating true
}
// https://github.com/YaLTeR/niri/wiki/Configuration:-Window-Rules
// Work around WezTerm initial configure bug
// by setting an empty default-column-width.
window-rule {
match app-id=r#"^org\.wezfurlong\.wezterm$"#
default-column-width {}
}
// Open the Firefox picture-in-picture player as floating by default.
window-rule {
@ -110,25 +134,34 @@ window-rule {
}
window-rule {
geometry-corner-radius 12
geometry-corner-radius 8
clip-to-geometry true
}
/-window-rule {
match is-active=false
opacity 0.75
}
binds {
// shows a list of important hotkeys.
Mod+Shift+Slash { show-hotkey-overlay; }
// Suggested binds for running programs: terminal, app launcher, screen locker.
Mod+T { spawn "wezterm"; }
Mod+E { spawn "emacsclient"; }
Mod+Space { spawn "fuzzel"; }
Super+Alt+L { spawn "swaylock"; }
// Example volume keys mappings for PipeWire & WirePlumber.
// The allow-when-locked=true property makes them work even when the session is locked.
XF86AudioRaiseVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1-"; }
XF86AudioMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; }
XF86AudioRaiseVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "raise"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "swayosd-client" "--output-volume" "lower"; }
XF86AudioMute allow-when-locked=true { spawn "swayosd-client" "--output-volume" "mute-toggle"; }
XF86AudioMicMute allow-when-locked=true { spawn "swayosd-client" "--input-volume" "mute-toggle"; }
XF86MonBrightnessUp allow-when-locked=true { spawn "swayosd-client" "--brightness" "raise"; }
XF86MonBrightnessDown allow-when-locked=true { spawn "swayosd-client" "--brightness" "lower"; }
Mod+Q { close-window; }
@ -185,8 +218,8 @@ binds {
Mod+Page_Up { focus-workspace-up; }
Mod+U { focus-workspace-down; }
Mod+I { focus-workspace-up; }
Mod+Ctrl+Page_Down { move-column-to-workspace-down; }
Mod+Ctrl+Page_Up { move-column-to-workspace-up; }
Mod+Alt+Down { move-column-to-workspace-down; }
Mod+Alt+Up { move-column-to-workspace-up; }
Mod+Ctrl+U { move-column-to-workspace-down; }
Mod+Ctrl+I { move-column-to-workspace-up; }
@ -279,9 +312,9 @@ binds {
Mod+Shift+Equal { set-window-height "+10%"; }
// Move the focused window between the floating and the tiling layout.
Mod+X { toggle-window-floating; }
Mod+Ctrl+X { toggle-window-floating; }
// Mod+Shift+X { switch-focus-between-floating-and-tiling; }
Mod+Shift+X { focus-workspace "scratchpad"; }
Mod+X { focus-workspace "scratchpad"; }
// Actions to switch layouts.
// Note: if you uncomment these, make sure you do NOT have