niri/noctalia settings

This commit is contained in:
elwrcl committed 2026-06-09 22:06:44 +03:00
1 parent 20ee3460c1
commit c8e8bc1821
7 files changed
+244 -310

No files matched your search

+2 -2
View File
@@ -1,9 +1,9 @@
{ pkgs, inputs, ... }:
{ config, pkgs, inputs, ... }:
{
imports = [ ./niri/default.nix ];
programs.niri = {
enable = true;
package = inputs.niri.packages.${pkgs.stdenv.hostPlatform.system}.niri;
};
}
-216
View File
@@ -1,216 +0,0 @@
// from hyprland
input {
keyboard {
xkb {
layout "tr"
}
repeat-delay 250
repeat-rate 35
}
mouse {
accel-speed 0
accel-profile "adaptive"
}
touchpad {
tap
natural-scroll
scroll-factor 0.5
click-method "clickfinger"
}
focus-follows-mouse
warp-mouse-to-focus
}
environment {
XCURSOR_THEME "Bibata-Modern-Classic"
XCURSOR_SIZE "24"
QT_STYLE_OVERRIDE "adwaita-dark"
GDK_BACKEND "wayland,x11"
QT_QPA_PLATFORM "wayland;xcb"
QT_QPA_PLATFORMTHEME "gtk3"
ELECTRON_OZONE_PLATFORM_HINT "auto"
TERMINAL "ghostty"
MESA_GL_VERSION_OVERRIDE "4.6"
MESA_GLSL_VERSION_OVERRIDE "460"
DISPLAY ":0"
}
spawn-at-startup "noctalia"
spawn-at-startup "xwayland-satellite"
spawn-at-startup "sh" "-c" "wl-paste --type text --watch cliphist store"
spawn-at-startup "sh" "-c" "wl-paste --type image --watch cliphist store"
prefer-no-csd
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
layout {
gaps 5
struts {
left 7
right 7
top 7
bottom 7
}
center-focused-column "never"
preset-column-widths {
proportion 0.33333
proportion 0.5
proportion 0.66667
}
default-column-width { proportion 0.5; }
focus-ring {
width 2
active-color "#61afef"
inactive-color "#444444"
}
border {
off
}
}
animations {
slowdown 0.8
}
binds {
// workspace navigation
Ctrl+Mod+Right { focus-workspace-down; }
Ctrl+Mod+Left { focus-workspace-up; }
Ctrl+Mod+Down { focus-workspace-down; }
Ctrl+Mod+Up { focus-workspace-up; }
Ctrl+Mod+Shift+Right { move-window-to-workspace-down; }
Ctrl+Mod+Shift+Left { move-window-to-workspace-up; }
Ctrl+Mod+Shift+Down { move-window-to-workspace-down; }
Ctrl+Mod+Shift+Up { move-window-to-workspace-up; }
// interface
Mod+Space { spawn "noctalia-shell" "ipc" "call" "launcher" "toggle"; }
Mod+P { spawn "noctalia-shell" "ipc" "call" "bar" "toggle"; }
Mod+Tab { toggle-overview; }
Ctrl+Alt+Delete { spawn "noctalia-shell" "ipc" "call" "sessionMenu" "toggle"; }
// noctalia plugins
Mod+Shift+S { spawn "noctalia-shell" "ipc" "call" "plugin:screen-shot-and-record" "screenshot"; }
Mod+Shift+Z { spawn "noctalia-shell" "ipc" "call" "plugin:screen-shot-and-record" "search"; }
Mod+Shift+X { spawn "noctalia-shell" "ipc" "call" "plugin:screen-shot-and-record" "ocr"; }
Mod+Shift+C { spawn "noctalia-shell" "ipc" "call" "plugin:music" "panel"; }
// launchers
Mod+Return { spawn "ghostty"; }
Mod+W { spawn "zen-beta"; }
Mod+E { spawn "dolphin"; }
Mod+Z { spawn "code"; }
Mod+Alt+V { spawn "pavucontrol"; }
Mod+Shift+V { spawn "noctalia-shell" "ipc" "call" "launcher" "clipboard"; }
Mod+Shift+L { spawn "noctalia-shell" "ipc" "call" "lockScreen" "lock"; }
Ctrl+Shift+Escape { spawn "ghostty" "-e" "sudo" "btop"; }
// window management
Mod+Q { close-window; }
Mod+Alt+Space { toggle-window-floating; }
Mod+F { fullscreen-window; }
Mod+D { maximize-column; }
// focus
Mod+Left { focus-column-left; }
Mod+Right { focus-column-right; }
Mod+Up { focus-window-up; }
Mod+Down { focus-window-down; }
// move windows
Mod+Shift+Left { move-column-left; }
Mod+Shift+Right { move-column-right; }
Mod+Shift+Up { move-window-up; }
Mod+Shift+Down { move-window-down; }
// workspaces by number
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+0 { focus-workspace 10; }
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+0 { move-window-to-workspace 10; }
// mouse workspace scroll
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
// media
Mod+Shift+N { spawn "playerctl" "next"; }
Mod+Shift+B { spawn "playerctl" "previous"; }
Mod+Shift+P { spawn "playerctl" "play-pause"; }
XF86AudioRaiseVolume allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "increase"; }
XF86AudioLowerVolume allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "decrease"; }
XF86AudioMute allow-when-locked=true { spawn "noctalia-shell" "ipc" "call" "volume" "muteOutput"; }
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_SOURCE@" "toggle"; }
XF86MonBrightnessUp { spawn "noctalia-shell" "ipc" "call" "brightness" "increase"; }
XF86MonBrightnessDown { spawn "noctalia-shell" "ipc" "call" "brightness" "decrease"; }
XF86AudioNext allow-when-locked=true { spawn "playerctl" "next"; }
XF86AudioPrev allow-when-locked=true { spawn "playerctl" "previous"; }
XF86AudioPlay allow-when-locked=true { spawn "playerctl" "play-pause"; }
XF86AudioPause allow-when-locked=true { spawn "playerctl" "play-pause"; }
}
window-rule {
match title=r#"Open File.*"#
open-floating true
}
window-rule {
match title=r#"Save As.*"#
open-floating true
}
window-rule {
match title=r#"File Upload.*"#
open-floating true
}
window-rule {
match app-id=r#"pavucontrol"#
open-floating true
default-column-width { fixed 800; }
}
window-rule {
match title=r#"(?i)picture.in.picture"#
open-floating true
}
window-rule {
match app-id=r#"steam"#
open-floating true
}
window-rule {
match app-id=r#"steam"# title="Steam"
open-floating false
}
+21 -17
View File
@@ -3,25 +3,29 @@
{
programs.niri.settings = {
input = {
keyboard.xkb.layout = "tr";
"repeat-delay" = 250;
"repeat-rate" = 35;
keyboard = {
xkb = {
layout = "tr";
};
repeat-delay = 250;
repeat-rate = 35;
};
mouse = {
"accel-speed" = 0.0;
"accel-profile" = "adaptive";
accel-speed = 0.0;
accel-profile = "adaptive";
};
touchpad = {
tap = true;
"natural-scroll" = true;
"scroll-factor" = 0.5;
"click-method" = "clickfinger";
natural-scroll = true;
scroll-factor = 0.5;
click-method = "clickfinger";
};
"focus-follows-mouse" = true;
"warp-mouse-to-focus" = true;
};
animations = {
slowdown = 0.8;
};
layout = {
gaps = 5;
struts = {
@@ -30,22 +34,22 @@
top = 7;
bottom = 7;
};
"center-focused-column" = "never";
"preset-column-widths" = [
center-focused-column = "never";
preset-column-widths = [
{ proportion = 0.33333; }
{ proportion = 0.5; }
{ proportion = 0.66667; }
];
"default-column-width" = {
default-column-width = {
proportion = 0.5;
};
"focus-ring" = {
focus-ring = {
width = 2;
"active-color" = "#61afef";
"inactive-color" = "#444444";
active.color = "#61afef";
inactive.color = "#444444";
};
border = {
off = true;
enable = false;
};
};
};
+82 -49
View File
@@ -4,27 +4,29 @@
programs.niri.settings = {
binds = {
# --- Workspace Navigation ---
"Ctrl+Mod+Right".action.focus-column-right = [];
"Ctrl+Mod+Left".action.focus-column-left = [];
"Ctrl+Mod+Down".action.focus-workspace-down = [];
"Ctrl+Mod+Up".action.focus-workspace-up = [];
"Ctrl+Mod+Right".action.focus-column-right = [ ];
"Ctrl+Mod+Left".action.focus-column-left = [ ];
"Ctrl+Mod+Down".action.focus-workspace-down = [ ];
"Ctrl+Mod+Up".action.focus-workspace-up = [ ];
"Ctrl+Mod+Shift+Right".action.move-column-right = [ ];
"Ctrl+Mod+Shift+Left".action.move-column-left = [ ];
"Ctrl+Mod+Shift+Down".action.move-window-to-workspace-down = [ ];
"Ctrl+Mod+Shift+Up".action.move-window-to-workspace-up = [ ];
"Ctrl+Mod+Shift+Right".action.move-column-right = [];
"Ctrl+Mod+Shift+Left".action.move-column-left = [];
"Ctrl+Mod+Shift+Down".action.move-window-to-workspace-down = [];
"Ctrl+Mod+Shift+Up".action.move-window-to-workspace-up = [];
"Ctrl+Mod+WheelScrollUp" = {
"cooldown-ms" = 150;
action.focus-column-right = [ ];
};
"Ctrl+Mod+WheelScrollDown" = {
"cooldown-ms" = 150;
action.focus-column-left = [ ];
};
# --- Interface ---
"Mod+Space".action.spawn = [ "noctalia" "msg" "panel-toggle" "launcher" ];
"Mod+P".action.spawn = [ "noctalia" "msg" "panel-toggle" "control-center" ];
"Mod+Tab".action.toggle-overview = [];
"Ctrl+Alt+Delete".action.spawn = [ "noctalia" "msg" "settings-toggle" ];
# --- Noctalia Plugins ---
"Mod+Shift+S".action.spawn = [ "noctalia" "msg" "plugin:screen-shot-and-record" "screenshot" ];
"Mod+Shift+Z".action.spawn = [ "noctalia" "msg" "plugin:screen-shot-and-record" "search" ];
"Mod+Shift+X".action.spawn = [ "noctalia" "msg" "plugin:screen-shot-and-record" "ocr" ];
"Mod+Shift+C".action.spawn = [ "noctalia" "msg" "panel-toggle" "music" ];
"Mod+Space".action.spawn-sh = "noctalia msg panel-toggle launcher";
"Mod+P".action.spawn-sh = "noctalia msg panel-toggle control-center";
"Mod+Tab".action.toggle-overview = [ ];
"Ctrl+Alt+Delete".action.spawn-sh = "noctalia msg settings-toggle";
# --- Launchers ---
"Mod+Return".action.spawn = [ "ghostty" ];
@@ -32,27 +34,32 @@
"Mod+E".action.spawn = [ "dolphin" ];
"Mod+Z".action.spawn = [ "code" ];
"Mod+Alt+V".action.spawn = [ "pavucontrol" ];
"Mod+Shift+V".action.spawn = [ "noctalia" "msg" "panel-toggle" "clipboard" ];
"Mod+Shift+L".action.spawn = [ "noctalia" "msg" "lock" ];
"Ctrl+Shift+Escape".action.spawn = [ "ghostty" "-e" "sudo" "btop" ];
"Mod+Shift+V".action.spawn-sh = "noctalia msg panel-toggle clipboard";
"Mod+Shift+L".action.spawn-sh = "noctalia msg lock";
"Ctrl+Shift+Escape".action.spawn = [
"ghostty"
"-e"
"sudo"
"btop"
];
# --- Window Management ---
"Mod+Q".action.close-window = [];
"Mod+Alt+Space".action.toggle-window-floating = [];
"Mod+F".action.fullscreen-window = [];
"Mod+D".action.maximize-column = [];
"Mod+Q".action.close-window = [ ];
"Mod+Alt+Space".action.toggle-window-floating = [ ];
"Mod+F".action.fullscreen-window = [ ];
"Mod+D".action.maximize-column = [ ];
# --- Focus ---
"Mod+Left".action.focus-column-left = [];
"Mod+Right".action.focus-column-right = [];
"Mod+Up".action.focus-window-up = [];
"Mod+Down".action.focus-window-down = [];
"Mod+Left".action.focus-column-left = [ ];
"Mod+Right".action.focus-column-right = [ ];
"Mod+Up".action.focus-window-up = [ ];
"Mod+Down".action.focus-window-down = [ ];
# --- Move Windows ---
"Mod+Shift+Left".action.move-column-left = [];
"Mod+Shift+Right".action.move-column-right = [];
"Mod+Shift+Up".action.move-window-up = [];
"Mod+Shift+Down".action.move-window-down = [];
"Mod+Shift+Left".action.move-column-left = [ ];
"Mod+Shift+Right".action.move-column-right = [ ];
"Mod+Shift+Up".action.move-window-up = [ ];
"Mod+Shift+Down".action.move-window-down = [ ];
# --- Workspaces by Number ---
"Mod+1".action.focus-workspace = 1;
@@ -80,52 +87,78 @@
# --- Mouse Workspace Scroll ---
"Mod+WheelScrollDown" = {
"cooldown-ms" = 150;
action.focus-workspace-down = [];
action.focus-workspace-down = [ ];
};
"Mod+WheelScrollUp" = {
"cooldown-ms" = 150;
action.focus-workspace-up = [];
action.focus-workspace-up = [ ];
};
# --- Media & Hardware Keys ---
"Mod+Shift+N".action.spawn = [ "playerctl" "next" ];
"Mod+Shift+B".action.spawn = [ "playerctl" "previous" ];
"Mod+Shift+P".action.spawn = [ "playerctl" "play-pause" ];
"Mod+Shift+N".action.spawn = [
"playerctl"
"next"
];
"Mod+Shift+B".action.spawn = [
"playerctl"
"previous"
];
"Mod+Shift+P".action.spawn = [
"playerctl"
"play-pause"
];
"XF86AudioRaiseVolume" = {
"allow-when-locked" = true;
action.spawn = [ "noctalia" "msg" "volume-up" ];
action.spawn-sh = "noctalia msg volume-up";
};
"XF86AudioLowerVolume" = {
"allow-when-locked" = true;
action.spawn = [ "noctalia" "msg" "volume-down" ];
action.spawn-sh = "noctalia msg volume-down";
};
"XF86AudioMute" = {
"allow-when-locked" = true;
action.spawn = [ "noctalia" "msg" "volume-mute" ];
action.spawn-sh = "noctalia msg volume-mute";
};
"XF86AudioMicMute" = {
"allow-when-locked" = true;
action.spawn = [ "wpctl" "set-mute" "@DEFAULT_SOURCE@" "toggle" ];
action.spawn = [
"wpctl"
"set-mute"
"@DEFAULT_SOURCE@"
"toggle"
];
};
"XF86MonBrightnessUp".action.spawn = [ "noctalia" "msg" "brightness-up" ];
"XF86MonBrightnessDown".action.spawn = [ "noctalia" "msg" "brightness-down" ];
"XF86MonBrightnessUp".action.spawn-sh = "noctalia msg brightness-up";
"XF86MonBrightnessDown".action.spawn-sh = "noctalia msg brightness-down";
"XF86AudioNext" = {
"allow-when-locked" = true;
action.spawn = [ "playerctl" "next" ];
action.spawn = [
"playerctl"
"next"
];
};
"XF86AudioPrev" = {
"allow-when-locked" = true;
action.spawn = [ "playerctl" "previous" ];
action.spawn = [
"playerctl"
"previous"
];
};
"XF86AudioPlay" = {
"allow-when-locked" = true;
action.spawn = [ "playerctl" "play-pause" ];
action.spawn = [
"playerctl"
"play-pause"
];
};
"XF86AudioPause" = {
"allow-when-locked" = true;
action.spawn = [ "playerctl" "play-pause" ];
action.spawn = [
"playerctl"
"play-pause"
];
};
};
};
}
}
@@ -9,7 +9,6 @@
security.wrappers = {
gsr-kms-server = {
source = "${pkgs.gpu-screen-recorder}/bin/gsr-kms-server";
capabilities = "cap_sys_admin+ep";
owner = "root";
group = "root";
permissions = "u+rx,g+rx,o+rx";