From 30b87b47d53535e04e0ba5bae997df6ea7e94bfb Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Thu, 5 Feb 2026 12:21:44 +0000 Subject: [PATCH 1/7] Add nix installation --- prepare-runner/action.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index fd6b62a..695d1fe 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -5,6 +5,9 @@ inputs: enable_ccache: description: Whether ccache should be enabled required: true + install_nix: + description: Whether to install nix on the runner + default: "false" runs: using: composite @@ -83,6 +86,10 @@ runs: shell: bash run: git config --global --add safe.directory "$PWD" + - name: Install nix package manager + if: ${{ inputs.install_nix == 'true' }} + uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31 + - name: Set env variables (macOS) if: ${{ runner.os == 'macOS' }} shell: bash From c21753bc1bbbb903fa86496eec6b46199b90aa25 Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Thu, 5 Feb 2026 12:35:44 +0000 Subject: [PATCH 2/7] Install only for macos --- prepare-runner/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index 695d1fe..d64a2f7 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -87,8 +87,8 @@ runs: run: git config --global --add safe.directory "$PWD" - name: Install nix package manager - if: ${{ inputs.install_nix == 'true' }} - uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31 + if: ${{ runner.os == 'macOS' && inputs.install_nix == 'true' }} + uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0 - name: Set env variables (macOS) if: ${{ runner.os == 'macOS' }} From 4e6b8b376573e46a3b6261913df613f24e1712ec Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Fri, 6 Feb 2026 11:03:16 +0000 Subject: [PATCH 3/7] Add test. Always install nix on macos --- .github/workflows/test-prepare-runner.yml | 6 +++++- prepare-runner/action.yml | 5 +---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test-prepare-runner.yml b/.github/workflows/test-prepare-runner.yml index bec6069..69690e5 100644 --- a/.github/workflows/test-prepare-runner.yml +++ b/.github/workflows/test-prepare-runner.yml @@ -56,9 +56,13 @@ jobs: cmake --version conan --version ccache --version - # Rust is not installed in the Clio CI image. + # Rust and nix are not installed in the Clio CI image. if [[ ! "${{ matrix.container }}" =~ ghcr.io/xrplf/clio-ci ]]; then rustc --version + # Nix is only available on unix based systems + if [[ "${{ matrix.os }}" != "windows" ]]; then + nix --version + fi fi if [[ "${{ matrix.os }}" == "macos15" ]]; then diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index d64a2f7..3f373d6 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -5,9 +5,6 @@ inputs: enable_ccache: description: Whether ccache should be enabled required: true - install_nix: - description: Whether to install nix on the runner - default: "false" runs: using: composite @@ -87,7 +84,7 @@ runs: run: git config --global --add safe.directory "$PWD" - name: Install nix package manager - if: ${{ runner.os == 'macOS' && inputs.install_nix == 'true' }} + if: ${{ runner.os == 'macOS' }} uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0 - name: Set env variables (macOS) From 81aec0ae9936a4200af07efad0bd46133a698ef2 Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Fri, 6 Feb 2026 11:52:28 +0000 Subject: [PATCH 4/7] Investigate macos issue --- prepare-runner/action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index 3f373d6..8a86d3e 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -86,6 +86,8 @@ runs: - name: Install nix package manager if: ${{ runner.os == 'macOS' }} uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0 + with: + install_options: --no-daemon - name: Set env variables (macOS) if: ${{ runner.os == 'macOS' }} From 1e7a2c22bc161c3985dddf51eb6e27c05f511866 Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Fri, 6 Feb 2026 12:15:29 +0000 Subject: [PATCH 5/7] Try determinate systems action --- prepare-runner/action.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index 8a86d3e..9a3aef2 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -83,11 +83,18 @@ runs: shell: bash run: git config --global --add safe.directory "$PWD" + - name: Prepare for nix install + if: ${{ runner.os == 'macOS' }} + shell: bash + run: | + if [ ! -f /etc/fstab]; then + sudo touch /etc/fstab + fi + diskutil list + - name: Install nix package manager if: ${{ runner.os == 'macOS' }} uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0 - with: - install_options: --no-daemon - name: Set env variables (macOS) if: ${{ runner.os == 'macOS' }} From 19a260e288275d26ae42bc5f8ea4347ff2e8d464 Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Fri, 6 Feb 2026 12:27:38 +0000 Subject: [PATCH 6/7] Another try --- .github/workflows/test-prepare-runner.yml | 9 +++++---- prepare-runner/action.yml | 13 ------------- 2 files changed, 5 insertions(+), 17 deletions(-) diff --git a/.github/workflows/test-prepare-runner.yml b/.github/workflows/test-prepare-runner.yml index 69690e5..d2e5835 100644 --- a/.github/workflows/test-prepare-runner.yml +++ b/.github/workflows/test-prepare-runner.yml @@ -59,10 +59,11 @@ jobs: # Rust and nix are not installed in the Clio CI image. if [[ ! "${{ matrix.container }}" =~ ghcr.io/xrplf/clio-ci ]]; then rustc --version - # Nix is only available on unix based systems - if [[ "${{ matrix.os }}" != "windows" ]]; then - nix --version - fi + fi + + # Nix is only available on Linux in the XRPLF CI images + if [[ "${{ matrix.container }}" =~ ghcr.io/xrplf/clio-ci ]]; then + nix --version fi if [[ "${{ matrix.os }}" == "macos15" ]]; then diff --git a/prepare-runner/action.yml b/prepare-runner/action.yml index 9a3aef2..fd6b62a 100644 --- a/prepare-runner/action.yml +++ b/prepare-runner/action.yml @@ -83,19 +83,6 @@ runs: shell: bash run: git config --global --add safe.directory "$PWD" - - name: Prepare for nix install - if: ${{ runner.os == 'macOS' }} - shell: bash - run: | - if [ ! -f /etc/fstab]; then - sudo touch /etc/fstab - fi - diskutil list - - - name: Install nix package manager - if: ${{ runner.os == 'macOS' }} - uses: cachix/install-nix-action@4e002c8ec80594ecd40e759629461e26c8abed15 # v31.9.0 - - name: Set env variables (macOS) if: ${{ runner.os == 'macOS' }} shell: bash From da05c338ae6df5d930a32953bc49659c7ec33dd4 Mon Sep 17 00:00:00 2001 From: Sergey Kuznetsov Date: Fri, 6 Feb 2026 12:36:07 +0000 Subject: [PATCH 7/7] Check nix only on linux --- .github/workflows/test-prepare-runner.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test-prepare-runner.yml b/.github/workflows/test-prepare-runner.yml index d2e5835..6e5d51b 100644 --- a/.github/workflows/test-prepare-runner.yml +++ b/.github/workflows/test-prepare-runner.yml @@ -56,7 +56,7 @@ jobs: cmake --version conan --version ccache --version - # Rust and nix are not installed in the Clio CI image. + # Rust is not installed in the Clio CI image. if [[ ! "${{ matrix.container }}" =~ ghcr.io/xrplf/clio-ci ]]; then rustc --version fi