3 pounds boneless pork shoulder roast, cut into 3-inch pieces
1/2 cup all-purpose flour
3 tablespoons olive oil
6 slices thick-cut bacon, diced
1 yellow onion, diced
3 carrots, diced
3 celery stalks, diced
4 cloves garlic, minced
8 ounces white button mushrooms, sliced
1 (28oz) can diced tomatoes, drained
3 tbsp tomato paste
1 cup red wine
1 cup chicken broth
2 pounds dried pasta
Generously season pork on all sides with salt and pepper. Dust with flour, shaking off any excess. Heat oil in a large Dutch oven over medium-high heat. Add pork pieces a few at a time, leaving room in between the pieces. Brown on all sides (about 5-8 minutes per side) then transfer to a plate, repeat with remaining pork pieces.
Add bacon to the pan and brown until crisp. Add onion, carrot, and celery and season with salt and pepper. Cook, stirring occasionally, until vegetables are tender and starting to brown. Add garlic and mushrooms and continue cooking until pan is almost dry.
Add tomatoes, tomato paste, wine, and chicken broth. Stir, scrapping up any darkened bits that have stuck to the bottom and incorporate tomato paste. Return pork to the pot and bring to a boil. Reduce heat to a simmer. Cover and simmer until pork easily pulls apart with a fork, about 3 hours.
When pork is tender, remove pork from the sauce and set aside to cool slightly in a bowl or on a cutting board. While pork is cooling, set a large pot of heavily salted water on to boil over high heat. Add pasta and cook according to package instructions.
While pasta is cooking, shred pork with 2 forks, or your fingers and return to the sauce. Drain pasta and return to pasta pot. Ladle sauce over pasta (you may not use all of it) and toss to combine. Serve with Parmesan cheese if desired.