all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Philip Kaludercic <philipk@posteo.net>
To: Lynn Winebarger <owinebar@gmail.com>
Cc: Yuan Fu <casouri@gmail.com>,  emacs-devel <emacs-devel@gnu.org>
Subject: Re: Unboxed package manager
Date: Mon, 20 Mar 2023 16:53:24 +0000	[thread overview]
Message-ID: <87ilev9xff.fsf@posteo.net> (raw)
In-Reply-To: <CAM=F=bDgmSUu+G3nMfZzE53R7sn544A6Kbn8kR++qjqC1ap+xw@mail.gmail.com> (Lynn Winebarger's message of "Mon, 20 Mar 2023 12:12:34 -0400")

Lynn Winebarger <owinebar@gmail.com> writes:

> On Mon, Mar 20, 2023, 11:25 AM Philip Kaludercic <philipk@posteo.net> wrote:
>
>> Lynn Winebarger <owinebar@gmail.com> writes:
>>
>> > On Mon, Mar 20, 2023, 4:55 AM Lynn Winebarger <owinebar@gmail.com>
>> wrote:
>> >
>> >> On Mon, Mar 20, 2023, 2:31 AM Yuan Fu <casouri@gmail.com> wrote:
>> >>
>> >>> > On Mar 19, 2023, at 6:18 PM, Lynn Winebarger <owinebar@gmail.com>
>> >>> wrote:
>> >>> >
>> >>> > I've
>> >>> > done this manually on various systems I use with a significant
>> >>> > improvement in startup performance.
>> >>>
>> >>> It'll be interesting to see the numbers on the improvement. How much
>> does
>> >>> it improve startup time if there is x packages and y are loaded at
>> startup
>> >>> time?
>> >>
>> >> Good question. The systems I've done this manually on are one-off builds
>> >> of 28.x on sandboxed systems where the system emacs is 24.3.  So, I
>> didn't
>> >> have to worry about managing package updates with any frequency.
>> >
>> > I don't have any hard measurements, but my recollection is that
>> installing
>> > ~1200 packages on those systems and "loading the world" took something
>> like
>> > 5 minutes, while a similar set of packages installed in a unified
>> directory
>> > takes about 1.5 minutes.
>>
>> I just skimmed through the initial message, and when reading this my
>> initial thought is does the the advantage justify effort/complexity,
>> considering that most users have an order of magnitude fewer packages
>> installed (of which a few are installed using package-vc which IIUC
>> would explicitly not want to make use of this feature).
>>
>
> I have no idea.  There's a bit of a chicken and egg problem when installing
> packages is slow (even with a local mirror of the elpas) and having a lot
> of packages loaded slows down startup.

What is the chicken and the egg in this situation?

> I think I'm going to hack something together starting with advice on the
> existing package management and taking some inspiration from the design of
> Jonas Bernoulli's epkg and emir packages for tracking installed packages
> and component files in a SQLite database.

I'd be interested to see how this looks like.  As I said, I am sceptical
of the need to optimise these extreme cases for everyone, but perhaps we
can also open package.el to be extended externally in ways that your
work could plug into.

> Lynn

(Also, could you leave an empty line between paragraphs in your
messages?  It would make it easier to read them)

-- 
Philip Kaludercic



  reply	other threads:[~2023-03-20 16:53 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-20  1:18 Unboxed package manager Lynn Winebarger
2023-03-20  6:30 ` Yuan Fu
2023-03-20  8:55   ` Lynn Winebarger
2023-03-20  9:09     ` Lynn Winebarger
2023-03-20 15:25       ` Philip Kaludercic
2023-03-20 16:12         ` Lynn Winebarger
2023-03-20 16:53           ` Philip Kaludercic [this message]
2023-03-20 18:11           ` Jonas Bernoulli
2023-03-21  1:40             ` Lynn Winebarger
2023-03-22 11:17               ` Jonas Bernoulli
2023-03-22 14:31                 ` Lynn Winebarger
2023-03-22 23:39                   ` Lynn Winebarger
2023-03-21 19:06         ` Augusto Stoffel
2023-03-21 19:10           ` Philip Kaludercic
2023-03-21 19:57             ` Augusto Stoffel
2023-03-21 20:06               ` Philip Kaludercic
2023-03-21  0:23       ` Gregory Heytings
2023-03-21  0:25         ` Gregory Heytings
2023-03-21  1:55           ` Lynn Winebarger
2023-03-21 10:36             ` Lynn Winebarger
2023-03-21 10:52               ` Gregory Heytings
2023-03-21 13:23                 ` Eli Zaretskii
2023-03-21 13:33                   ` Gregory Heytings
2023-03-21 14:13                     ` Eli Zaretskii
2023-03-21 14:20                       ` Gregory Heytings
2023-03-21 17:29                         ` Eli Zaretskii
2023-03-22  0:48                           ` Lynn Winebarger
2023-03-22 14:42                             ` Eli Zaretskii
2023-03-22 22:22                               ` Lynn Winebarger
2023-03-23  6:46                                 ` Eli Zaretskii
2023-03-23 13:30                                   ` Lynn Winebarger
2023-03-24 17:54                                     ` chad
2023-03-26  1:51                                       ` Lynn Winebarger
2023-03-23  1:44                               ` David Masterson
2023-03-23  7:02                                 ` Eli Zaretskii
2023-03-22  7:29                           ` tomas

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=87ilev9xff.fsf@posteo.net \
    --to=philipk@posteo.net \
    --cc=casouri@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=owinebar@gmail.com \
    /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/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.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.