We did a canvas cover of our headliner prior to installation. Nothing fancy, just the unbleached canvas & glued in place with an aerosol contact cement on the liner cloth (3M 90, has better hold). Painted the 1/8" BB headliner with a water base brushable (3M 30NF) contact cement. Luckily, we were in Tucson, so there were no problems with drying & tack to hold, just the usual worries about it sticking in the wrong place at the wrong time when setting for location. It's still holding up well, even in the heat it made a good bond & has stayed in place. The cloth was just raw unbleached canvas, so care was taken to handle it with clean fingers during the build & while using the camper.
I guess we could have put some fabric protection in place (Scotchgard), but I was concerned about the bond so it's still just raw canvas. Need to be careful about swatting the bugs at night. In aircraft work we used some raw silk for one headliner, white gloves & baseball hats were the rule. It was miserable stuff to work with, as it would stain if you looked at it, especially in the heat & in a small aircraft in the summer...
Here's the headliner prior to adding the cloth.

Here it is with the cloth, puckers in the middle is the vent opening.

Clamping the blocking for the vent hole.
