Android has native screen mirroring capabilities (when pulling down the status bar, there is a "cast" icon).
It uses for two technologies:
Miracast is an open standard, Google Cast is proprietary.
Google Cast requires "gapps" on LineageOS.
Linux implementations
List of applications: https://wiki.thingsandstuff.org/Networked_media#Miracast
Uses DIAL (www.dial-multiscreen.org, https://en.wikipedia.org/wiki/Discovery_and_Launch)
CASTv1 receiver implementations
Custom protocol
CASTv2 Receiver implementations
CAST v2 senders
List of applications: https://wiki.thingsandstuff.org/Networked_media#Google_Cast_.2F_Chromecast