I use GDM on GNOME and for hyprland (tty 1) and servers, just the tty to login…
Edit, to clarify my Hyprland login it’s a script in /etc/profile.dcalled hyprland.sh containing;
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" == 1 ]; then
exec start-hyprland > /dev/null 2>&1
fi