Files
dotfiles/modules/core/ui/login.py
T

32 lines
848 B
Python

from typing import Literal
import decman
from decman.plugins import pacman, systemd
class LoginManager(decman.Module):
def __init__(self, platform: Literal["desktop", "laptop"]):
"""Base packages that should never be uninstalled"""
self._platform: Literal["desktop", "laptop"] = platform
super().__init__("base")
@pacman.packages
def pkgs(self) -> set[str]:
if self._platform == "desktop":
return {
"greetd",
"greetd-tuigreet",
}
else:
return {"gdm"}
# TODO: Config files for laptop and desktop
# TODO: Consider dms greetd for desktop
@systemd.units
def units(self) -> set[str]:
if self._platform == "desktop":
return {"greetd.service"}
else:
return {"gdm.service"}