vfclists · 2022-11-25 13:51
I came across it by chance somewhere in the documentation but haven't seen it since.
It is similar to the `:after` keyword in use-package.
On a side note that README is too much on a single page.
The topics need to be broken out into separate pages. In particular the comparison with the other packages doesn't belong in it.
nivpgir · 2022-11-25 15:20
I can't answer directly, but in case it helps, you can use `straight` together with `use-package`, and then use the `:after` keyword of `use-package` itself.
Just add `:straight t` to the `use-package` expression
Totally agree that the readme is huge, but it should probably just be called the manual, and moved to a different location, I kinda like that its one page, makes of easier to search through it.
nv-elisp · 2022-11-25 19:35
You are likely thinking of the `:includes` keyword. It does not cause a package to be installed after another package, though. It indicates that a package is a superset of another package. Described here:
https://github.com/radian-software/straight.el#the-recipe-format
As /u/nivpgir recommends, use-package's `:after` keyword can be used to control the loading of packages (not the installation order).
Regarding straight's README, I agree that is too large.
There's an open issue discussing that here:
https://github.com/radian-software/straight.el/issues/671
I aiming to keep the implementation and documentation of [Elpaca](https://github.com/progfolio/elpaca) simpler overall. The code base is approximately half the size of straight.el and much easier to extend.
doolio_ · 2022-11-25 22:11
How does elpaca improve on straight? Is the idea that it will eventually replace straight?
vfclists · 2022-11-26 01:03
I'm already using `:after`, but I wanted something built into straight.
It was probably the `:includes` keyword as u/nv-lisp says.
nv-elisp · 2022-11-26 09:38
> How does elpaca improve on straight?
From a developer's perspective it should be much easier to maintain and extend. The code base is a little less than half the size. Everything is split into separate features (which I was unable to do in straight due to the complicated bootstrapping dance).
I also have the benefit of building off the good ideas in straight and discarding other ideas.
From a user's perspective:
Packages are installed asynchronously. This greatly reduces package installation time compared to straight. On my machine (10th gen i7 laptop, Emacs 29) Elpaca takes roughly two minutes to install, build, activate 116 packages from scratch. The bulk of that time is building a couple system binaries (mu4e, pdftools).
In addition to installation speed, the main Emacs thread is not blocked for the majority of the installation. This allows Elpaca to display a log for every process involved in installing packages. In straight your Emacs is blocked until the installation finishes, if ever. Elpaca provides a UI which can allow you to not only see what went wrong with an installation, but possibly recover from it.
Elpaca offers a UI similar to, but more advanced than, package.el for finding, installing, and maintaining packages. Straight has a much more limited pop-up UI for upgrading packages.
There's more, but it would probably be better if I released a video to demonstrate everything. I'll do that soon.
> Is the idea that it will eventually replace straight?
I'm still co-maintaining straight with straight's original author, Radon. Working on both package managers is beneficial to both because finding a bug in one may mean I can fix it in both.
However, I haven't used straight as my package manager for almost a year now, and I am dedicating more time to Elpaca's development since that is what I use.
doolio_ · 2022-11-26 16:25
Thank you. Sounds very promising. Best of luck with its development. I shall check it out. I presume it is relatively straightforward to transition from straight to elpaca. Cool name by the way.