Although my main rig is connected to a DSL router, I like a lean, minimal and efficient system too. I prefer to use the Software Management module in YaST because there’s something to be said about graphically and interactively experimenting with package dependencies, and about the many ways YaST can display package information. After a fresh install and reboot, I usually first disable and uninstall whatever I won’t need (Plymouth, wicked, Baloo, NetworkManager, ntpd, Samba, smartd, sddm, all *-lang packages and so on, your mileage may vary). Whenever YaST thinks there are unresolved dependencies, I still can choose whether I’d like to keep it, risk dangling dependencies, uninstall those dependent packages as well — and/or set the packages to »taboo«.
Occasionally I check for any package recommendations via »Extras/Install All Matching Recommended Packages« (see screenshot), and I use the following commands to quickly log or look up what I had locked: