Hi Guix, I’ve been recently thinking about how Guix relates to sobriety, its ecological impact, and more specially, on how Guix envisions to afford possible limitations on available resources in the times to come. I’m thinking here mainly about bandwidth, storage resources and energy consumption, but not only.
I wonder if this is something relevant, or even something we need to keep in mind as we move on: I haven’t found any related discussion about that matter in the logs. If sobriety is something we need to consider when contributing to Guix, I’d like to drop here a couple of ideas to help reducing the impact on the environment of the huge computing consumption carried on by Guix development and usage. First, tests: some take ages to execute. Do we really need this ? Upstream projects sometimes implement checking procedures which expands forever in massively parallel hardware, is this acceptable at all ? Try to build ‘python-lifelines’ to get a feeling of what I mean here. Proposal: we should maybe impose a limitation to the time tests take, as a rule. Then, package size: ‘emacs-calibredb’ is 5 GB. This is not an exception, but rather the norm, I’m afraid. Building packages, upgrading systems, etc. usually implies a huge storage plan. And this is getting worst. Proposal: first, make it explicit, ‘guix build/lint/shell’ should always return the size of the package, similarly to many other guix commands. Let’s make the problem pop up, so we all become aware of where exactly we’re going. Related to the previous, bandwidth. Huge packages take a lot of bandwidth to install. Sure, this is the way it is, and intrinsic to functional package management, but still: do we really need to bring whole inputs to get a single binary ? Are we just happily adding inputs for the sake of building the package ? Proposal: new tooling and checking would be necessary to automatise things. In the meantime, please, dear Guix contributors, watch this kind of details. I’m sure there are many other aspects where we can do better. Ideas about this ? Best, -- Cayetano Santos . gpg: CCB8 1842 F9D7 058E CD67 377A BF5C DF4D F6BF 6682 key: meta.sr.ht/~csantosb.pgp
signature.asc
Description: PGP signature
