mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-12-16 08:56:40 -05:00
client-conf, daemon-conf: enable .d directories
I want to enable client.conf.d, because in OpenEmbedded-core we have a graphical environment called Sato that runs as root. Sato needs to set allow-autospawn-for-root=true in client.conf, but the default configuration in OpenEmbedded-core should not set that option. With this patch, I can create a Sato-specific package that simply installs 50-sato.conf in /etc/pulse/client.conf.d without conflicting with the main client.conf coming from a different package. daemon.conf.d is enabled just because it would be strange to not support it while client.conf.d is supported.
This commit is contained in:
parent
1d7ce90139
commit
7b9fcc01f6
4 changed files with 35 additions and 13 deletions
|
|
@ -23,15 +23,26 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
<synopsis>
|
<synopsis>
|
||||||
<p><file>~/.config/pulse/client.conf</file></p>
|
<p><file>~/.config/pulse/client.conf</file></p>
|
||||||
|
<p><file>~/.config/pulse/client.conf.d/*.conf</file></p>
|
||||||
<p><file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file></p>
|
<p><file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file></p>
|
||||||
|
<p><file>@PA_DEFAULT_CONFIG_DIR@/client.conf.d/*.conf</file></p>
|
||||||
</synopsis>
|
</synopsis>
|
||||||
|
|
||||||
<description>
|
<description>
|
||||||
<p>The PulseAudio client library reads configuration directives from
|
<p>The PulseAudio client library reads configuration directives from
|
||||||
a file <file>~/.config/pulse/client.conf</file> on startup and when that
|
a configuration file on startup. If the per-user file
|
||||||
file doesn't exist from
|
<file>~/.config/pulse/client.conf</file> exists, it is used, otherwise the
|
||||||
<file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file>.</p>
|
system configuration file <file>@PA_DEFAULT_CONFIG_DIR@/client.conf</file>
|
||||||
|
is used. In addition to those main files, configuration directives can also
|
||||||
|
be put in files under directories
|
||||||
|
<file>~/.config/pulse/client.conf.d/</file> and
|
||||||
|
<file>@PA_DEFAULT_CONFIG_DIR@/client.conf.d/</file>. Those files have to
|
||||||
|
have the .conf file name extension, but otherwise the file names can be
|
||||||
|
chosen freely. The files under client.conf.d are processed in alphabetical
|
||||||
|
order. In case the same option is set in multiple files, the last file to
|
||||||
|
set an option overrides earlier files. The main client.conf file is
|
||||||
|
processed first, so options set in files under client.conf.d override the
|
||||||
|
main file.</p>
|
||||||
|
|
||||||
<p>The configuration file is a simple collection of variable
|
<p>The configuration file is a simple collection of variable
|
||||||
declarations. If the configuration file parser encounters either ;
|
declarations. If the configuration file parser encounters either ;
|
||||||
|
|
|
||||||
|
|
@ -23,18 +23,29 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
<synopsis>
|
<synopsis>
|
||||||
<p><file>~/.config/pulse/daemon.conf</file></p>
|
<p><file>~/.config/pulse/daemon.conf</file></p>
|
||||||
|
<p><file>~/.config/pulse/daemon.conf.d/*.conf</file></p>
|
||||||
<p><file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file></p>
|
<p><file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file></p>
|
||||||
|
<p><file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf.d/*.conf</file></p>
|
||||||
</synopsis>
|
</synopsis>
|
||||||
|
|
||||||
<description>
|
<description>
|
||||||
<p>The PulseAudio sound server reads configuration directives from
|
<p>The PulseAudio sound server reads configuration directives from
|
||||||
a file <file>~/.config/pulse/daemon.conf</file> on startup and when that
|
a configuration file on startup. If the per-user file
|
||||||
file doesn't exist from
|
<file>~/.config/pulse/daemon.conf</file> exists, it is used, otherwise the
|
||||||
<file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file>. Please note that the
|
system configuration file <file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf</file>
|
||||||
server also reads a configuration script on startup
|
is used. In addition to those main files, configuration directives can also
|
||||||
<file>default.pa</file> which also contains runtime configuration
|
be put in files under directories
|
||||||
directives.</p>
|
<file>~/.config/pulse/daemon.conf.d/</file> and
|
||||||
|
<file>@PA_DEFAULT_CONFIG_DIR@/daemon.conf.d/</file>. Those files have to
|
||||||
|
have the .conf file name extension, but otherwise the file names can be
|
||||||
|
chosen freely. The files under daemon.conf.d are processed in alphabetical
|
||||||
|
order. In case the same option is set in multiple files, the last file to
|
||||||
|
set an option overrides earlier files. The main daemon.conf file is
|
||||||
|
processed first, so options set in files under daemon.conf.d override the
|
||||||
|
main file.</p>
|
||||||
|
|
||||||
|
<p>Please note that the server also reads a configuration script on
|
||||||
|
startup. See <manref name="default.pa" section="5"/>.</p>
|
||||||
|
|
||||||
<p>The configuration file is a simple collection of variable
|
<p>The configuration file is a simple collection of variable
|
||||||
declarations. If the configuration file parser encounters either ;
|
declarations. If the configuration file parser encounters either ;
|
||||||
|
|
|
||||||
|
|
@ -617,7 +617,7 @@ int pa_daemon_conf_load(pa_daemon_conf *c, const char *filename) {
|
||||||
ci.default_channel_map_set = ci.default_sample_spec_set = false;
|
ci.default_channel_map_set = ci.default_sample_spec_set = false;
|
||||||
ci.conf = c;
|
ci.conf = c;
|
||||||
|
|
||||||
r = f ? pa_config_parse(c->config_file, f, table, NULL, false, NULL) : 0;
|
r = f ? pa_config_parse(c->config_file, f, table, NULL, true, NULL) : 0;
|
||||||
|
|
||||||
if (r >= 0) {
|
if (r >= 0) {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -149,7 +149,7 @@ void pa_client_conf_load(pa_client_conf *c, bool load_from_x11, bool load_from_e
|
||||||
|
|
||||||
f = pa_open_config_file(DEFAULT_CLIENT_CONFIG_FILE, DEFAULT_CLIENT_CONFIG_FILE_USER, ENV_CLIENT_CONFIG_FILE, &fn);
|
f = pa_open_config_file(DEFAULT_CLIENT_CONFIG_FILE, DEFAULT_CLIENT_CONFIG_FILE_USER, ENV_CLIENT_CONFIG_FILE, &fn);
|
||||||
if (f) {
|
if (f) {
|
||||||
pa_config_parse(fn, f, table, NULL, false, NULL);
|
pa_config_parse(fn, f, table, NULL, true, NULL);
|
||||||
pa_xfree(fn);
|
pa_xfree(fn);
|
||||||
fclose(f);
|
fclose(f);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue