#Linux supported everything out of the box. Had a lot of fun getting all the tablet rotation, gestures, and on-screen keyboard working with #Sway. Rot8 for rotation, lisgd for gestures, squeekboard as keyboard, nwggrid as a launcher, and some minor libinput config got me there.
Sway might seem an odd choice as a minimalist tiling window manager, but its tabbed and stacked modes really suit the tablet use case where you generally want your apps fullscreen.