53 lines
1.1 KiB
Nix
53 lines
1.1 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}:
|
|
{
|
|
options.custom = with lib; {
|
|
displaymanager = {
|
|
enable = mkEnableOption "Enable displaymanager";
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf config.custom.displaymanager.enable {
|
|
services = {
|
|
xserver = {
|
|
enable = true;
|
|
desktopManager = {
|
|
xterm.enable = false;
|
|
};
|
|
displayManager = {
|
|
lightdm = {
|
|
enable = true;
|
|
greeters.enso = {
|
|
enable = true;
|
|
};
|
|
};
|
|
session = [
|
|
{
|
|
manage = "window";
|
|
name = "hm";
|
|
start = ''
|
|
export CURRENT_XSESSION="hm"
|
|
${pkgs.stdenv.shell} $HOME/.xsession-hm &
|
|
waitPID=$!
|
|
'';
|
|
}
|
|
];
|
|
};
|
|
windowManager.i3 = {
|
|
enable = true;
|
|
extraPackages = with pkgs; [
|
|
dmenu
|
|
i3status
|
|
i3lock
|
|
];
|
|
};
|
|
};
|
|
xserver.xkb.layout = "us";
|
|
gnome.gnome-keyring.enable = true;
|
|
};
|
|
};
|
|
}
|