dotfiles-nixos/nixos/modules/i3.nix

44 lines
1.3 KiB
Nix
Raw Normal View History

2023-06-06 15:01:28 +00:00
{ config, lib, pkgs, ... }:
{
2023-06-06 17:25:40 +00:00
environment.pathsToLink = [ "/libexec" ]; # links /libexec from derivations to /run/current-system/sw
2023-06-06 15:01:28 +00:00
# Define the i3 window manager configuration
2023-06-06 15:19:23 +00:00
services.xserver = {
2023-06-06 15:01:28 +00:00
enable = true;
2023-06-06 15:19:23 +00:00
desktopManager = {
xterm.enable = false;
};
2023-06-08 13:15:47 +00:00
displayManager.defaultSession = "none+i3";
2023-06-10 08:59:31 +00:00
displayManager.lightdm.enable = true;
displayManager.autoLogin.enable = true;
displayManager.autoLogin.user = "mans";
2023-06-11 15:31:45 +00:00
displayManager.setupCommands = ''
${pkgs.xorg.xrandr}/bin/xrandr --output DP-4 --rate 144.00 --size 1920x1080 --right-of HDMI-0 --primary --output HDMI-0 --auto
'';
2023-06-06 15:19:23 +00:00
windowManager.i3 = {
enable = true;
extraPackages = with pkgs; [
dmenu #application launcher most people use
i3status # gives you the default i3 status bar
i3lock #default i3 screen locker
i3blocks #if you are planning on using i3blocks over i3status
];
};
2023-06-06 15:01:28 +00:00
layout = "us";
xkbVariant = "";
};
2023-06-10 08:59:31 +00:00
hardware.opengl.enable = true;
# Optionally, you may need to select the appropriate driver version for your specific GPU.
hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
# nvidia-drm.modeset=1 is required for some wayland compositors, e.g. sway
hardware.nvidia.modesetting.enable = true;
2023-06-06 15:01:28 +00:00
}
2023-06-10 08:59:31 +00:00