[Questions / Feature] ability to `yum install` additional packages

Open
#229 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Stale
Tech stack
nodejs, shell

Research direction

Start by reviewing the .s2i/bin/assemble override and /usr/libexec/s2i/assemble, then reproduce the missing dependencies with ldd chrome | grep not. Determine whether the image supports a defined way to install additional system packages without sudo; done would be a documented or implemented approach that handles the Chromium dependencies.

Written by the indexing model from the issue text.

Description

question

Some npm packages have additional dependencies outside the npm scope. For example the puppeteer npm package will download a recent version of Chromium. Chromium in its place depends on packages being present on the system it runs on.

When running ldd chrome | grep not it comes clear that the required packages are missing in this s2i. For example; libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 etc...

  1. Are the any plans, or did I miss it in the docs how to install additional packages for the system? Via something similar as other s2i's have like a requirements.txt?
  2. I also came across the possibility to extend the assemble script but I doubt if that is the proper way... because it may require sudo... (?)

Extending the assemble script by creating an .s2i/bin/assemble in the source of my project and add something like;

echo "Before assembling"

yum install libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 ...

/usr/libexec/s2i/assemble
rc=$?

if [ $rc -eq 0 ]; then
    echo "After successful assembling"
else
    echo "After failed assembling"
fi

exit $rc
Dominant language
Shell
Stars
173
Forks
288
Avg merge
6d 1h
Merged PRs (30d)
1

Contributor guide

No contributing guide indexed for this repository

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 sclorg/s2i-nodejs-container

All issues in sclorg/s2i-nodejs-container

Similar issues

More Shell/Bash issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.