Вы кстати так и не ответили, как программа может дать юзеру выбрать шрифт.
Она редачит конфиги fontconfig чтоли?
не знаю, о чем речь, но программа может либо конкретный шрифт использовать, либо использовать семейство шрифтов, полагаясь на fontconfig, который в соответствии с конфигами дял отрисовки семейства шрифтов (например, sans-serif) сам выберет нужный шрифт