Combine the ground black pepper, garlic and onion powder, thyme, oregano, sugar, chili powder, cayenne, smoked paprika, and cumin in a bowl, and set aside.
Place the pork roast on a large cutting board, fat cap side up. The fat layer covering the roast can vary in thickness, so trim the excess, leaving an ⅛-¼ inch layer on the outside to protect the meat as it cooks. Pat dry with paper towels.
Slather a thin, even coating of mustard on all sides so the seasonings stick to the pork.
Generously salt, then rub the entire roast with the dry rub, pressing it down to make it stick until every inch is covered with seasonings.
Place in an aluminum foil or stainless steel roasting pan and let it marinate, covered, for an hour or up to 24 hours in the refrigerator.
About an hour before smoking, take the roast out of the fridge to let it warm up slightly. Preheat the smoker or pellet grill to 250℉ (120℃).
Place the roast, fat-side up, directly on the smoker grates, and insert a probe into the thickest part to monitor the temperature (or check occasionally with an instant-read or digital thermometer).
Smoke it for 5-6 hours or until the internal temperature reaches 165-175℉ (75-80℃) and it has a good bark (that delicious crust that forms when the meat protein reacts with the smoke and spice rub).
Place the pork roast, fat side up, in an aluminum foil or stainless steel pan. Add the pineapple juice, hot sauce, the rest of the pork rub, and sliced onions.
Tightly cover with heavy-duty aluminum foil, put it back into the smoker, and continue smoking until the internal temperature reaches around 205℉ (96℃). You won't feel any resistance when you insert the thermometer or probe. Total smoking time takes about 10 hours, depending on the size of the roast.
Remove the roast from the smoker and let it rest for an hour or two for juicier results. If needed, keep it warm in a Styrofoam cooler without ice for 3-4 hours before shredding.
Drain the liquid from the pork, separate the fat from the juice, shred the pork, then mix the juices back in before serving.