KDE应用程序中的配置文件

我正在编写一个使用KDE在软件中心销售的开源应用程序。 根据将应用程序上载到软件中心的要求 ,

将所有配置设置写入〜/ .config /(这可以是一个文件或包含多个配置文件的目录)

默认情况下,KDE应用程序似乎将配置文件存储在~/.kde/share/config/rc 。 这是不允许的? 如果是这样,我如何更改文件的存储位置? 我正在使用KConfig XT。 教程说

通过打开控制将存储数据的KConfig文件的标记来启动该文件。有三种可能性:

  1. 如果标记没有属性,则生成的代码将使用应用程序的默认KConfig文件(通常$HOME/.kde/config/rc )。
  2. “name”属性用于手动指定文件名。 如果分配给“name”的值不是绝对文件路径,则将在默认的KDE配置目录(通常是$HOME/.kde/config )中创建该文件。
  3. 如果您希望能够在构造时指定配置文件,请使用 。 这会导致生成的类的构造函数将KSharedConfig::Ptr作为参数,允许您构造指向不同文件的多个实例。

我已经尝试将name属性设置为~/.config/ ,但该位置没有文件,尽管仍在保存设置。 此外,当我设置name属性时,其他设置仍保存到~/.kde/share/config/rc ,例如窗口大小。

如何更改KDE应用程序的配置数据存储位置,以满足软件中心的上传要求?

如果您使用的是KConfig API,那么您的应用程序应该可以上传到MyApps并包含在商店中。

您也可以使用dconf, dconf-qt的Qt绑定,这将允许您将设置存储在dconf中,该设置位于~/.config/目录下。

另请注意, ~/.config/要求可能在这些要求中没有明确规定,因为它应该是$XDG_CONFIG_HOME ,其中~/.config/只是默认值,以及哪些用户可能决定更改为其他位置,以便它们下面的文件可以更容易地被它们访问。