On Tue, 2015-05-05 at 12:33 +0200, Peter Meerwald wrote: > Hello Tanu, > > > > patch 4 implements a new .ifenv CLI meta command I found useful: executes commands > > > only when an environment variable exists (optionally with a certain value) > > > > Can you elaborate, what problem you solve with environment variables? Is > > there no reasonable alternative? Here is someone else's attempt at > > explaining why environment variables are not nice: > > http://peterlyons.com/problog/2010/02/environment-variables-considered-harmful > > thanks for taking a look :) > > I'm sure there are different ways of doing things... > > I found it useful to conditionally load either module A or module B (or > the same module with different parameters) in a sequence of modules that get > loaded in a custom script.pa > > I could have split up my script.pa into scriptA.pa and script.B and > specify using pulseaudio's -F parameter, and use .include's to avoid > duplication; or I could have scripted the PA commands elsewhere Is script.pa with the conditional part something that you only use on your own machine to easily switch between setups, or something that you use to manage product variants? I wouldn't want to encourage using environment variables to manage configuration variants in products or distros, but I don't see much harm in allowing that for local tinkering, and I don't have alternative solutions that would be equally easy to use. For handling configuration variation in distributions, I'd like to get support for loading configuration snippets from /etc/pulse/default.pa.d/ (the same applies to other configuration files too, and actually I'd like to move configuration away from the scriptable part to declarative configuration files). Different variants would ship the variant-specific part in a separate configuration package. > I have no strong opinion about that added feature; I guess one cannot make > the point that it is absolutely essential -- but the same thing can be > said about PA's script in general > > are you OK with the cleanups/fixes in patches 1 and 2? Patch 1 looks good. I commented on patch 2 in a separate mail. -- Tanu