[Nix-dev] Two declarative ways to install a package?

Arnold Krille arnold at arnoldarts.de
Fri Aug 12 18:02:49 CEST 2016


On Fri, 12 Aug 2016 16:15:46 +0200 "Guillaume Maudoux (Layus)"
<layus.on at gmail.com> wrote:
> I would rather see it as a convenience.
> The package is in your store anyway, so better make it available in
> user shells.

No, only expose what is needed or wanted explicit (explicit is better
then implicit;-)). Just because I want mpd to run on my machine,
doesn't mean I want every user to run its own mpd (and wonder why the
default-port is already in use). For example.

> With mysql for example, having the mysql command in your path is not
> strictly necessary, but it would be really annoying not to have it.
> Forcing users to install it in their own environments could even lead
> to version mismatches.

This largely depends on the package, doesn't it?

For the mysql-service to expose the mysql-commandline tool is a nice
convenience, at the same time exposing the mysqld binary is needless
and allows other apps to use that binary without actually depending on
it. It also allows foes to use it directly from your environment
without dealing specially with nix.

For the nginx-package to expose the nginx-daemon binary to your
environment isa bit useless for the same reasons explained with mysqld
exposed. But are there user-tools for nginx that should be exposed?

Maybe it would be better if there was a mysql and a mysql-server
package and the mysql-service would use the mysql-server itself and
expose the mysql commandline to the environment without exposing the
server binary?

> If exposing a package from its service happens to be annoying (for
> whatever reason),
> may I suggest suggest to pull-request an opt-out option for it ?

For security and sanity reason, it should be opt-in.

- Arnold
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 230 bytes
Desc: not available
URL: <http://lists.science.uu.nl/pipermail/nix-dev/attachments/20160812/d3180467/attachment.sig>


More information about the nix-dev mailing list