diff options
author | Sanchayan Maity <sanchayan@asymptotic.io> | 2020-09-02 19:19:07 +0530 |
---|---|---|
committer | Arun Raghavan <arun@arunraghavan.net> | 2020-11-23 22:07:36 +0000 |
commit | 45abd0b43c7901b375afcba6d9b0e1cca2f349a8 (patch) | |
tree | ae94702b02361a514a02a04b92bf336f64db1bf8 | |
parent | a28f2e7293a055588f7bba568b5049ff91b3aad0 (diff) | |
download | pulseaudio-45abd0b43c7901b375afcba6d9b0e1cca2f349a8.tar.gz |
Add default.pa.d folder support
The .include meta command already supports specifying a directory and
when including a directory, all files with the extension '.pa' in that
directory will be parsed in alphabetical order.
This feature can be used to add support for default.pa.d directory, so
that packages for other applications or users can just drop in a file
for configuration without changing the default.pa which is shipped.
We use the PA_DEFAULT_CONFIG_DIR for this, however, since meson quotes
this build variable, introduce an unquoted version for this purpose and
use it with .include.
Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/909
Signed-off-by: Sanchayan Maity <sanchayan@asymptotic.io>
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | meson.build | 1 | ||||
-rwxr-xr-x | src/daemon/default.pa.in | 5 | ||||
-rwxr-xr-x | src/daemon/system.pa.in | 5 |
4 files changed, 12 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index caabef6ed..6e6049fec 100644 --- a/configure.ac +++ b/configure.ac @@ -1394,6 +1394,7 @@ AC_DEFINE(PA_SOEXT, [".so"], [Shared object extension]) AC_SUBST(pulseconfdir, ["${sysconfdir}/pulse"]) AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR, pulseconfdir, [Location of configuration files]) +AX_DEFINE_DIR(PA_DEFAULT_CONFIG_DIR_UNQUOTED, pulseconfdir, [Location of configuration files]) #### Mac OSX specific stuff ##### diff --git a/meson.build b/meson.build index 1c671d32c..217ba0d85 100644 --- a/meson.build +++ b/meson.build @@ -136,6 +136,7 @@ cdata.set_quoted('PA_SRCDIR', join_paths(meson.current_source_dir(), 'src')) cdata.set_quoted('PA_BUILDDIR', meson.current_build_dir()) cdata.set_quoted('PA_SOEXT', '.so') cdata.set_quoted('PA_DEFAULT_CONFIG_DIR', pulsesysconfdir) +cdata.set('PA_DEFAULT_CONFIG_DIR_UNQUOTED', pulsesysconfdir) cdata.set_quoted('PA_BINARY', join_paths(bindir, 'pulseaudio')) cdata.set_quoted('PA_SYSTEM_RUNTIME_PATH', join_paths(localstatedir, 'run', 'pulse')) cdata.set_quoted('PA_SYSTEM_CONFIG_PATH', join_paths(localstatedir, 'lib', 'pulse')) diff --git a/src/daemon/default.pa.in b/src/daemon/default.pa.in index 030334f36..3468a89b9 100755 --- a/src/daemon/default.pa.in +++ b/src/daemon/default.pa.in @@ -173,3 +173,8 @@ load-module module-filter-apply ### Make some devices default #set-default-sink output #set-default-source input + +### Allow including a default.pa.d directory, which if present, can be used +### for additional configuration snippets. +.nofail +.include @PA_DEFAULT_CONFIG_DIR_UNQUOTED@/default.pa.d diff --git a/src/daemon/system.pa.in b/src/daemon/system.pa.in index 73e39ec93..1470e2368 100755 --- a/src/daemon/system.pa.in +++ b/src/daemon/system.pa.in @@ -60,3 +60,8 @@ load-module module-suspend-on-idle ### Enable positioned event sounds load-module module-position-event-sounds + +### Allow including a system.pa.d directory, which if present, can be used +### for additional configuration snippets. +.nofail +.include @PA_DEFAULT_CONFIG_DIR_UNQUOTED@/system.pa.d |