diff --git a/machines/z790prors/configuration.nix b/machines/z790prors/configuration.nix index 3372f3d..56762a0 100644 --- a/machines/z790prors/configuration.nix +++ b/machines/z790prors/configuration.nix @@ -2,7 +2,7 @@ # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). -{ inputs, pkgs, ... }: +{ inputs, lib, pkgs, ... }: { imports = @@ -11,6 +11,7 @@ ../../roles/common/default.nix (import ../../roles/desktop/default.nix { x11Only = true; inherit inputs; inherit pkgs; }) ../../roles/kids/default.nix + (import ../../roles/kodi/default.nix { autologin = false; inherit lib; inherit pkgs; }) ../../roles/nfs-mounts/default.nix ../../roles/nix/default.nix ../../roles/printing/default.nix diff --git a/roles/desktop/default.nix b/roles/desktop/default.nix index 99c2004..c25f500 100644 --- a/roles/desktop/default.nix +++ b/roles/desktop/default.nix @@ -7,9 +7,8 @@ options = "caps:escape"; }; services.xserver.enable = true; - services.displayManager = { - sddm.enable = true; - sddm.wayland.enable = !x11Only; + services.xserver.displayManager = { + lightdm.enable = true; }; services.desktopManager.plasma6.enable = true; programs.hyprland = { diff --git a/roles/kodi/default.nix b/roles/kodi/default.nix new file mode 100644 index 0000000..72c0e91 --- /dev/null +++ b/roles/kodi/default.nix @@ -0,0 +1,26 @@ +{ autologin ? false, pkgs, ... }: + +{ + services.xserver.desktopManager.kodi = { + enable = true; + package = pkgs.kodi.withPackages (pkgs: with pkgs; [ + jellyfin + ]); + }; + users.extraUsers.kodi.isNormalUser = true; + + networking.firewall = { + allowedTCPPorts = [ 8080 ]; + allowedUDPPorts = [ 8080 ]; + }; + + services.displayManager = if autologin then { + autoLogin.enable = true; + autoLogin.user = "kodi"; + defaultSession = "kodi"; + } else {}; + services.xserver.displayManager = if autologin then { + lightdm.enable = true; + lightdm.greeter.enable = false; + } else {}; +}