All the commands with sudo in front can be run from the root account or the chroot environment without writing sudo in front.
Configure the timezone
Information about timezones are stored in the /usr/share/zoneinfo/ directory. As I live in Dhaka, my zoneinfo file is located at /usr/share/zoneinfo/Asia/Dhaka.
sudo ln -sf /usr/share/zoneinfo/<timezone> /etc/localtime
Install fonts
Here we are installing a nerd font (I like Iosevka) and a Bangla font as because I am Bangladeshi.
sudo xbps-install xz unzip aria2
aria2c https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/Iosevka.tar.xz
aria2c https://ekushey.org/download-font?cp-ekushey-font-id=70
sudo mkdir -p /usr/share/fonts/iosevka
sudo mkdir -p /usr/share/fonts/solaimanlipi
sudo tar xvf Iosevka.tar.xz -C /usr/share/fonts/iosevka
sudo unzip SolaimanLipi.zip -d /usr/share/fonts/solaimanlipi
rm Iosevka.tar.xz SolaimanLipi.zip
Install necessary programs
sudo xbps-install mesa-dri elogind polkit Waybar wofi kitty chromium nwg-look pulseaudio pavucontrol network-manager-applet
Install hyprland
Add the hyprland repository
sudo echo "repository=https://raw.githubusercontent.com/Makrennel/hyprland-void/repository-x86_64-glibc" > /etc/xbps.d/hyprland-void.conf
Sync repositories
sudo xbps-install -S
Install hyprland and xdg-desktop-portal-hyprland
sudo xbps-install hyprland xdg-desktop-portal-hyprland
Enable necessary services
ln -s /etc/sv/elogind /etc/runit/runsvdir/default/
ln -s /etc/sv/polkitd /etc/runit/runsvdir/default/
Now reboot and after login type Hyprland in the tty and it will launch hyprland.