-
List of PostgreSQL plugins.
Type
(function that evaluates to a(n) list of path) or (list of path) convertible to it
Default
Example
ps: with ps; [ postgis pg_repack ]
Declarations
-
Whether to enable Automatically migrate old data dir when major version of PostgreSQL
changes, using fc-postgresql/pg_upgrade.
The old data dir will be kept and has to be removed manually later.
You can run sudo -u postgres fc-postgresql prepare-autoupgrade
to
create the new data dir before upgrading PostgreSQL to reduce downtime
and the risk of failure. You have to add databases to expectedDatabases
or disable checkExpectedDatabases
to make this work.
.
Type
boolean
Default
false
Example
true
Declarations
-
Whether to enable Enable preconfigured PostgreSQL.
Type
boolean
Default
false
Example
true
Declarations
-
Check that only the databases specified by expectedDatabases
(and the standard internal databases) are present.
This is enabled by default and prevents auto-upgrades affecting
unexpected databases.
Type
boolean
Default
true
Declarations
-
List of databases that are expected to be present before upgrading.
If more databases are found, the upgrade will not run.
Type
list of string
Default
[ ]
Declarations
-
The major version of PostgreSQL to use (10, 11, 12, 13, 14).
-
Whether to enable local postgresql integration.
Type
boolean
Default
false
Example
true
Declarations
-
Whether to enable PostgreSQL Server.
Type
boolean
Default
false
Example
true
Declarations
-
Whether to enable PostgreSQL dumps.
Type
boolean
Default
false
Example
true
Declarations
-
Grants the user, created by the ensureUser attr, login permissions. From the postgres docs:
Only roles that have the LOGIN attribute can be used as
the initial role name for a database connection. A role
with the LOGIN attribute can be considered the same as a
“database user”. To create a role with login privilege,
use either:
CREATE ROLE name LOGIN; CREATE USER name;
(CREATE USER is equivalent to CREATE ROLE except that
CREATE USER includes LOGIN by default, while CREATE ROLE
does not.)
More information on postgres roles can be found here
Type
null or boolean
Default
null
: do not set. For newly created roles, use PostgreSQL's default. For existing roles, do not touch this clause.
Declarations
-
Ensures that the specified users exist.
The PostgreSQL users will be identified using peer authentication. This authenticates the Unix user with the
same name only, and that without the need for a password.
This option will never delete existing users or remove DB ownership of databases
once granted with ensureDBOwnership = true;
. This means that this must be
cleaned up manually when changing after changing the config in here.
Type
list of (submodule)
Default
[ ]
Example
[
{
name = "nextcloud";
}
{
name = "superuser";
ensureDBOwnership = true;
}
]
Declarations
-
PostgreSQL database name for the man.sr.ht service,
used if is true
.
Type
string
Default
"man.sr.ht"
Declarations
-
List of libraries to be preloaded.
Type
null or (string or (list of string) convertible to it)
Default
null
Example
[ "auto_explain" "anon" ]
Declarations
-
Require {command}pg_receivewal
to use an existing replication slot (see
Section 26.2.6 of the PostgreSQL manual).
When this option is used, {command}pg_receivewal
will report a flush position to the server,
indicating when each segment has been synchronized to disk so that the server can remove that segment if it is not otherwise needed.
When the replication client of {command}pg_receivewal
is configured on the server as a synchronous standby,
then using a replication slot will report the flush position to the server, but only when a WAL file is closed.
Therefore, that configuration will cause transactions on the primary to wait for a long time and effectively not work satisfactorily.
The option {option}synchronous
must be specified in addition to make this work correctly.
Type
string
Default
""
Example
"some_slot_name"
Declarations
-
Whether PostgreSQL should listen on all network interfaces.
If disabled, the database can only be accessed via its Unix
domain socket or via TCP connections to localhost.
Type
boolean
Default
false
Declarations