diff --git a/sddmauthhelper.cpp b/sddmauthhelper.cpp --- a/sddmauthhelper.cpp +++ b/sddmauthhelper.cpp @@ -39,6 +39,12 @@ static QSharedPointer openConfig(const QString &filePath) { + // if the sddm.conf.d folder doesn't exist we fail to set the right permissions for kde_settings.conf + QFileInfo fileLocation(filePath); + QDir dir(fileLocation.absolutePath()); + if (!dir.exists()) { + QDir().mkpath(dir.path()); + } QFile file(filePath); if(!file.exists()) { // If we are creating the config file, ensure it is world-readable: if