8ae4854de8
Something I changed - perhaps removing lib.mkOptionDefault - caused the *default* i3 keybindings (things like switching workspaces and toggling the split layout which I had not added myself) not to get added. This adds them back. Change-Id: I301a346eabb4f7fc4499b60a4c26956fb1e08b0d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2218 Reviewed-by: glittershark <grfn@gws.fyi> Tested-by: BuildkiteCI
64 lines
1.7 KiB
Nix
64 lines
1.7 KiB
Nix
{ pkgs, lib, config, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
laptopKeyboardId = "25";
|
|
in {
|
|
imports = [
|
|
../platforms/linux.nix
|
|
../modules/common.nix
|
|
../modules/games.nix
|
|
../modules/rtlsdr.nix
|
|
../modules/ptt.nix
|
|
];
|
|
|
|
# for when hacking
|
|
programs.home-manager.path = "/home/grfn/code/home-manager";
|
|
programs.home-manager.enable = true;
|
|
home.stateVersion = "19.09";
|
|
|
|
system.machine = {
|
|
wirelessInterface = "wlp59s0";
|
|
i3FontSize = 9;
|
|
};
|
|
|
|
systemd.user.services.laptop-keyboard = {
|
|
Unit = {
|
|
Description = "Swap caps+escape and alt+super, but only on the built-in laptop keyboard";
|
|
After = [ "graphical-session-pre.target" ];
|
|
PartOf = [ "graphical-session.target" ];
|
|
};
|
|
|
|
Install = { WantedBy = [ "graphical-session.target" ]; };
|
|
|
|
Service = {
|
|
Type = "oneshot";
|
|
RemainAfterExit = true;
|
|
ExecStart = (
|
|
"${pkgs.xorg.setxkbmap}/bin/setxkbmap "
|
|
+ "-device ${laptopKeyboardId} "
|
|
+ "-option caps:swapescape "
|
|
+ "-option compose:ralt "
|
|
+ "-option altwin:swap_alt_win"
|
|
);
|
|
};
|
|
};
|
|
|
|
home.packages = with pkgs; [
|
|
steam
|
|
xorg.libxcb
|
|
(writeShellScriptBin "rebuild-mugwump" ''
|
|
set -eo pipefail
|
|
cd ~/code/depot
|
|
nix build -f . users.glittershark.system.system.mugwumpSystem -o /tmp/mugwump
|
|
nix copy -f . users.glittershark.system.system.mugwumpSystem \
|
|
--to ssh://mugwump
|
|
system=$(readlink -ef /tmp/mugwump)
|
|
ssh mugwump sudo nix-env -p /nix/var/nix/profiles/system --set $system
|
|
ssh mugwump sudo $system/bin/switch-to-configuration switch
|
|
'')
|
|
];
|
|
|
|
xsession.windowManager.i3.config.keybindings.F7 = "exec lock";
|
|
}
|