all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: kiasoc5 <kiasoc5@disroot.org>
To: "Ludovic Courtès" <ludo@gnu.org>,
	"pelzflorian (Florian Pelz)" <pelzflorian@pelzflorian.de>
Cc: guix-devel@gnu.org
Subject: Re: Packages grow, no longer fit on a 💾
Date: Tue, 17 Jan 2023 21:41:09 -0500	[thread overview]
Message-ID: <7e2f18d8-98e6-335e-bcef-8882f9a8f336@disroot.org> (raw)
In-Reply-To: <87a62hdt6c.fsf@gnu.org>

On 1/17/23 11:25, Ludovic Courtès wrote:
>
> There are slight increases of each and every package, and there are also
> new big dependencies being pulled in for what, from a distance, doesn’t
> really add functionality.
> 
> Examples include libgccjit in Emacs and mozjs in polkit.
> 
> In a way, that’s the “unavoidable” (?) evolution of software, and the
> problem extends largely beyond Guix.
> 
> Still, even compared to contemporary distros, we’re doing pretty bad.
> Debian most likely does better, and people often cite Alpine as the
> distro providing the smallest packages.  Do we have figures?  What can
> we learn from them?  What tradeoffs to they make?

We can achieve smaller packages by splitting them more. Here is my guess 
of the amount of package splitting by some distros, from least to most:

Slackware < Arch < Fedora < Debian < Alpine

- Slackware I believe does not split anything, everything is included.
- Arch splits packages on a case by case basis (QEMU for example)
- Fedora typically splits packages into package X and package X-devel, 
where X contains development headers, but usually not more.
- Debian splits packages more aggressively. For example libreoffice is 
split into 6 packages, 1 for each suite (draw, write, etc). And programs 
may be separated from their outputs (eg zstd and libzstd are split)
- Alpine splits even more aggressively, they also split out man pages 
and shell completions.

We may wish to utilize multiple package outputs to a greater extent. 
Some Guix packages already have bin, doc, and lib outputs. We could make 
it a policy to split this for all packages.

I also wonder how much of the space is taken by debug output. Would 
making graft derivations substitutable help?

https://lists.gnu.org/archive/html/help-guix/2022-10/msg00225.html


  parent reply	other threads:[~2023-01-18  3:00 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-14 22:07 Packages grow, no longer fit on a 💾 Ludovic Courtès
2023-01-15  5:51 ` kiasoc5
2023-01-15  8:07 ` Liliana Marie Prikler
2023-01-16  2:09   ` Maxim Cournoyer
2023-01-16  5:17     ` Liliana Marie Prikler
2023-01-16 13:27       ` Maxim Cournoyer
2023-01-17 16:15     ` Ludovic Courtès
2023-01-15 12:56 ` Akib Azmain Turja
2023-01-15 17:00 ` pelzflorian (Florian Pelz)
2023-01-17 16:25   ` Ludovic Courtès
2023-01-17 23:05     ` zimoun
2023-01-17 23:49       ` zimoun
2023-01-18 21:04         ` Grandfathering store paths considered harmful (was: Packages grow, no longer fit on a 💾) Liliana Marie Prikler
2023-01-19 14:28           ` Grandfathering store paths considered harmful Ludovic Courtès
2023-01-19 18:10             ` Liliana Marie Prikler
2023-01-19 14:14       ` Packages grow, no longer fit on a 💾 Ludovic Courtès
2023-01-20 10:51         ` Simon Tournier
2023-01-20 14:54           ` Maxim Cournoyer
2023-01-18  2:41     ` kiasoc5 [this message]
2023-01-18  8:43       ` indieterminacy
2023-01-19 14:32       ` Ludovic Courtès
2023-01-20 11:06         ` Simon Tournier
2023-01-17  8:06 ` Efraim Flashner
2023-01-17 16:18   ` Ludovic Courtès
2023-01-17 21:54     ` John Kehayias
2023-01-19 15:30       ` Katherine Cox-Buday
2023-01-17 15:06 ` Simon Tournier
2023-01-19 14:34   ` Ludovic Courtès
2023-01-18 20:44 ` Paul Jewell via Development of GNU Guix and the GNU System distribution.
2023-01-19 13:04   ` Joshua Branson
2023-01-19 14:37   ` Ludovic Courtès
2023-01-19 16:12     ` Katherine Cox-Buday
2023-01-19 18:07   ` Akib Azmain Turja
2023-01-20 15:30     ` Csepp
2023-01-20 17:34       ` Akib Azmain Turja
2023-01-21 12:29         ` bokr
2023-01-21 15:55           ` Akib Azmain Turja
2023-01-20 12:11   ` Simon Tournier

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

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

  git send-email \
    --in-reply-to=7e2f18d8-98e6-335e-bcef-8882f9a8f336@disroot.org \
    --to=kiasoc5@disroot.org \
    --cc=guix-devel@gnu.org \
    --cc=ludo@gnu.org \
    --cc=pelzflorian@pelzflorian.de \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.