nix-config/modules/home/direnv/lib/postgres.sh
Bruno BELANYI 46df8b5b5b
All checks were successful
ci/woodpecker/push/check Pipeline was successful
home: direnv: lib: fix shellcheck directive
I like it better with a space in it.
2024-10-23 13:49:28 +00:00

23 lines
572 B
Bash

# shellcheck shell=bash
layout_postgres() {
if ! has postgres || ! has initdb; then
# shellcheck disable=2016
log_error 'layout_postgres: `postgres` and `initdb` are not in PATH'
return 1
fi
# shellcheck disable=2155
export PGDATA="$(direnv_layout_dir)/postgres"
export PGHOST="$PGDATA"
if [[ ! -d "$PGDATA" ]]; then
initdb
cat >> "$PGDATA/postgresql.conf" << EOF
listen_addresses = ''
unix_socket_directories = '$PGHOST'
EOF
echo "CREATE DATABASE $USER;" | postgres --single -E postgres
fi
}