Preheat oven to 400˚F. Bring a pot of water to boil for pasta and cook 5 minutes in salted water. Drain.
In a skillet or saucepot, heat oil over medium heat. Add bacon and render 5 minutes, then add onions and garlic, cook 2-3 minutes to tender, and remove to plate. Add butter to pan, and when it foams, whisk in flour, dry mustard, salt and fine black or white pepper, then add room temperature or warm milk, thicken to coat spoon lightly and stir in Gruyere cheese. Add truffles and/or oil, if using. Add back bacon and pasta, and stir to coat.
Transfer to baking dish and top with Parm. Bake 30-35 minutes until brown and bubbly. Top with herbs, let stand 5-10 minutes, then serve.