The settings UI is in plasma-desktop/componentchooser: kcms/componentchooser · master · Plasma / Plasma Desktop · GitLab
It uses KSharedConfig to open ~/.mimeapps.list
, KService to manage .desktop
files, and KApplicationTrader to manage the mimetypes themselves.
It’s actually a great showcase of how KDE Frameworks libraries make the lives of C++ developers easier.