unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Liliana Marie Prikler <liliana.prikler@gmail.com>
To: Maxime Devos <maximedevos@telenet.be>,
	Andrew Tropin <andrew@trop.in>,
	 guix-devel@gnu.org
Subject: Re: Multiple profiles with Guix Home
Date: Tue, 03 May 2022 22:04:57 +0200	[thread overview]
Message-ID: <8b66e609b7c9d5183017ccf7fef47c818fcea231.camel@gmail.com> (raw)
In-Reply-To: <e5494fba130ff4c21729bc634d4b493ca2aa5b28.camel@telenet.be>

Am Dienstag, dem 03.05.2022 um 21:13 +0200 schrieb Maxime Devos:
> Liliana Marie Prikler schreef op di 03-05-2022 om 20:34 [+0200]:
> > > Also, cross-profile package installation can be error-prone, for
> > > example if user install an emacs in main profile and emacs
> > > packages in emacsy profile we will end up in a situation, where
> > > those emacs package aren't available in Emacs.  Probably some
> > > other issues will become clearer during implementation.
> > The solution to that would be evaluating the search paths over all
> > enabled packages.  However, I do think it's fine to do as we did
> > before for now; people are already used to this aspect of Guix,
> 
> They shouldn't have to be.  If there's a problem in the past that
> doesn't mean that it isn't a problem in the present anymore.  Also,
> while I'm aware of this problem, it's only due to having looked at
> some Guix code, I don't mix profiles so I wouldn't have seen this
> problem otherwise.  But if I didn't know the internals, started using
> Guix Home and saw some recommendation to split profiles, then I could
> end up with inscrutenable errors.
That's why I say the long-term goal is evaluating search paths over
multiple profiles.  However, given that Guix Home is currently a
technological preview and given on top that multiple profile support is
"write your own shell script, will ya?", I think we can leave that as a
nice to have for later.

> > but the fact that they need to code up their own shell wrappers to
> > manage multiple profiles is not good optics imo.
> 
> They don't have to code up shell wrappers or split profiles.  They
> can just use a single profile.
This sentence signals to me that you didn't think about this mail at
all.  Consider that people may want to split their packages across
small thematic profiles, but the current implementation of Guix hinders
them in doing so.

> > [...].  If you do split your home in multiple
> > profiles however, you will benefit from faster union builds, which
> > themselves have quadratic complexity as a lower bound.
> 
> Instead of working around quadratic behaviour, could we just make it
> linear behaviour?  
If you're really clever, you might find a way to get O(n log n) through
sorting.  In fact, looking closer at union-build, it seems to already
use hash tables, which would make much of the implementation O(n log
n), but that's a very naive analysis at a time in which I shouldn't do
too much complexity analysis.  Needless to say, you can't get better
than sorting.

> Also, why would the user need to split things, couldn't Guix do that
> automatically?
Oh, sure, I'll just train a machine learning model to partition
packages into profiles.  This will obviously be better than a human
figuring things out, because machines can't fail ever.

In case the above wasn't clear enough, I'd rather leave this decision
to the user along with the decision of whether or not to waste
electricity in training an artificial intelligence.  Offering a
declarative interface to profile splitting benefits everyone here.

Cheers


  reply	other threads:[~2022-05-03 21:14 UTC|newest]

Thread overview: 76+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-03 10:50 Multiple profiles with Guix Home Liliana Marie Prikler
2021-10-04  7:17 ` zimoun
2021-10-04  8:11   ` Liliana Marie Prikler
2022-05-03 14:13 ` Andrew Tropin
2022-05-03 18:34   ` Liliana Marie Prikler
2022-05-03 19:13     ` Maxime Devos
2022-05-03 20:04       ` Liliana Marie Prikler [this message]
2022-05-03 20:39         ` Maxime Devos
2022-05-03 20:44         ` Maxime Devos
2022-05-04  9:25           ` Maxime Devos
2022-05-03 20:59         ` Maxime Devos
2022-05-04  4:16           ` Liliana Marie Prikler
2022-05-04  7:01             ` Maxime Devos
2022-05-04  7:08               ` Maxime Devos
2022-05-04 13:15               ` Reza Housseini
2022-05-04 13:46                 ` Maxime Devos
2022-05-04 18:14                   ` zimoun
2022-05-04 18:21                     ` Maxime Devos
2022-05-05  8:01                 ` Andrew Tropin
2022-05-04 18:38               ` Liliana Marie Prikler
2022-05-04 20:41                 ` Maxime Devos
2022-05-05  4:25                   ` Liliana Marie Prikler
2022-05-05 10:53                     ` Maxime Devos
2022-05-05 16:24                       ` Liliana Marie Prikler
2022-05-05 16:33                         ` Maxime Devos
2022-05-05 17:21                           ` Liliana Marie Prikler
2022-05-05 17:29                             ` Maxime Devos
2022-05-05 11:03                     ` Maxime Devos
2022-05-05 16:31                       ` Liliana Marie Prikler
2022-05-05 16:42                         ` Maxime Devos
2022-05-05 17:12                           ` Maxime Devos
2022-05-05 17:27                           ` Liliana Marie Prikler
2022-05-05 17:41                             ` Maxime Devos
2022-05-05 19:17                               ` Liliana Marie Prikler
2022-05-05 19:42                                 ` Maxime Devos
2022-05-05 20:20                                   ` Liliana Marie Prikler
2022-05-05 18:00                             ` Maxime Devos
2022-05-05 19:08                               ` Liliana Marie Prikler
2022-05-05 19:44                                 ` Maxime Devos
2022-05-05 23:53                                   ` zimoun
2022-05-05 20:13                                 ` Maxime Devos
2022-05-05 20:53                                   ` Liliana Marie Prikler
2022-05-05 21:28                                     ` Maxime Devos
2022-05-06  4:19                                       ` Liliana Marie Prikler
2022-05-07 23:06                                         ` Ludovic Courtès
2022-05-05 20:50                                 ` zimoun
2022-05-05 18:25                         ` zimoun
2022-05-03 21:11         ` Maxime Devos
2022-05-04  4:23           ` Liliana Marie Prikler
2022-05-04  6:57             ` Maxime Devos
2022-05-04  9:24             ` Maxime Devos
2022-05-04 13:05     ` Andrew Tropin
2022-05-05 11:05 ` Maxime Devos
2022-05-05 16:22   ` Liliana Marie Prikler
2022-05-05 17:07     ` Maxime Devos
2022-05-05 17:19       ` Liliana Marie Prikler
2022-05-05 17:29         ` Maxime Devos
2022-05-05 18:24           ` Liliana Marie Prikler
2022-05-05 20:14             ` Maxime Devos
2022-05-05 20:27               ` Liliana Marie Prikler
2022-05-05 20:38                 ` Maxime Devos
2022-05-05 20:41                 ` Maxime Devos
2022-05-05 20:26             ` Maxime Devos
2022-05-06 18:40               ` Liliana Marie Prikler
2022-05-06 19:54                 ` Maxime Devos
2022-05-06 21:32                   ` Liliana Marie Prikler
2022-05-07  7:17                     ` Maxime Devos
2022-05-23 13:14 ` Andrew Tropin
2022-05-23 17:05   ` Liliana Marie Prikler
2022-05-24 11:55     ` Andrew Tropin
2022-05-24 18:31       ` Liliana Marie Prikler
2022-05-25 11:01         ` Andrew Tropin
2022-05-25 23:36           ` Liliana Marie Prikler
2022-05-27 12:52             ` andrew
2022-05-27 13:14               ` Liliana Marie Prikler
  -- strict thread matches above, loose matches on Subject: below --
2021-10-03 20:51 John Kehayias

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=8b66e609b7c9d5183017ccf7fef47c818fcea231.camel@gmail.com \
    --to=liliana.prikler@gmail.com \
    --cc=andrew@trop.in \
    --cc=guix-devel@gnu.org \
    --cc=maximedevos@telenet.be \
    /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).