I can't create postgis extension in single-user mode in postgres. But I can do that from pgadmin.
Is creating extension in single-user mode even possible? Can find any docs on that.
Full info on my question can be seen there.
Anyway, right now I have a comment on the PostgreSQL mailing list.
Why in the world would you think that's a good thing to do?
Single-user mode is a barely-documented disaster recovery aid. It's not meant for routine activity. There are a whole lot of behaviors you want that are turned off in single-user mode.
The specific reason why this doesn't work is this bit in heap_create_with_catalog:
/* * Decide whether to create an array type over the relation's rowtype. We * do not create any array types for system catalogs (ie, those made * during initdb). We do not create them where the use of a relation as * such is an implementation detail: toast tables, sequences and indexes. */ if (IsUnderPostmaster && (relkind == RELKIND_RELATION || relkind == RELKIND_VIEW || relkind == RELKIND_MATVIEW || relkind == RELKIND_FOREIGN_TABLE || relkind == RELKIND_COMPOSITE_TYPE)) new_array_oid = AssignTypeArrayOid();
We could possibly develop some other mechanism for detecting whether we're within the initdb sequence, but I can't get very excited about treating this as a bug. Single-user mode hasn't been considered a standard user environment since maybe the early 90s.