Is there a rule to store settings of Qt apps?

When you navigate to /home/config/settings, you can notice that Qt apps often have 2 folders there.
One has name of app (but not always), the other has often same name but in lower case.
For example, there is Gwenview and gwenview.
For some app, the lower case folder is located in the other. (I.e Otter does that)
Sometimes, the folder with “normal” name contains only a file QtProject.conf and real settings are in the folder wither lower case name but at least Qmmp does the opposite.
There seem to be no rules and at the end it is a bit confusing. It also contributes to users feeling that whole settings folder is a mess.
Is there a guide for these things people should follow when porting Qt apps?
In this case, where to find it? Should we report apps that are not folowing it? How and where?

You should talk to Gerasim Troeglazov, he is the guru of porting QT and QT apps. He is available at Telegram (@threedeyes) and occasionally on Haiku IRC channels.

Also on the forum as @3dEyes

i’m realized that too… some on my ported application show too… if there is fix guideline to unify … i’ll like to follow it

Why following qt settings ways? Is this really needed? We are on haiku and i think one settings folder for one program are enough. Many apps have only one file. Use the settings position as you say /boot/home/config, if you have more then one file create a folder with program name here.

This is due to a change in the name of the binary file (capitalization) after installation. Often this is done for a beautiful look of the application name in Deskbar. Due to the fact that in some cases programs form the path to settings in different ways. Sometimes they use the name of the application. Sometimes they use a file name.

i think if we agree use one format… let say MyFavoritAppName … so we can patch the source to match that rule

1 Like

Thanks all for your answers. I understand better the mess in settings folder.
That was really my point mazbrily, to have somewhere a guide that people can follow so it’s done the Haiku way. It’s in Haiku genes to not impose things but let’s say have a guideline written somewhere and strongly suggest to follow it.
As lelldorin says for Haiku apps a file or a folder with App name is enough, it should be the same for all apps whatever toolkit they are using. If you need more put that in a subfolder.
After, how you organize things inside that folder should be also unified. Create a document, something half a page long where you give few basic rules and examples of apps doing things right.
I really hope next guy asking a question about that can be answered with a link.

maybe @3dEyes can help “Standarize” it? …maybe on haikuport wiki so we will follow that rule so setting folder will be “more clean”

That seems to be a good place indeed.
I think Gerasim is pretty busy already with all kind of things…
So, if someone else could write it and make him a proposal that he has only to validate, it would be better.

Haiku sets the rules in the interface guidelines:

While there are lots of ways to store program settings, the easiest and recommended method is placing them in a BMessage and flattening it to a BFile. By using BMessages as your container, you don’t have to concern yourself with writing and debugging other code. The exact location used to store them depends on the number of files you will need. If your software needs only one file and will only ever need one, then it is just simplest to place it in the user’s config/settings folder. However, should you need more than one file, please put them in their own folder to minimize the clutter. The folder should either follow the format home/config/settings/your_app_name_here or home/config/settings/your_company_name_here/your_app_name_here.


i found that java apps add this kind of chaos too … it make .folder as application name to save its setting…
but it seem only can fix on jdk/jre port?