import decman from decman.plugins import pacman import config class Hyprland(decman.Module): def __init__(self): """Base packages that should never be uninstalled""" super().__init__("hyprland") @pacman.packages def pkgs(self) -> set[str]: return { "cliphist", # "grimblast", "hyprland", "hyprlock", "hypridle", "hyprshutdown", "hyprpwcenter", "hyprtoolkit", "hyprpolkitagent", "hyprpaper", "libappindicator", "rtkit", "wl-clipboard", "wev", "xdg-desktop-portal-hyprland", } def directories(self) -> dict[str, decman.Directory]: return { f"/home/{config.user}/.config/hypr": decman.Directory( "./config/hypr", owner=config.user, group=config.user ), f"/home/{config.user}/.config/wlogout": decman.Directory( "./config/wlogout", owner=config.user, group=config.user ) } def on_change(self, store: decman.Store): return super().on_change(store)