Closed JAremko closed 8 years ago
dotspacemacs-configuration-layers 'all
Didn't know about it. How does it behave with some conflicting layers like helm
vs ivy
?
@d12frosted so far everything goes :boom: :cry:
I'm not sure you'll like having the bepo
layer enabled :flushed:
@StreakyCobra Im trying to figure out if dotspacemacs-configuration-layers 'all
is a viable option or if it's completely broken and shouldn't be documented. :wink:
I honestly don't understand why 'all
even exists :D I mean, it sounds terrible :D
@d12frosted for Travis tests probably. But not sure why it is exposed for users. I'll try to disable stuff until it start to work :smile:
@JAremko ah, good point. CI!
It probably should say that this is a terrible idea https://github.com/syl20bnr/spacemacs/blob/master/core/templates/.spacemacs.template#L17
@d12frosted
I honestly don't understand why 'all even exists :D I mean, it sounds terrible :D
I think it would be great to have something like 'almost-all for beginners, to discover things. But it should disable conflicting stuff
I think it would be great to have something like 'almost-all for beginners, to discover things. But it should disable conflicting stuff
This concept is called a distribution :-)
Sounds a nice idea, go ahead and create a "spacemacs-complete" distribution with all non-conflicting layers :-)
IMHO 'all
should be removed in documentation
Agree about removing from documentation.
P. S. indeed nice idea about distributions :D
On Mon, May 30, 2016 at 3:27 PM Fabien Dubosson notifications@github.com wrote:
I think it would be great to have something like 'almost-all for beginners, to discover things. But it should disable conflicting stuff
This concept is called a distribution https://github.com/syl20bnr/spacemacs/tree/develop/layers/%2Bdistribution :-)
Sounds a nice idea, go ahead and create a "spacemacs-complete" distribution with all non-conflicting layers :-)
IMHO 'all should be removed in documentation
โ You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/syl20bnr/spacemacs/issues/6167#issuecomment-222481790, or mute the thread https://github.com/notifications/unsubscribe/AGNNiT4tSXk98tChrgYx628icggfKe9Eks5qGtefgaJpZM4IpvBi .
In like half a hour of pure pain I have found some stuff that I didn't notice before in Spacemacs that I would like to use. :D
Masochism is almost always rewarding :D
I don't think it's particularly useful for testing either. My vote is to remove this feature altogether.
Welp. Disabling stuff doesn't go well. Too many glitches :confused:
@syl20bnr do we need spacemacs-complete
? Should it include stuff like bepo?
@JAremko For sure no, bepo
shouldn't be part of spacemacs-complete
.
Edit: Otherwise there will be only me (and 2 or 3 otherย users) of spacemacs-complete
:joy:
We'll need to fix the warnings for spacemacs-complete
I think. If the user will need to install all the executables or sit throughout all the warnings it will defeat the whole purpose :confused:
Actually it shouldn't be too hard if I check for the executables in the distribution files and silently disable the packages. Sure it should be documented.
Spacemacs grew a lot since the addition of all
. The use case for all
is in some corporate environments where there is not internet connection, some users wanted to put Spacemacs on an USB stick.
I'm for replacing all
by a distribution, but this distribution should be defined smartly without needing us to always keep it up to date. We can do the same thing as in core-configuration-layer.el
[1] in its config.el
but find a good way to flag the layers we want to exclude from this distribution. It should also not conflict with the wizard which asks the user for helm or ivy, etc....
[1] https://github.com/syl20bnr/spacemacs/blob/develop/core/core-configuration-layer.el#L888-890
So... the main point of 'all
is to download all packages upfront, isn't
it? It's not about layers actually. Why not just add new option called
dotspacemacs-download-all-packages
or something similar. When it's t
we
could just loop through all layers and collect huge list of packages which
are forcibly installed.
When dotspacemacs-download-all-packages
is t
orphan packages are not
removed.
On Mon, May 30, 2016 at 6:43 PM Sylvain Benner notifications@github.com wrote:
Spacemacs grew a lot since the addition of all. The use case for all is in some corporate environments where there is not internet connection, some users wanted to put Spacemacs on an USB stick.
I'm for replacing all by a distribution, but this distribution should be defined smartly without needing us to always keep it up to date. We can do the same thing as in core-configuration-layer.el [1] in its config.el but find a good way to flag the layers we want to exclude from this distribution. It should also not conflict with the wizard which asks the user for helm or ivy, etc....
[1] https://github.com/syl20bnr/spacemacs/blob/develop/core/core-configuration-layer.el#L888-890
โ You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/syl20bnr/spacemacs/issues/6167#issuecomment-222517624, or mute the thread https://github.com/notifications/unsubscribe/AGNNiav8WXSVpvYw5CfM-yDbqS6q7BzIks5qGwW1gaJpZM4IpvBi .
@d12frosted nice analysis :100:
@syl20bnr We'll need to maintain both documentation and code for spacemacs-complete
(to make it as awesome as possible) and it will get outdated anyway. But how about generating spacemacs-complete
from a template? We can gather code,settings,docs of all the layers and output it with the templates. For docs we can extract keybindings and descriptions, add space-doc links to the original README.org files. And for the code we can grab all the layers and filter them with the "known conflicts filter" that will choose one layer over another.
On a side note, Can we generate keybinding section in all README.org files form layers definitions? How about configs? They have docstring.
@JAremko I think @d12frosted spotted what we need to do:
all
There is also the lazy installation of layers now in develop so we don't really need a complete distribution.
@syl20bnr so it will prompt to install ranger when I press spc
a
r
? What about things that change look like powerline or the thing that makes buffer list look better? Not sure how it will get loaded also if the user will be constantly prompted to install something :confused: I was thinking about a distribution that can showcase Spacemacs as extensive as possible.
Honestly, I can't see how spacemacs-complete
can be helpful as a showcase.
I mean, spacemacs-complete
would anyway contain layers like haskell
or c#
(or any other language). So we tell users - if you wish to see Spacemacs in full power - just try using spacemacs-complete
. And user is like 'oh well, let's try it'. So user opens C# file. And completion doesn't work. Checking doesn't work. Why? Because user has to install omnisharp server or omnisharp roslyn (which has some dependencies that must be installed manually) and properly set it's path for csharp
layer. 'Ok' - user says, 'Let's try it on Haskell'. So user open Haskell source file and... and the experience is far from being perfect. User now needs to install either Haskell Platform, build ghc from sources and install cabal, use stack to install everything or probably Haskell for Mac. Then user salvages that by default haskell layers uses ghc-mod
and some other tools that must be also install either by cabal or stack. Total mess.
So user concludes - nothing works. Why should I even bother myself with that thing.
So aside of questionable usefulness there is a question of support. I believe that it would be much harder than supporting enabled layers - user is responsible for what he or she enables. And at least knows how to temporarily disable broken stuff.
@syl20bnr thanks :) I would like to give it a try implementing that way of downloading all the packages. Because actually sometimes I feel the need of it (especially when I am somewhere without i/c).
@JAremko There is a prompt only for file extensions. Any distribution will be opinionated so it is hard to come up with something really useful. Maybe a distribution focused on Vim users and another focused on Emacs users, but still I don't want to overwhelm users with lots of options when starting.
@d12frosted maybe we can merge the option dotspacemacs-delete-orphan-packages
, something like:
dotspacemacs-download-packages 'used-only|used-and-orphans|all
@syl20bnr yeah I like it. Less variables is better. And since dotspacemacs-delete-orphan-packages
would be dependent on value of new variable - I think having something like dotspacemacs-download-packages 'used-only|used-and-orphans|all
would be better for user experience. Nice idea ๐ธ
P. S. In any case this feature doesn't clash with discussed distributions.
@d12frosted Yeah. I think you are right :disappointed: But I have some crazy idea. Really crazy. Like even for me :wink: Not sure if I'll go for it. Not enough time lately.
@JAremko we love your crazy ideas :purple_heart:
@d12frosted to be more specific used-and-keep-orphans
is a better variable choice.
@JAremko https://github.com/JAremko I don't want you to get wrong impression. I don't want to convince you not do to anything crazy. As Sylvain said - we love your crazy ideas. And when they work as you expect - everyone wins :D So don't stop :D
@Sylvain well, I was always bad at finding names for things. I'll use
used-and-keep-orphans
as it describes the purpose much better. :D
On Mon, May 30, 2016 at 9:07 PM Sylvain Benner notifications@github.com wrote:
@JAremko https://github.com/JAremko we love your crazy ideas ๐
@d12frosted https://github.com/d12frosted to be more specific used-and-keep-orphans is a better variable choice.
โ You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/syl20bnr/spacemacs/issues/6167#issuecomment-222535804, or mute the thread https://github.com/notifications/unsubscribe/AGNNiYMLYVc4Zprz0OpkX59j4BzhMMBVks5qGydKgaJpZM4IpvBi .
I implemented the new variable dotspacemacs-download-packages
, it replaces dotspacemacs-delete-orphan-packages
and all
.
Related commit: https://github.com/syl20bnr/spacemacs/commit/60f5a3a
Let me know if it fixes this issue.
Note that all
should not be always set in your dotfile because it adds up time to the loading of Emacs (we need to load all the packages.el files of all layers).
So all
should be set once to download everything and then you should set it to used-but-keep-unused
.
๐ PR welcome to add a command line parameter to set it to all
only for the current invokation of Emacs :-)
That's nice. So far it's working. Thanks for implementing it.
P. S. installing packages from themes-megapack looks funny.
@syl20bnr
Note that all should not be always set in your dotfile because it adds up time to the loading of Emacs > (we need to load all the packages.el files of all layers).
Never understood why people care so much about Emacs'es startup time. Normally you will need to start it only once a day. :confused:
I implemented the new variable dotspacemacs-download-packages, it replaces dotspacemacs-delete-orphan-packages and all.
Thanks. Now I can download all the stuff to my docker images to make proper backups.
Let me know if it fixes this issue.
I think it was solved in https://github.com/syl20bnr/spacemacs/commit/d51987f49769fb8c19216d03045492354c3ed06e#diff-411a2969fe619b3c95df8066ba35fe4aL31 :wink:
Never understood why people care so much about Emacs'es startup time. Normally you will need to start it only once a day. ๐
Or once per month ๐
But sometimes it's useful to have fast startup. For example, when you change your Emacs configs and you want to check that they work properly on fresh start. And if you mess - you have to start new instance several times until you fix the problem. And this is when I find fast startup so useful.
@d12frosted nut sure how it is important for end users, but it's a valid point. Btw you can perform testing in parallel with dockerized Emacs.
Never used docker :) But if it helps to check such things then I am all for it.
On Tue, May 31, 2016 at 11:55 AM Eugene Yaremenko notifications@github.com wrote:
@d12frosted https://github.com/d12frosted nut sure how it is important for end users, but it's a valid point. Btw you can perform testing in parallel with dockerized Emacs.
โ You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/syl20bnr/spacemacs/issues/6167#issuecomment-222630178, or mute the thread https://github.com/notifications/unsubscribe/AGNNiUxq78oY30bPKFQbgLBdWWvaROcuks5qG_eTgaJpZM4IpvBi .
I'm trying to run Spacemacs with
dotspacemacs-configuration-layers 'all
anddotspacemacs-enable-lazy-installation 'unused
and this is what makes my life hard:ranger
spc
a
r
throws error:Description :octocat:
Error (probably due to missing
fasd
) executable + some other obscure stuff.Reproduction guide :beetle:
spc
a
r
System Info :computer:
Message :paw_prints:
For some reason
emacs --debug-init
doesn't create backtrace buffer.Warnings from
ocaml
agda
nixos
andpandoc
about missing executable files (nixos
misses config file) In the case with thedotspacemacs-configuration-layers 'all
+dotspacemacs-enable-lazy-installation 'unused
when someone just wants to try Spacemacs in all its power and all its glory - I think it will be better to postpone those warnings.WakaTime
decided to ask me for an API key in the seemingly random moment.WakaTime
hangs Spacemacs withError running timer: wakatime-turn-on: (wrong-type-argument: arrayp nil)
probably because I didn't give it the key.Spacemacs key buffer takes half a screen