2019-01-14 21:50:11 +00:00
|
|
|
{ config, lib, ... }:
|
|
|
|
|
|
|
|
with lib;
|
|
|
|
|
|
|
|
{
|
|
|
|
config = {
|
|
|
|
xsession.windowManager.i3 = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
config.keybindings =
|
|
|
|
let
|
|
|
|
modifier = config.xsession.windowManager.i3.config.modifier;
|
|
|
|
in
|
|
|
|
lib.mkOptionDefault {
|
|
|
|
"${modifier}+Left" = "overridden-command";
|
|
|
|
"${modifier}+Right" = null;
|
|
|
|
"${modifier}+Invented" = "invented-key-command";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2019-10-08 20:46:27 +00:00
|
|
|
nixpkgs.overlays = [
|
|
|
|
(self: super: {
|
|
|
|
dmenu = super.dmenu // {
|
|
|
|
outPath = "@dmenu@";
|
|
|
|
};
|
2019-01-14 21:50:11 +00:00
|
|
|
|
2019-10-08 20:46:27 +00:00
|
|
|
i3 = super.i3 // {
|
|
|
|
outPath = "@i3@";
|
|
|
|
};
|
2019-01-14 21:50:11 +00:00
|
|
|
|
2019-10-08 20:46:27 +00:00
|
|
|
i3status = super.i3status // {
|
|
|
|
outPath = "@i3status@";
|
|
|
|
};
|
|
|
|
})
|
|
|
|
];
|
2019-01-14 21:50:11 +00:00
|
|
|
|
2019-10-08 20:46:27 +00:00
|
|
|
nmt.script = ''
|
|
|
|
assertFileExists home-files/.config/i3/config
|
|
|
|
assertFileContent home-files/.config/i3/config \
|
|
|
|
${./i3-keybindings-expected.conf}
|
2019-01-14 21:50:11 +00:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|