feat: add parameter extraBasePkgs #12120#12121
Conversation
roberth
left a comment
There was a problem hiding this comment.
See comment, and needs tests and documentation.
| inherit name tag maxLayers uid gid uname gname; | ||
|
|
||
| contents = [ baseSystem ]; | ||
| contents = [ baseSystem ] ++ extraBasePkgs;; |
There was a problem hiding this comment.
iirc passing more than one element turns the whole root file system into a symlink farm.
I doubt that this is correct or intended.
There was a problem hiding this comment.
Could you elaborate on what this will change will cause? In my understanding, this is the intended way of how nix docker image building works.
There was a problem hiding this comment.
Only partly. We also need things in the root file system that aren't symlinks, such as /tmp and /var which are created as part of baseSystem.
There was a problem hiding this comment.
Yes, I understand. So how are additional packages interfering with this? Isn't this what's happening on NixOS every time I install a package?
I'm still trying to understand whether this PR makes sense or not. At the moment, I have trouble reconciling what you're saying with how I've been using nix dockerTools and my everyday NixOS.
There was a problem hiding this comment.
NixOS doesn't have a contents that fills the root file system. It sets up various parts of the root file system on installation, on boot, and on activation.
dockerTools is fairly low level and doesn't do many of the things NixOS does.
There was a problem hiding this comment.
Thank you for your feedback. Is there anything else that needs to be addressed to resolve this thread?
I don't think we have any tests for |
Fix intermittent SIGSEGV (exit code 139) on macOS when running nix-shell and shebang tests inside the nix sandbox. The foo, bar, and ruby test scripts were created without shebangs, which causes intermittent crashes when executed via command substitution on macOS. Adding proper shebangs resolves the flakiness. Potentially closes: NixOS#12121
Motivation
Adds support for additional base packages in the docker image.
Context
Solves #12120
Add 👍 to pull requests you find important.
The Nix maintainer team uses a GitHub project board to schedule and track reviews.