supabase-postgres.git / summary / log / commit / refs

commit    d383df0bee43fca8ed55fc31f4da7c51874ec78d
Author:   Jean-François Roche <jfroche@pyxel.be>
Commit:   GitHub <noreply@github.com>
Date:     Tue Nov 11 01:58:35 2025 +0000

    feat: migrate from the DetSys Nix installer to the official Nix installer (#1874)
    
    * feat: migrate from the DetSys Nix installer to the official Nix installer
    
    Pin nix to v2.32.2
    
    chore: bump to release
    
    * chore: bump to release
    
    * chore: no release, just a core change but not related to features in release
    
    ---------
    
    Co-authored-by: Sam Rose <samuel@supabase.io>


Dockerfile-15 | 14 +++++++------- Dockerfile-17 | 11 ++++++----- Dockerfile-orioledb-17 | 11 ++++++----- .../files/admin_api_scripts/pg_upgrade_scripts/initiate.sh | 9 +++++---- ebssurrogate/scripts/qemu-bootstrap-nix.sh | 12 +++++++----- scripts/nix-provision.sh | 10 ++++++---- 6 files changed, 37 insertions(+), 30 deletions(-) diff --git a/Dockerfile-15 b/Dockerfile-15 index d6b25b0c..357119c4 100644 --- a/Dockerfile-15 +++ b/Dockerfile-15 @@ -52,19 +52,19 @@ RUN apt update -y && apt install -y \ RUN adduser --system --home /var/lib/postgresql --no-create-home --shell /bin/bash --group --gecos "PostgreSQL administrator" postgres RUN adduser --system --no-create-home --shell /bin/bash --group wal-g -RUN curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install linux \ ---init none \ ---no-confirm \ ---extra-conf "substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com" \ ---extra-conf "trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" - +RUN cat <<EOF > /tmp/extra-nix.conf +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EOF +RUN curl -L https://releases.nixos.org/nix/nix-2.32.2/install | sh -s -- --daemon --no-channel-add --yes --nix-extra-conf-file /tmp/extra-nix.conf ENV PATH="${PATH}:/nix/var/nix/profiles/default/bin" COPY . /nixpg WORKDIR /nixpg -RUN nix profile install .#psql_15/bin +RUN nix profile install .#psql_15/bin RUN nix store gc diff --git a/Dockerfile-17 b/Dockerfile-17 index c4c3d00e..9cf39713 100644 --- a/Dockerfile-17 +++ b/Dockerfile-17 @@ -54,11 +54,12 @@ RUN apt update -y && apt install -y \ RUN adduser --system --home /var/lib/postgresql --no-create-home --shell /bin/bash --group --gecos "PostgreSQL administrator" postgres RUN adduser --system --no-create-home --shell /bin/bash --group wal-g -RUN curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install linux \ ---init none \ ---no-confirm \ ---extra-conf "substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com" \ ---extra-conf "trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" +RUN cat <<EOF > /tmp/extra-nix.conf +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EOF +RUN curl -L https://releases.nixos.org/nix/nix-2.32.2/install | sh -s -- --daemon --no-channel-add --yes --nix-extra-conf-file /tmp/extra-nix.conf ENV PATH="${PATH}:/nix/var/nix/profiles/default/bin" diff --git a/Dockerfile-orioledb-17 b/Dockerfile-orioledb-17 index 28647298..53d64cae 100644 --- a/Dockerfile-orioledb-17 +++ b/Dockerfile-orioledb-17 @@ -54,11 +54,12 @@ RUN apt update -y && apt install -y \ RUN adduser --system --home /var/lib/postgresql --no-create-home --shell /bin/bash --group --gecos "PostgreSQL administrator" postgres RUN adduser --system --no-create-home --shell /bin/bash --group wal-g -RUN curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install linux \ ---init none \ ---no-confirm \ ---extra-conf "substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com" \ ---extra-conf "trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" +RUN cat <<EOF > /tmp/extra-nix.conf +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EOF +RUN curl -L https://releases.nixos.org/nix/nix-2.32.2/install | sh -s -- --daemon --no-channel-add --yes --nix-extra-conf-file /tmp/extra-nix.conf ENV PATH="${PATH}:/nix/var/nix/profiles/default/bin" diff --git a/ansible/files/admin_api_scripts/pg_upgrade_scripts/initiate.sh b/ansible/files/admin_api_scripts/pg_upgrade_scripts/initiate.sh index 1a602efd..446cd279 100755 --- a/ansible/files/admin_api_scripts/pg_upgrade_scripts/initiate.sh +++ b/ansible/files/admin_api_scripts/pg_upgrade_scripts/initiate.sh @@ -289,10 +289,11 @@ function initiate_upgrade { --extra-conf "trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" else echo "1.1.1. Installing Nix using the official installer" - - curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install --no-confirm \ - --extra-conf "substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com" \ - --extra-conf "trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=" + sh <(curl -L https://releases.nixos.org/nix/nix-2.32.2/install) --yes --daemon --nix-extra-conf-file /dev/stdin <<EXTRA_NIX_CONF +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EXTRA_NIX_CONF fi else echo "1.1. Nix is installed; moving on." diff --git a/ebssurrogate/scripts/qemu-bootstrap-nix.sh b/ebssurrogate/scripts/qemu-bootstrap-nix.sh index b64cf9fa..332cd335 100755 --- a/ebssurrogate/scripts/qemu-bootstrap-nix.sh +++ b/ebssurrogate/scripts/qemu-bootstrap-nix.sh @@ -82,11 +82,13 @@ execute_playbook #################### function install_nix() { - sudo su -c "curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install --no-confirm \ - --extra-conf \"substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com\" \ - --extra-conf \"trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=\" " -s /bin/bash root - . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh - + sudo su -c "sh <(curl -L https://releases.nixos.org/nix/nix-2.32.2/install) --yes --daemon --nix-extra-conf-file /dev/stdin <<EXTRA_NIX_CONF +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EXTRA_NIX_CONF" -s /bin/bash root + #shellcheck disable=SC1091 + . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh } function execute_stage2_playbook { diff --git a/scripts/nix-provision.sh b/scripts/nix-provision.sh index f114bc6b..9fbd3715 100644 --- a/scripts/nix-provision.sh +++ b/scripts/nix-provision.sh @@ -23,11 +23,13 @@ function install_packages { function install_nix() { - sudo su -c "curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install --no-confirm \ - --extra-conf \"substituters = https://cache.nixos.org https://nix-postgres-artifacts.s3.amazonaws.com\" \ - --extra-conf \"trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=\" " -s /bin/bash root + sudo su -c "sh <(curl -L https://releases.nixos.org/nix/nix-2.32.2/install) --yes --daemon --nix-extra-conf-file /dev/stdin <<EXTRA_NIX_CONF +extra-experimental-features = nix-command flakes +extra-substituters = https://nix-postgres-artifacts.s3.amazonaws.com +extra-trusted-public-keys = nix-postgres-artifacts:dGZlQOvKcNEjvT7QEAJbcV6b6uk7VF/hWMjhYleiaLI= +EXTRA_NIX_CONF" -s /bin/bash root + #shellcheck disable=SC1091 . /nix/var/nix/profiles/default/etc/profile.d/nix-daemon.sh - } [parent: f7bb8b08ce08]