Improved error message when a required os lib is missing

Open
#1,651 1 comment 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@OKAN-SOFTWARE is already working on this.

Since Oct 30, 2026.

  • #1656 by @OKAN-SOFTWARE — open

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
55/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
github-actions, node.js, typescript, ubuntu

Research direction

Start by tracing the Node installation and verification flow in the action; the issue does not name specific files or tests. Check how the action handles a failed Node executable and whether it can identify a missing system library such as libatomic1. Done means a failure caused by a missing library gives a clearer error than exit code 127, with relevant tests covering that message.

Written by the indexing model from the issue text.

Description

feature request

Description:
When trying to upgrade our application from node 24 to 26 the setup node failed with the following error:

Run actions/setup-node@v7
Attempting to download 26.12.1...
Not found in manifest. Falling back to download directly from Node
Acquiring 26.12.1 - x64 from https://nodejs.org/dist/v26.12.1/node-v26.12.1-linux-x64.tar.gz
Extracting ...
/usr/bin/tar xz --strip 1 --warning=no-unknown-keyword --overwrite -C /home/runner/_work/_temp/80f11687-6f0f-4adc-850c-6c97cf44d2e0 -f /home/runner/_work/_temp/e4551be6-f2d4-4553-8e19-c7704a200d29
Adding to the cache ...
Done
Error: Node installation failed. Node may not be installed or not on PATH: The process '/home/runner/_work/_tool/node/26.12.1/x64/bin/node' failed with exit code 127

I figured out that our self hosted runners based on Ubuntu 24.04 did not have the required lib libatomic1 installed. After installing this it worked as expected. This was introduced as a requirement in node 25.

What would be great would be if the action could provide me with a better error message like. Node failed to install because of a missing system lib. Instead of exit code 127

Justification:
To make it easier to find out why the install failed.

Are you willing to submit a PR?

Yes

Dominant language
TypeScript
Stars
5k
Forks
1.7k
Avg merge
2d 4h
Merged PRs (30d)
1

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from actions/setup-node

All issues in actions/setup-node

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.