module: add wm

This module sets up window managers, and the common xorg configuration
between them.
This commit is contained in:
Infinidoge 2022-05-19 13:40:34 -04:00
parent 336ffb949b
commit 48e0ba19c2
8 changed files with 54 additions and 37 deletions

View file

@ -136,7 +136,6 @@
base = [
(with users; [ root infinidoge ])
];
graphic = base ++ [ graphical.qtile ];
develop = [
(with profiles.develop.programming; [

View file

@ -1,7 +1,7 @@
{ suites, profiles, pkgs, lib, ... }: {
imports = lib.lists.flatten [
(with suites; [
graphic
base
develop
])
@ -56,6 +56,7 @@
};
};
desktop = {
wm.enable = true;
gaming.enableAll = true;
};
virtualization.enable = true;

View file

@ -1,6 +1,6 @@
{ suites, profiles, pkgs, lib, ... }: {
imports = lib.lists.flatten [
(with suites; [ graphic ])
(with suites; [ base ])
(with profiles; [
networking.wireless
@ -44,6 +44,7 @@
};
};
desktop = {
wm.enable = true;
gaming = {
steam.enable = true;
polymc.enable = true;

View file

@ -1,6 +1,6 @@
{ suites, profiles, pkgs, lib, ... }: {
imports = lib.our.flattenListSet {
suites = with suites; [ graphic develop ];
suites = with suites; [ base develop ];
imports = [ ./hardware-configuration.nix ];
profiles = with profiles;
[
@ -26,6 +26,7 @@
services = {
proxy.enable = true;
};
desktop.wm.enable = true;
};
networking.interfaces.wlan0.useDHCP = true;

View file

@ -0,0 +1,46 @@
{ pkgs, lib, config, ... }:
with lib;
with lib.hlissner;
let
cfg = config.modules.desktop.wm;
in
{
options.modules.desktop.wm = {
enable = mkBoolOpt false;
qtile.enable = mkBoolOpt false;
};
config = mkIf cfg.enable (mkMerge [
{
info = {
graphical = mkDefault true;
monitors = mkDefault 1;
};
services.xserver = {
enable = true;
displayManager.lightdm.enable = true;
};
environment.systemPackages = with pkgs; flatten [
(with xorg; [
xwininfo
xprop
])
xsecurelock
blugon
];
}
(mkIf cfg.qtile.enable {
services.xserver.windowManager.qtile.enable = true;
info.env.wm = "qtile";
fonts.fonts = with pkgs; [
powerline-fonts
ubuntu_font_family
];
})
]);
}

View file

@ -1,16 +0,0 @@
{ pkgs, ... }: {
imports = [ ./xserver.nix ];
services.xserver.windowManager.qtile.enable = true;
info.env.wm = "qtile";
environment.systemPackages = with pkgs; [
xsecurelock
];
fonts.fonts = with pkgs; [
powerline-fonts
ubuntu_font_family
];
}

View file

@ -1,17 +0,0 @@
{ pkgs, lib, ... }: {
services.xserver = {
enable = true;
displayManager.lightdm.enable = true;
};
environment.systemPackages = with pkgs; lib.flatten [
(with xorg; [
xwininfo
xprop
])
blugon
];
info.monitors = lib.mkDefault 1;
}

View file

@ -86,6 +86,8 @@ in
};
};
desktop.wm.qtile.enable = true;
software.minipro.enable = true;
};