summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.config/iosevka-smooth/private-build-plans.toml93
-rw-r--r--.config/niri/config.kdl301
-rw-r--r--.config/niri/dms/alttab.kdl10
-rw-r--r--.config/niri/dms/binds.kdl0
-rw-r--r--.config/niri/dms/colors.kdl39
-rw-r--r--.config/niri/dms/cursor.kdl0
-rw-r--r--.config/niri/dms/layout.kdl22
-rw-r--r--.config/niri/dms/outputs.kdl13
-rw-r--r--.config/niri/dms/windowrules.kdl0
-rw-r--r--.config/niri/dms/wpblur.kdl9
10 files changed, 487 insertions, 0 deletions
diff --git a/.config/iosevka-smooth/private-build-plans.toml b/.config/iosevka-smooth/private-build-plans.toml
new file mode 100644
index 0000000..2fca1fc
--- /dev/null
+++ b/.config/iosevka-smooth/private-build-plans.toml
@@ -0,0 +1,93 @@
+[buildPlans.iosevka-smooth]
+family = "Iosevka Smooth"
+spacing = "normal"
+serifs = "sans"
+no-cv-ss = false
+export-glyph-names = true
+
+[buildPlans.iosevka-smooth.variants.design]
+capital-g = "toothless-corner-serifless-hooked"
+capital-k = "symmetric-touching-serifless"
+capital-q = "crossing"
+a = "double-storey-toothless-corner"
+b = "toothless-corner-serifless"
+d = "toothless-corner-serifless"
+g = "single-storey-earless-corner"
+i = "tailed-serifed"
+l = "tailed-serifed"
+m = "earless-corner-double-arch-serifless"
+n = "earless-corner-straight-serifless"
+p = "earless-corner-serifless"
+q = "earless-corner-straight-serifless"
+u = "toothless-corner-serifless"
+long-s = "bent-hook-middle-serifed-xh"
+eszet = "sulzbacher-descending"
+lower-delta = "flat-top"
+lower-mu = "toothless-corner-serifless"
+zero = "tall-slashed"
+two = "straight-neck"
+three = "flat-top"
+brace = "straight"
+ampersand = "et-toothless-corner"
+percent = "rings-continuous-slash"
+partial-derivative = "straight-bar"
+lower-eth = "straight-bar"
+micro-sign = "toothless-corner-serifless"
+lig-neq = "more-slanted"
+lig-equal-chain = "without-notch"
+lig-hyphen-chain = "without-notch"
+
+[buildPlans.iosevka-smooth.variants.italic]
+k = "straight-serifless"
+long-s = "flat-hook-tailed"
+eszet = "sulzbacher-tailed"
+
+[buildPlans.iosevka-smooth.ligations]
+inherits = "dlig"
+
+[buildPlans.iosevka-smooth-term]
+family = "Iosevka Smooth Term"
+spacing = "term"
+serifs = "sans"
+no-cv-ss = false
+export-glyph-names = true
+
+[buildPlans.iosevka-smooth-term.variants.design]
+capital-g = "toothless-corner-serifless-hooked"
+capital-k = "symmetric-touching-serifless"
+capital-q = "crossing"
+a = "double-storey-toothless-corner"
+b = "toothless-corner-serifless"
+d = "toothless-corner-serifless"
+g = "single-storey-earless-corner"
+i = "tailed-serifed"
+l = "tailed-serifed"
+m = "earless-corner-double-arch-serifless"
+n = "earless-corner-straight-serifless"
+p = "earless-corner-serifless"
+q = "earless-corner-straight-serifless"
+u = "toothless-corner-serifless"
+long-s = "bent-hook-middle-serifed-xh"
+eszet = "sulzbacher-descending"
+lower-delta = "flat-top"
+lower-mu = "toothless-corner-serifless"
+zero = "tall-slashed"
+two = "straight-neck"
+three = "flat-top"
+brace = "straight"
+ampersand = "et-toothless-corner"
+percent = "rings-continuous-slash"
+partial-derivative = "straight-bar"
+lower-eth = "straight-bar"
+micro-sign = "toothless-corner-serifless"
+lig-neq = "more-slanted"
+lig-equal-chain = "without-notch"
+lig-hyphen-chain = "without-notch"
+
+[buildPlans.iosevka-smooth-term.variants.italic]
+k = "straight-serifless"
+long-s = "flat-hook-tailed"
+eszet = "sulzbacher-tailed"
+
+[buildPlans.iosevka-smooth-term.ligations]
+inherits = "dlig"
diff --git a/.config/niri/config.kdl b/.config/niri/config.kdl
new file mode 100644
index 0000000..a8f3d7b
--- /dev/null
+++ b/.config/niri/config.kdl
@@ -0,0 +1,301 @@
+include "dms/alttab.kdl"
+include "dms/binds.kdl"
+include "dms/cursor.kdl"
+include "dms/layout.kdl"
+include "dms/outputs.kdl"
+include "dms/windowrules.kdl"
+include "dms/wpblur.kdl"
+
+// https://yalter.github.io/niri/Configuration:-Input
+input {
+ keyboard {
+ xkb {
+ layout "mango,mango,us"
+ variant "basic,swedish,basic"
+ options "lv3:switch,compose:ralt"
+ }
+
+ repeat-delay 360
+ repeat-rate 35
+ numlock
+ }
+
+ touchpad {
+ tap
+ dwt
+ drag true
+ natural-scroll
+ accel-speed 0.2
+ accel-profile "adaptive"
+ scroll-method "two-finger"
+ }
+
+ mouse {
+ natural-scroll
+ accel-speed 0.2
+ accel-profile "adaptive"
+ }
+
+ focus-follows-mouse
+ workspace-auto-back-and-forth
+}
+
+output "DP-2" {
+ focus-at-startup
+}
+
+layout {
+ gaps 12
+ background-color "#2B303B"
+
+ always-center-single-column
+ center-focused-column "on-overflow"
+
+ preset-column-widths {
+ proportion 0.33333
+ proportion 0.5
+ proportion 0.66667
+ }
+
+ default-column-width {
+ proportion 0.5
+ }
+
+ focus-ring {
+ off
+ }
+
+ border {
+ width 2
+ active-gradient from="#FAA14F" to="#B8F182" angle=150 relative-to="workspace-view"
+ inactive-color "#363C4A"
+ urgent-color "#841A11"
+ }
+
+ shadow {
+ on
+ draw-behind-window true
+
+ softness 30
+ spread 25
+ offset x=8 y=8
+ color "#0007"
+ }
+
+ default-column-display "tabbed"
+ tab-indicator {
+ hide-when-single-tab
+ width 4
+ length total-proportion=0.9
+ corner-radius 16
+ active-gradient from="#FAA14F" to="#B8F182" angle=150
+ inactive-color "#363C4A"
+ urgent-color "#841A11"
+ }
+}
+
+hotkey-overlay {
+ skip-at-startup
+}
+
+prefer-no-csd
+
+screenshot-path "~/media/gfx/screen/%Y-%m-%d_%H-%M-%S.png"
+
+// Animation settings.
+// The wiki explains how to configure individual animations:
+// https://yalter.github.io/niri/Configuration:-Animations
+animations {
+ // Uncomment to turn off all animations.
+ // off
+
+ // Slow down all animations by this factor. Values below 1 speed them up instead.
+ // slowdown 3.0
+}
+
+// Window rules let you adjust behavior for individual windows.
+// Find more information on the wiki:
+// https://yalter.github.io/niri/Configuration:-Window-Rules
+
+// Open the Firefox picture-in-picture player as floating by default.
+window-rule {
+ // This app-id regular expression will work for both:
+ // - host Firefox (app-id is "firefox")
+ // - Flatpak Firefox (app-id is "org.mozilla.firefox")
+ match app-id=r#"firefox$"# title="^Picture-in-Picture$"
+ open-floating true
+}
+
+// Example: block out two password managers from screen capture.
+// (This example rule is commented out with a "/-" in front.)
+/-window-rule {
+ match app-id=r#"^org\.keepassxc\.KeePassXC$"#
+ match app-id=r#"^org\.gnome\.World\.Secrets$"#
+
+ block-out-from "screen-capture"
+
+ // Use this instead if you want them visible on third-party screenshot tools.
+ // block-out-from "screencast"
+}
+
+// Example: enable rounded corners for all windows.
+// (This example rule is commented out with a "/-" in front.)
+/-window-rule {
+ geometry-corner-radius 12
+ clip-to-geometry true
+}
+
+binds {
+ Mod+Shift+Slash { show-hotkey-overlay; }
+ XF86Tools { spawn "emacsclient" "-ca" "emacs" "/home/thomas/.config"; }
+
+ /* Applikationer */
+ // Mod+C hotkey-overlay-title="Calculator" {
+ // spawn "qalculate-gtk"
+ // }
+ // Mod+E hotkey-overlay-title="Editor" {
+ // spawn "emacsclient" "-ca" "emacs"
+ // }
+ // Mod+M hotkey-overlay-title="Email" {
+ // spawn "foot" "aerc"
+ // }
+ // Mod+W hotkey-overlay-title="Web Browser" {
+ // spawn "firefox"
+ // }
+ Mod+Return hotkey-overlay-title="Terminal" {
+ spawn "foot"
+ }
+ Mod+Space hotkey-overlay-title="App Launcher" {
+ spawn "fuzzel" "-I" "--log-level=warning" "--show-actions"
+ }
+
+ /- Super+Alt+L hotkey-overlay-title="Screenlock" {
+ spawn "swaylock"
+ }
+
+ /* Ljudkontroll */
+ XF86AudioRaiseVolume allow-when-locked=true {
+ spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "0.1+" "-l" "1.0"
+ }
+ 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"
+ }
+
+ /* Mediakontroll */
+ XF86AudioPlay allow-when-locked=true {
+ spawn "playerctl" "play-pause"
+ }
+ XF86AudioStop allow-when-locked=true {
+ spawn "playerctl" "stop"
+ }
+ XF86AudioPrev allow-when-locked=true {
+ spawn "playerctl" "previous"
+ }
+ XF86AudioNext allow-when-locked=true {
+ spawn "playerctl" "next"
+ }
+
+ XF86MonBrightnessUp allow-when-locked=true {
+ spawn "brightnessctl" "--class=backlight" "set" "+10%"
+ }
+ XF86MonBrightnessDown allow-when-locked=true {
+ spawn "brightnessctl" "--class=backlight" "set" "10%-"
+ }
+
+ Mod+Q repeat=false { close-window; }
+
+ Mod+Left { focus-column-left; }
+ Mod+Down { focus-window-down; }
+ Mod+Up { focus-window-up; }
+ Mod+Right { focus-column-right; }
+ Mod+F { focus-column-right; }
+ Mod+B { focus-column-left; }
+ Mod+N { focus-window-down-or-top; }
+ Mod+P { focus-window-up-or-bottom; }
+
+ Mod+Ctrl+Left { move-column-left; }
+ Mod+Ctrl+Down { move-window-down; }
+ Mod+Ctrl+Up { move-window-up; }
+ Mod+Ctrl+Right { move-column-right; }
+ Mod+Ctrl+F { move-column-right; }
+ Mod+Ctrl+B { move-column-left; }
+ Mod+Ctrl+N { move-window-down; }
+ Mod+Ctrl+P { move-window-up; }
+
+ Mod+Home { focus-column-first; }
+ Mod+End { focus-column-last; }
+ Mod+Ctrl+Home { move-column-to-first; }
+ Mod+Ctrl+End { move-column-to-last; }
+ Mod+A { focus-column-first; }
+ Mod+E { focus-column-last; }
+ Mod+Ctrl+A { move-column-to-first; }
+ Mod+Ctrl+E { move-column-to-last; }
+
+ Mod+Shift+Left { focus-monitor-left; }
+ Mod+Shift+Down { focus-monitor-down; }
+ Mod+Shift+Up { focus-monitor-up; }
+ Mod+Shift+Right { focus-monitor-right; }
+
+ 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 { focus-workspace 1; }
+ Mod+Shift+2 { focus-workspace 2; }
+ Mod+Shift+3 { focus-workspace 3; }
+ Mod+Shift+4 { focus-workspace 4; }
+ Mod+Shift+5 { focus-workspace 5; }
+ Mod+Shift+6 { focus-workspace 6; }
+ Mod+Shift+7 { focus-workspace 7; }
+ Mod+Shift+8 { focus-workspace 8; }
+ Mod+Shift+9 { focus-workspace 9; }
+
+ Mod+Ctrl+1 { move-column-to-workspace 1; }
+ Mod+Ctrl+2 { move-column-to-workspace 2; }
+ Mod+Ctrl+3 { move-column-to-workspace 3; }
+ Mod+Ctrl+4 { move-column-to-workspace 4; }
+ Mod+Ctrl+5 { move-column-to-workspace 5; }
+ Mod+Ctrl+6 { move-column-to-workspace 6; }
+ Mod+Ctrl+7 { move-column-to-workspace 7; }
+ Mod+Ctrl+8 { move-column-to-workspace 8; }
+ Mod+Ctrl+9 { move-column-to-workspace 9; }
+ Mod+Ctrl+Shift+1 { move-column-to-workspace 1; }
+ Mod+Ctrl+Shift+2 { move-column-to-workspace 2; }
+ Mod+Ctrl+Shift+3 { move-column-to-workspace 3; }
+ Mod+Ctrl+Shift+4 { move-column-to-workspace 4; }
+ Mod+Ctrl+Shift+5 { move-column-to-workspace 5; }
+ Mod+Ctrl+Shift+6 { move-column-to-workspace 6; }
+ Mod+Ctrl+Shift+7 { move-column-to-workspace 7; }
+ Mod+Ctrl+Shift+8 { move-column-to-workspace 8; }
+ Mod+Ctrl+Shift+9 { move-column-to-workspace 9; }
+
+ Mod+Comma { consume-window-into-column; }
+ Mod+Period { expel-window-from-column; }
+
+ Mod+Ctrl+M { maximize-column; }
+ Mod+Ctrl+Shift+M { fullscreen-window; }
+ Mod+L { center-window; }
+ Mod+R { switch-preset-column-width; }
+ Mod+W { toggle-column-tabbed-display; }
+ Mod+O { toggle-overview; }
+
+ Print { screenshot; }
+ Ctrl+Print { screenshot-screen; }
+ Alt+Print { screenshot-window; }
+
+ Mod+Shift+Comma { focus-workspace-up; }
+ Mod+Shift+Period { focus-workspace-down; }
+
+ Mod+Ctrl+G allow-inhibiting=false { toggle-keyboard-shortcuts-inhibit; }
+}
diff --git a/.config/niri/dms/alttab.kdl b/.config/niri/dms/alttab.kdl
new file mode 100644
index 0000000..091ea07
--- /dev/null
+++ b/.config/niri/dms/alttab.kdl
@@ -0,0 +1,10 @@
+// ! DO NOT EDIT !
+ // ! AUTO-GENERATED BY DMS !
+ // ! CHANGES WILL BE OVERWRITTEN !
+ // ! PLACE YOUR CUSTOM CONFIGURATION ELSEWHERE !
+
+ recent-windows {
+ highlight {
+ corner-radius 12
+ }
+ }
diff --git a/.config/niri/dms/binds.kdl b/.config/niri/dms/binds.kdl
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/niri/dms/binds.kdl
diff --git a/.config/niri/dms/colors.kdl b/.config/niri/dms/colors.kdl
new file mode 100644
index 0000000..7e6101c
--- /dev/null
+++ b/.config/niri/dms/colors.kdl
@@ -0,0 +1,39 @@
+// ! Auto-generated file. Do not edit directly.
+// Remove `include "dms/colors.kdl"` from your config to override.
+
+layout {
+ background-color "transparent"
+
+ focus-ring {
+ active-color "#42a5f5"
+ inactive-color "#8c9199"
+ urgent-color "#f2b8b5"
+ }
+
+ border {
+ active-color "#42a5f5"
+ inactive-color "#8c9199"
+ urgent-color "#f2b8b5"
+ }
+
+ shadow {
+ color "#00000070"
+ }
+
+ tab-indicator {
+ active-color "#42a5f5"
+ inactive-color "#8c9199"
+ urgent-color "#f2b8b5"
+ }
+
+ insert-hint {
+ color "#42a5f580"
+ }
+}
+
+recent-windows {
+ highlight {
+ active-color "#0d47a1"
+ urgent-color "#f2b8b5"
+ }
+}
diff --git a/.config/niri/dms/cursor.kdl b/.config/niri/dms/cursor.kdl
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/niri/dms/cursor.kdl
diff --git a/.config/niri/dms/layout.kdl b/.config/niri/dms/layout.kdl
new file mode 100644
index 0000000..431afbf
--- /dev/null
+++ b/.config/niri/dms/layout.kdl
@@ -0,0 +1,22 @@
+// ! DO NOT EDIT !
+ // ! AUTO-GENERATED BY DMS !
+ // ! CHANGES WILL BE OVERWRITTEN !
+ // ! PLACE YOUR CUSTOM CONFIGURATION ELSEWHERE !
+
+ layout {
+ gaps 4
+
+ border {
+ width 2
+ }
+
+ focus-ring {
+ width 2
+ }
+ }
+ window-rule {
+ geometry-corner-radius 12
+ clip-to-geometry true
+ tiled-state true
+ draw-border-with-background false
+ }
diff --git a/.config/niri/dms/outputs.kdl b/.config/niri/dms/outputs.kdl
new file mode 100644
index 0000000..8a92851
--- /dev/null
+++ b/.config/niri/dms/outputs.kdl
@@ -0,0 +1,13 @@
+// Auto-generated by DMS - do not edit manually
+
+output "DP-2" {
+ mode "5120x1440@144.000"
+ scale 1
+ position x=0 y=0
+}
+
+output "eDP-1" {
+ mode "2256x1504@60.000"
+ scale 1
+ position x=1432 y=1440
+}
diff --git a/.config/niri/dms/windowrules.kdl b/.config/niri/dms/windowrules.kdl
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/.config/niri/dms/windowrules.kdl
diff --git a/.config/niri/dms/wpblur.kdl b/.config/niri/dms/wpblur.kdl
new file mode 100644
index 0000000..3d58802
--- /dev/null
+++ b/.config/niri/dms/wpblur.kdl
@@ -0,0 +1,9 @@
+// ! DO NOT EDIT !
+// ! AUTO-GENERATED BY DMS !
+// ! CHANGES WILL BE OVERWRITTEN !
+// ! PLACE YOUR CUSTOM CONFIGURATION ELSEWHERE !
+
+layer-rule {
+ match namespace="dms:blurwallpaper"
+ place-within-backdrop true
+}