1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
{
config,
systemConfig,
lib,
...
}:
{
options.zaphyra.programs.niri.enable = lib.mkOption {
type = lib.types.bool;
default = systemConfig.modules.presets.graphical.enable;
};
imports = [
./binds.nix
./io.nix
./rules.nix
];
config = lib.mkIf config.zaphyra.programs.niri.enable {
programs.niri.settings = {
environment = {
QT_QPA_PLATFORM = "wayland";
QT_WAYLAND_FORCE_DPI = "physical";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
};
cursor.theme = config.gtk.cursorTheme.name;
prefer-no-csd = true;
workspaces = {
"001-browser".name = "browser";
"003-mail".name = "mail";
"003-terminal".name = "terminal";
"004-chat".name = "chat";
};
overview = {
workspace-shadow.enable = false;
};
layout = {
always-center-single-column = true;
gaps = 15;
background-color = "transparent";
default-column-width = {
proportion = 1.0;
};
focus-ring = {
width = 2;
inactive.color = "rgba(59, 135, 86, .9)";
active.color = "rgba(74, 169, 108, .9)";
};
tab-indicator = {
gaps-between-tabs = 10;
position = "top";
};
}
// (lib.genAttrs [ "preset-column-widths" "preset-window-heights" ] (_name: [
{ proportion = 1.0; }
{ proportion = 0.75; }
{ proportion = 0.5; }
{ proportion = 1.0 / 3.0; }
{ proportion = 0.25; }
]));
};
};
}