diff options
| author | Maximilian Bosch <maximilian@mbosch.me> | 2024-11-17 19:46:54 +0100 |
|---|---|---|
| committer | Maximilian Bosch <maximilian@mbosch.me> | 2024-11-22 17:01:36 +0100 |
| commit | 2995b3825e141887018569a48381b498baef1573 (patch) | |
| tree | 37af87bc224378c2f514bab1e4f3dca560175223 /pkgs/development/python-modules/python-openstackclient | |
| parent | 6306bb79b8fa53789e704745b772adade910c4a7 (diff) | |
nixos/pgbouncer: rework RFC42 integration
Commit bfb9d1825d545d96278db84d43e0b2a529775089 added RFC42 support
which is a good thing in general, but this implementation has the
following flaws:
* `services.pgbouncer.logFile` was not renamed to `[...].log_file`, but
to `[...].logfile`. Also the use of `mkRenamedOptionModule` is
inappropriate here because the two options are not equivalent: the old
option took a path relative to the home directory, the new an absolute
path.
* Using `mkRenamedOptionModule` with options that don't exist (but are
keys in a freeform attr-set or an `attrsOf X`), you get the following
error when referencing an option you didn't declare:
error: evaluation aborted with the following error message: 'Renaming error: option `services.pgbouncer.settings.pgbouncer.listen_port' does not exist.'
This error is pretty bad because it's not actionable for an end-user of
the module. A possible use-case is doing
networking.firewall.allowedTCPPorts = [ config.services.pgbouncer.listenPort ];
without specifying a custom listen port. This is an example of why you
want to keep options, they already contain defaults and you can re-use
those defaults in other parts of your system configuration.
I decided to re-add a bunch of options where I figured that it's
either useful to be able to address those in the NixOS configuration
or having documentation directly in the options' reference in the
NixOS manual.
I didn't add all options, I'll leave that to the maintainers of
pgbouncer.
Diffstat (limited to 'pkgs/development/python-modules/python-openstackclient')
0 files changed, 0 insertions, 0 deletions
