Disable some unused parts of the system
These pieces are clearly not necessary and removing them makes the system closure a bit smaller. There are still many more pieces that *seem* like they should be unnecessary that get pulled into a build. However, these are only *build* time dependencies and it's somewhat harder to get rid of them: it requires either passing non-default arguments to the Nix expression defining the derivation (not too hard, only works where supported, determined on a case-by-case basis), modifying the Nix expressions themselves for each package to remove the unwanted dependencies (harder, only works where supported, determined on a case-by-case basis), or actually modifying the upstream software and/or its build system to eliminate the dependency (very hard, unlikely to be worth pursuing in general). Once we consider the runtime closure and the build time closure separately, our system sizes are not that bad - around 500MB (payment a little smaller, storage node a little bigger).
parent
e71ba8e6
Branches smaller-system-images
No related tags found
Checking pipeline status