all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* req-package
@ 2015-08-11  7:10 Edward Knyshov
  2015-08-11 15:26 ` req-package Stefan Monnier
  0 siblings, 1 reply; 39+ messages in thread
From: Edward Knyshov @ 2015-08-11  7:10 UTC (permalink / raw)
  To: help-gnu-emacs

Hello everyone.
My name is Edward.

I was asked about explanation of how does req-package work and which
problems does it solve. The question appeared in this list's discussion on
req-package moving to core package proposal.

So, req-package solves one single problem - make order of package
configurations in your init.el right without continuous reordering your
code while still providing ambrosian use-package goodness. It makes your
.emacs.d code more strict, modular and error prone. You can look here, how
I divided my code in separate modules and how simple does it looks
https://github.com/edvorg/emacs-configs/tree/master/init.d .

Remember, how often you tackled into problem, when you need to require one
package, do some configuration, then the same with second and so on.
Sometimes it becomes too complex. Especially in cases when one package have
more than one dependency. You can draw a graph of dependencies in your
configuration, and, I'm sure, it's complex. req-package creates this graph
for you and makes a correct traverse on it. The syntax is almost the same
as with use-package, but it provides a few additional keywords:
1) :require - a parameter to specify dependencies
2) :loader - an optional parameter to specify where to get package (el-get,
elpa, etc.)

Interesting thing is that packages are installed automatically once
req-package-finish function is executed. So there is no need for things
like cask or save-packages. You just write a configuration with packages
you need and they will be there. req-package will try to use elpa, el-get
or any package system provided by you to find and install your packages.

That's it. I'm not trying to push my package to core. I'm just answering a
question here.

Edward.


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

end of thread, other threads:[~2015-08-17 16:42 UTC | newest]

Thread overview: 39+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-08-11  7:10 req-package Edward Knyshov
2015-08-11 15:26 ` req-package Stefan Monnier
2015-08-13 12:10   ` req-package Edward Knyshov
2015-08-13 13:44     ` req-package Alexander Shukaev
2015-08-13 14:06       ` req-package Edward Knyshov
2015-08-13 14:59         ` req-package Alexander Shukaev
2015-08-13 20:43           ` req-package Edward Knyshov
     [not found]           ` <mailman.8283.1439498644.904.help-gnu-emacs@gnu.org>
2015-08-13 21:22             ` req-package Stefan Monnier
2015-08-14  5:14               ` req-package Edward Knyshov
2015-08-14  5:18               ` req-package Edward Knyshov
     [not found]               ` <mailman.8308.1439529283.904.help-gnu-emacs@gnu.org>
2015-08-14 14:07                 ` req-package Stefan Monnier
2015-08-14 14:40                   ` req-package Alexander Shukaev
2015-08-14 14:54                     ` req-package Edward Knyshov
2015-08-14 15:02                       ` req-package Alexander Shukaev
2015-08-15  8:46                         ` req-package John Wiegley
2015-08-15 19:25                           ` req-package Alexander Shukaev
2015-08-15 22:17                             ` req-package John Wiegley
2015-08-16  8:51                               ` req-package Les Harris
     [not found]                               ` <mailman.8410.1439715098.904.help-gnu-emacs@gnu.org>
2015-08-16  9:05                                 ` req-package Rusi
2015-08-16  9:38                                   ` req-package Edward Knyshov
2015-08-17 16:42                                     ` req-package John Wiegley
     [not found]                                   ` <mailman.8411.1439717896.904.help-gnu-emacs@gnu.org>
2015-08-16 10:02                                     ` req-package Rusi
2015-08-16 10:17                                       ` req-package Edward Knyshov
2015-08-16 10:17                                       ` req-package Rusi
2015-08-16 10:32                                         ` req-package Edward Knyshov
     [not found]                                         ` <mailman.8413.1439721183.904.help-gnu-emacs@gnu.org>
2015-08-16 13:07                                           ` req-package Rusi
2015-08-16 13:28                                             ` req-package Edward Knyshov
     [not found]                                             ` <mailman.8416.1439731716.904.help-gnu-emacs@gnu.org>
2015-08-17  1:11                                               ` req-package Rusi
     [not found]                   ` <mailman.8327.1439563225.904.help-gnu-emacs@gnu.org>
2015-08-14 16:58                     ` req-package Stefan Monnier
2015-08-14 17:53                       ` req-package Alexander Shukaev
2015-08-13 15:29       ` req-package Stefan Monnier
2015-08-13 15:50         ` req-package Alexander Shukaev
     [not found]         ` <mailman.8262.1439481023.904.help-gnu-emacs@gnu.org>
2015-08-13 15:56           ` req-package Stefan Monnier
2015-08-13 16:14             ` req-package Alexander Shukaev
     [not found]             ` <mailman.8266.1439482490.904.help-gnu-emacs@gnu.org>
2015-08-13 16:23               ` req-package Stefan Monnier
2015-08-13 16:37                 ` req-package Alexander Shukaev
2015-08-13 20:27                   ` req-package Edward Knyshov
2015-08-13 20:30                     ` req-package Edward Knyshov
     [not found]                 ` <mailman.8267.1439483837.904.help-gnu-emacs@gnu.org>
2015-08-13 20:17                   ` req-package Stefan Monnier

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.