From 4d856d3fd963069a68c049ae253d5e1703fa3489 Mon Sep 17 00:00:00 2001 From: Leo Date: Sat, 22 Aug 2026 16:37:57 +0300 Subject: [PATCH] Add postgreSQL initiation scripts to flake.nix --- .gitignore | 1 + flake.nix | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 0d2fe7e..5b6a52a 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ main tmp/ build-errors.log result +.devdata/ diff --git a/flake.nix b/flake.nix index 12fe563..243fbd5 100644 --- a/flake.nix +++ b/flake.nix @@ -12,7 +12,7 @@ system: let pkgs = import nixpkgs { inherit system; }; - go = pkgs.go_1_24; + go = pkgs.go_1_27; in { packages.default = pkgs.buildGoModule { @@ -60,6 +60,22 @@ shellHook = '' echo "go-backend dev shell — $(go version)" + + export PGDATA="$PWD/.devdata/pgdata" + export PGHOST="$PWD/.devdata/pgsocket" + + mkdir -p "$PGHOST" + + if [ ! -d "$PGDATA" ]; then + echo "Initializing Postgres data dir..." + initdb --auth=trust --no-locale --encoding=UTF8 -U postgres >/dev/null + fi + + pg_ctl status >/dev/null 2>&1 || pg_ctl start -l "$PWD/.devdata/pg.log" -o "-k $PGHOST -h 127.0.0.1 -p 5432" + + createdb -U postgres -h 127.0.0.1 backend_template 2>/dev/null || true + + alias pg_stop="pg_ctl stop" ''; };