From 88be83b3656fdaa6ce31b1b68d601bb0b95923f5 Mon Sep 17 00:00:00 2001 From: Bobbie Soedirgo Date: Fri, 4 Sep 2026 15:16:13 +0800 Subject: [PATCH 1/4] feat(pgctld): bump to b0d11a0 --- flake.lock | 6 +++--- nix/packages/pgctld.nix | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/flake.lock b/flake.lock index 3a0c359bee..f0b72bcfca 100644 --- a/flake.lock +++ b/flake.lock @@ -118,11 +118,11 @@ "multigres": { "flake": false, "locked": { - "lastModified": 1785349416, - "narHash": "sha256-rHIfalPF5+P7innXfoP4cIH4EqzIMVP5qepGYb/iJpA=", + "lastModified": 1788278524, + "narHash": "sha256-7+Mt4T55oxmSd9UoSvir4Z2JzLm6ggVvzH9sgZWGx7E=", "owner": "multigres", "repo": "multigres", - "rev": "b713432298450dd0095498193e86d9f9a9f2c348", + "rev": "b0d11a0125275333187a1502e952c2655c594b0f", "type": "github" }, "original": { diff --git a/nix/packages/pgctld.nix b/nix/packages/pgctld.nix index 39dd195d3f..9bb7de424a 100644 --- a/nix/packages/pgctld.nix +++ b/nix/packages/pgctld.nix @@ -17,7 +17,7 @@ buildGo126Module { ''; # Tests require a running PostgreSQL instance (integration tests); skip in sandbox. doCheck = false; - vendorHash = "sha256-oRP1ZvRmE8eqYmJIuZSad3/BVicmAFkBJ4qSaiD6F0E="; + vendorHash = "sha256-J8Yjnwkwmk6kL0qsyGUgak9O26daYzly/1GwEwYn0IU="; meta = { description = "PostgreSQL control daemon for Multigres cluster lifecycle management"; From c607fc56bcd8fd41a890ad6d409a4fc48c7e92f1 Mon Sep 17 00:00:00 2001 From: Bobbie Soedirgo Date: Thu, 6 Aug 2026 20:50:19 +0800 Subject: [PATCH 2/4] feat(pgbackrest): bump tp 2.59.1 --- nix/packages/default.nix | 2 +- nix/packages/pg-backrest.nix | 23 +++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 nix/packages/pg-backrest.nix diff --git a/nix/packages/default.nix b/nix/packages/default.nix index b7ad2b205b..9cc337e9ff 100644 --- a/nix/packages/default.nix +++ b/nix/packages/default.nix @@ -74,7 +74,7 @@ overlayfs-on-package = pkgs.callPackage ./overlayfs-on-package.nix { }; packer = pkgs.callPackage ./packer.nix { inherit inputs; }; pg-activity = inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system}.pg_activity; - pg-backrest = inputs.nixpkgs.legacyPackages.${pkgs.stdenv.hostPlatform.system}.pgbackrest; + pg-backrest = pkgs.callPackage ./pg-backrest.nix { }; pgctld = pkgs.callPackage ./pgctld.nix { multigres-src = inputs.multigres; }; diff --git a/nix/packages/pg-backrest.nix b/nix/packages/pg-backrest.nix new file mode 100644 index 0000000000..f540e744d4 --- /dev/null +++ b/nix/packages/pg-backrest.nix @@ -0,0 +1,23 @@ +{ + fetchurl, + pgbackrest, +}: +pgbackrest.overrideAttrs ( + finalAttrs: prevAttrs: { + version = "2.59.1"; + + # Deliberately the release tarball rather than fetchFromGitHub. As of 2.59.0 + # upstream's .gitattributes marks /src/build as export-ignore, so the GitHub + # tag archive omits the code-generation tooling *and* the generated sources + # *and* the "dist" marker file — it simply cannot be built (meson fails with + # "File build/common/regExp.c does not exist"). + src = fetchurl { + url = "https://github.com/pgbackrest/pgbackrest/releases/download/release/${finalAttrs.version}/pgbackrest-${finalAttrs.version}.tar.gz"; + hash = "sha256-HNUir8M7j/hG74jFXcI4cXyciBek9sp8n2SIfenHQC0="; + }; + + # 2.59.0 adds an optional libsystemd dependency for systemd notify support. + # Nonexistent on darwin. + mesonFlags = (prevAttrs.mesonFlags or [ ]) ++ [ "-Dlibsystemd=disabled" ]; + } +) From 028fe03a46d8b6f3e47a51a5e1658d1cedcf0417 Mon Sep 17 00:00:00 2001 From: Bobbie Soedirgo <31685197+soedirgo@users.noreply.github.com> Date: Wed, 9 Sep 2026 02:03:39 +0800 Subject: [PATCH 3/4] fix: Update nix/packages/pg-backrest.nix Co-authored-by: Manuel Mendez <708570+mmlb@users.noreply.github.com> --- nix/packages/pg-backrest.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/nix/packages/pg-backrest.nix b/nix/packages/pg-backrest.nix index f540e744d4..33f55b9889 100644 --- a/nix/packages/pg-backrest.nix +++ b/nix/packages/pg-backrest.nix @@ -1,6 +1,9 @@ { fetchurl, + lib, pgbackrest, + stdenv, + systemdLibs, }: pgbackrest.overrideAttrs ( finalAttrs: prevAttrs: { @@ -18,6 +21,10 @@ pgbackrest.overrideAttrs ( # 2.59.0 adds an optional libsystemd dependency for systemd notify support. # Nonexistent on darwin. - mesonFlags = (prevAttrs.mesonFlags or [ ]) ++ [ "-Dlibsystemd=disabled" ]; + buildInputs = + (prevAttrs.buildInputs or [ ]) ++ lib.optional stdenv.hostPlatform.isLinux systemdLibs; + mesonFlags = (prevAttrs.mesonFlags or [ ]) ++ [ + (lib.mesonEnable "libsystemd" stdenv.hostPlatform.isLinux) + ]; } ) From 51320ae2a29f7c580c8d9cb9c707d70117e1753d Mon Sep 17 00:00:00 2001 From: Bobbie Soedirgo Date: Thu, 10 Sep 2026 20:08:49 +0800 Subject: [PATCH 4/4] chore: fetch pgbackrest from github --- nix/packages/pg-backrest.nix | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/nix/packages/pg-backrest.nix b/nix/packages/pg-backrest.nix index 33f55b9889..7cfff6c30f 100644 --- a/nix/packages/pg-backrest.nix +++ b/nix/packages/pg-backrest.nix @@ -1,5 +1,5 @@ { - fetchurl, + fetchFromGitHub, lib, pgbackrest, stdenv, @@ -9,14 +9,11 @@ pgbackrest.overrideAttrs ( finalAttrs: prevAttrs: { version = "2.59.1"; - # Deliberately the release tarball rather than fetchFromGitHub. As of 2.59.0 - # upstream's .gitattributes marks /src/build as export-ignore, so the GitHub - # tag archive omits the code-generation tooling *and* the generated sources - # *and* the "dist" marker file — it simply cannot be built (meson fails with - # "File build/common/regExp.c does not exist"). - src = fetchurl { - url = "https://github.com/pgbackrest/pgbackrest/releases/download/release/${finalAttrs.version}/pgbackrest-${finalAttrs.version}.tar.gz"; - hash = "sha256-HNUir8M7j/hG74jFXcI4cXyciBek9sp8n2SIfenHQC0="; + src = fetchFromGitHub { + owner = "pgbackrest"; + repo = "pgbackrest"; + rev = "release/${finalAttrs.version}"; + hash = "sha256-bCHjIQ0WIlvjGg1b4jNwWKzxLg+YIDswKx/Jt6EwAdQ="; }; # 2.59.0 adds an optional libsystemd dependency for systemd notify support.