all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Splitting up packages, targeting smaller/older devices
@ 2021-04-18 21:26 raingloom
  0 siblings, 0 replies; 2+ messages in thread
From: raingloom @ 2021-04-18 21:26 UTC (permalink / raw)
  To: guix-devel@gnu.org

I've been pondering installing Guix onto some of my devices that have
tiny amounts of storage. I have an old desktop PC that had an old
version of Uhu Linux on it on a mere 4 gigs of HDD space. Full
graphical desktop, office suite, etc.
A minimal Guix install can just barely fit on it, but can't upgrade
itself. I think it could be possible.

One thing I'd like to try is to split up packages into more outputs,
kinda like what Alpine does. This isn't really technically challenging,
it's mostly just busywork and adding some default build phases and
maybe some more default outputs. But it is a pretty big change, so, is
this something that could eventually be upstreamed?

I'm not planning on starting work on this any time soon, so there's no
rush. Just testing the water for now.
So, is this something that would be welcome in Guix? Do we also want to
target even smaller devices, like OpenWRT supported routers? NixWRT
already exists, so it's not like this is unexplored territory.
PostmarketOS supported devices could be supported too in the future,
storage is also at a premium on those, not to mention flash memory wear
from needless writes.


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Splitting up packages, targeting smaller/older devices
@ 2021-04-19  7:01 Leo Prikler
  0 siblings, 0 replies; 2+ messages in thread
From: Leo Prikler @ 2021-04-19  7:01 UTC (permalink / raw)
  To: raingloom, guix-devel

> One thing I'd like to try is to split up packages into more outputs,
> kinda like what Alpine does. This isn't really technically
> challenging,
> it's mostly just busywork and adding some default build phases and
> maybe some more default outputs. But it is a pretty big change, so,
> is
> this something that could eventually be upstreamed?
Not only is this very doable, it is in fact what Guix somewhat actively
do in order to reduce closure size.  I'm not sure if there's a "one
size fits all" phase, that could help you accomplish this, but a post-
install "move this part elsewhere" has worked for many things in the
past.

The only problem is that depending on the packages you want to make
smaller, you might end up
a) not making a difference, because the output is still needed
(unlikely, but possible)
b) targeting core-updates, which delays the time your patches can be
rolled out to everyone.

That being said, if you have concrete ideas about packages you wish to
reduce in size through more outputs, do bring them forth, either in a
discussion or with a patch.

Regards,
Leo



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-04-19  7:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-18 21:26 Splitting up packages, targeting smaller/older devices raingloom
  -- strict thread matches above, loose matches on Subject: below --
2021-04-19  7:01 Leo Prikler

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.