128 lines
3.6 KiB
Nix
128 lines
3.6 KiB
Nix
{
|
|
modules,
|
|
inputs,
|
|
lib,
|
|
den,
|
|
...
|
|
}:
|
|
{
|
|
flake-file.inputs = {
|
|
niri-flake = {
|
|
url = "github:sodiboo/niri-flake";
|
|
inputs.nixpkgs.follows = "nixpkgs";
|
|
};
|
|
};
|
|
modules.niri = {
|
|
nixpkgs.overlays = [ inputs.niri-flake.overlays.niri ];
|
|
nixos =
|
|
{ pkgs, ... }:
|
|
{
|
|
programs.niri = {
|
|
enable = true;
|
|
package = pkgs.niri-unstable;
|
|
};
|
|
niri-flake.cache.enable = true;
|
|
};
|
|
homeManager =
|
|
{ pkgs, ... }:
|
|
{
|
|
imports = [ inputs.niri-flake.homeModules.niri ];
|
|
gtk.enable = lib.mkForce false;
|
|
home.packages = with pkgs; [ kickoff ];
|
|
programs = {
|
|
niri = {
|
|
enable = true;
|
|
# package = pkgs.niri-unstable;
|
|
settings = {
|
|
input = {
|
|
keyboard = {
|
|
xkb = {
|
|
layout = "gb";
|
|
};
|
|
numlock = true;
|
|
};
|
|
};
|
|
outputs = {
|
|
DP-3 = {
|
|
# Philips Consumer Electronics Company PHL 272E1GZ UK02101011104
|
|
mode = {
|
|
width = 1920;
|
|
height = 1080;
|
|
refresh = 165.0;
|
|
};
|
|
focus-at-startup = true;
|
|
variable-refresh-rate = true;
|
|
};
|
|
HDMI-A-1 = {
|
|
position = {
|
|
x = -1920;
|
|
y = 0;
|
|
};
|
|
scale = 1;
|
|
};
|
|
};
|
|
binds = {
|
|
# Navigation
|
|
"Mod+Shift+WheelScrollDown" = {
|
|
hotkey-overlay.title = "Workspace Down";
|
|
cooldown-ms = 150;
|
|
action.focus-workspace-down = [ ];
|
|
};
|
|
"Mod+Shift+WheelScrollUp" = {
|
|
hotkey-overlay.title = "Workspace Up";
|
|
cooldown-ms = 150;
|
|
action.focus-workspace-up = [ ];
|
|
};
|
|
"Mod+WheelScrollUp" = {
|
|
hotkey-overlay.title = "Workspace Left";
|
|
action.focus-column-right = [ ];
|
|
};
|
|
"Mod+WheelScrollDown" = {
|
|
hotkey-overlay.title = "Workspace Right";
|
|
action.focus-column-left = [ ];
|
|
};
|
|
"Super+Tab" = {
|
|
hotkey-overlay.title = "Overview";
|
|
action.toggle-overview = [ ];
|
|
};
|
|
# --
|
|
# Utility
|
|
"Super+S" = {
|
|
action.screenshot = [ ];
|
|
};
|
|
"Super+C" = {
|
|
action.close-window = [ ];
|
|
};
|
|
"Super+L" = {
|
|
action.spawn = "wlogout";
|
|
};
|
|
# Program Spawning
|
|
"Mod+E".action.spawn = "helium";
|
|
"Mod+R".action.spawn = "kickoff";
|
|
"Mod+Q".action.spawn = "kitty";
|
|
# --
|
|
};
|
|
window-rules = [
|
|
{
|
|
matches = [ ];
|
|
geometry-corner-radius = {
|
|
bottom-left = 3.0;
|
|
bottom-right = 3.0;
|
|
top-left = 3.0;
|
|
top-right = 3.0;
|
|
};
|
|
clip-to-geometry = true;
|
|
draw-border-with-background = false;
|
|
focus-ring.width = 2;
|
|
}
|
|
];
|
|
xwayland-satellite = {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|