Subject: [bug#51838] [PATCH v5 07/45] guix: node-build-system: Add #:absent-dependencies argument.

From: Timothy Sample <[email-masked]>
Date: Fri, 17 Dec 2021 10:46:48 -0500

Hi Liliana,

Liliana Marie Prikler <[email-masked]> writes:

> I might be sounding like a broken record here, but again for the sake
> of being able to add or remove inputs on the user side without
> duplicated efforts, I'd use something else in lieu of absent-
> dependencies.  For the time being, I think a switch between "fail" and
> "warn about missing dependencies" ought to be enough.  In the future,
> we might want to make it so that packages can specify which
> dependencies they absolutely require and which they don't (or if
> possible infer that from dependencies).  WDYT?

The way I see it is that we are basically copying the
“--disable-X”/“--without-Y” features of a GNU configure script.  With
the GNU build system, if one of our packages specifies “--without-zlib”
for whatever reason, and you as a user want to modify the package to use
zlib, you would have to

  1. remove the “--without-zlib” configure flag; and
  2. add the zlib package to the package’s inputs.

That’s a “duplicated effort”, right?

Similarly, for a Node package (with a pretend Node zlib package), you
would have to

  1. remove “zlib” from absent dependencies; and
  2. add the “node-zlib” package to the package’s inputs.

That seems okay to me, but I’m worried I’ve missed what you’re trying to
communicate.

-- Tim