unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Gammel Holte <gammel.holte@gmail.com>
To: guix-devel@gnu.org
Subject: Optional runtime dependencies in Guix
Date: Sun, 23 Nov 2014 03:43:13 +0000	[thread overview]
Message-ID: <CAGFCsG_uRr0R2bQ40g4d_K2NkUCENQJmpwws8fh3yFuaPrYMdw@mail.gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 1271 bytes --]

Hello,

I'm glad to see all interesting ideas from Nix being implemented as a DSL
on top of Scheme, which makes an awesome combination.

That said, I would like to bring up an issue I've faced multiple times
while using Nix, hoping that Guix can adopt a better solution here:
optional runtime dependencies.

Nix doesn't have a good decoupling between packages and their optional
runtime dependencies. You can disable them, but this would lead to a
different package hash, and thus a different build (negating the use of
prebuilt binaries).

Therefore, the culture seems to have all default package builds with all
optional runtime dependencies on. This leads to situations such as
installing mutt, and getting python as a dependency (via mutt -> gpgme ->
glib -> python), which is quite ugly.

Installing many unneeded packages in your system is undesirable for many
reasons. It has bothered me when using Nix in small embedded systems due to
resource limitations.

I haven't come up with any solution that also preserves purity. Perhaps one
needs to draw a line between what is a package dependency and what isn't.
In my option, a glib build is the same in the presence or absence of
python, just like firefox is the same whether you have flash installed or
not.

Alex.

[-- Attachment #2: Type: text/html, Size: 1445 bytes --]

             reply	other threads:[~2014-11-23  3:43 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-23  3:43 Gammel Holte [this message]
2014-11-23 20:47 ` Optional runtime dependencies in Guix Ludovic Courtès
2015-01-11 15:38   ` Gammel Holte
2015-01-12  9:38     ` Ludovic Courtès
2015-01-12 11:23       ` Ricardo Wurmus
2015-01-12 16:03         ` Ludovic Courtès
2015-01-12 13:11       ` 宋文武
2015-01-12 16:26         ` Ludovic Courtès
2015-01-12 18:47           ` Andreas Enge
2015-01-12 19:18             ` Gammel Holte
2015-01-13 17:28               ` Ludovic Courtès
2015-01-13 17:24             ` Ludovic Courtès

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAGFCsG_uRr0R2bQ40g4d_K2NkUCENQJmpwws8fh3yFuaPrYMdw@mail.gmail.com \
    --to=gammel.holte@gmail.com \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).