Commit Graph

109 Commits

Author SHA1 Message Date
syl20bnr 37609161c8 tests: Add configuration layer functional tests 2015-09-07 19:42:22 -04:00
syl20bnr 555927c7ec core: use package-alist to resolve orphans
instead of the downloaded package archive. It fixes a case where
a package maintainer removes a dependency D of a package P and spacemacs
detects it which has the effect of deleting the obsolete package D, but
package-alist is not yet updated, because package-alist is updated only
when P is reinstalled (or upgraded).
2015-09-07 01:06:27 -04:00
syl20bnr 8adc82d1ae core: actually read :disabled-for layer property
Also it is not need to pass a list, example:

```
(setq dotspacemacs-configuration-layers
   '((auto-completion :disabled-for org git)))
```

Will disable auto-completion for org and git layers.
2015-09-03 13:17:02 -04:00
syl20bnr 88d30d7074 core: add :disabled-for keyword for declared layers
Example:

(setq dotspacemacs-configuration-layers
'((auto-completion :disabled-for (org))))

Will not run any org/pre-init-xxx or org/post-init-xxx functions where
xxx is a package owned by the auto-completion layer.

Limitation:

If ownership of an auto-completion package P is stolen by another layer L
then :disabled-for must also be declared with L, otherwise the P will
be configured for org.

(setq dotspacemacs-configuration-layers
'((auto-completion :disabled-for (org))
  (L :disabled-for (org)))

The user should not change the default owner of a layer unless really
required (for instance to use his own fork).
2015-09-02 23:10:30 -04:00
syl20bnr 719080f533 core: rename configuration-layer/filter-packages to
configuration-layer/filter-objects
2015-09-02 23:10:30 -04:00
Ben Booth a8582813c0 fix typo 2015-08-26 21:57:22 -04:00
syl20bnr 6318f009bc core: add new function to allow a layer to add other layers
- configuration-layer/declare-layers
- configuration-layer/declare-layer

These functions can be used in the config.el file of a layer to add
required layers.

For instance the react layer needs both html and javascript layers.
salt layer needs the yaml layer (see the following commits)
2015-08-26 02:41:54 -04:00
syl20bnr a8f6afaf13 core: fix resolution of orphan packages
Fix a bug were distant packages with no owner were not deleted.
2015-08-25 22:52:26 -04:00
syl20bnr d255cae4b8 core: refactor layer loading
Prepare the field for some kind of layer prerequisites required by
react and yaml layers
2015-08-25 22:28:30 -04:00
syl20bnr 8a5f454c32 core: fix installation of package dependencies 2015-08-15 00:08:21 -04:00
syl20bnr 50b3b4c99a core: add support for recipe update 2015-08-15 00:07:56 -04:00
syl20bnr 437a819ea1 core: inline recipe in package list
It is now possible to override the recipe in a custom layer.

For instance to override the recipe R for package P in layer L
In a private layer L' put at the end of dotspacemacs-configuration-layers
and listing P with an init function for P, L' becomes the ower of
P and the recipe R' defined in L' overrides the recipe R.
2015-08-14 15:31:22 -04:00
justbur 568e464ca3 Fix #2148: Update failure in Emacs 25
The `package-delete` function refuses to delete a package that is a
depency by default, which prevents the spacemacs update function from
working most of the time.

This commit sets the flag to force deletion for Emacs 25.
2015-08-14 14:39:34 -04:00
syl20bnr e8072b0057 Fix returned local dir value in python and rcirc layers 2015-08-13 09:02:03 -04:00
syl20bnr 62c6462ae9 core: fix nil :owner on package dependencies
Fixes #2643
2015-08-13 09:00:18 -04:00
syl20bnr b45f3b0d0a core: the owner of a package can override some properties
Allowed properties to be overridden are: location, step and excluded
This mechanism allow the user to alter the location of a given
package, for instance if she wants to use her own fork instead of the
version in ELPA.

Note that for now there is no easy way to override the package recipes.
2015-08-13 01:23:39 -04:00
syl20bnr 1c8d90c856 core: add support for quelpa recipes 2015-08-12 23:56:24 -04:00
syl20bnr 1514c6e7d3 core: fix bug in package-usedp
It returned t even if the package has no owner.
Fixes #2601
2015-08-11 23:25:00 -04:00
syl20bnr 4148fdff56 core: add support for local directory 2015-08-11 19:45:28 -04:00
syl20bnr e2bdc25396 core: fix mandatory package and extension list variables 2015-08-10 21:22:28 -04:00
Robert O'Connor 3f7dab0eeb Change elpa to use http.
GNU is having issues with HTTPS right now.

Fixes #2596
2015-08-09 21:52:47 -04:00
syl20bnr b7205ebd49 core: fix load file error with dotspacemacs-additional-packages 2015-08-09 14:47:19 -04:00
syl20bnr 88143a33fa core: correctly handle packages owned by the dotfile
i.e. packages listed it dotspacemacs-additional-packages
2015-08-09 11:38:15 -04:00
syl20bnr 9ac2d54423 core: correctly make excluded packages 2015-08-09 11:34:35 -04:00
syl20bnr 51807654a1 core: package-list-v2 fix packages update
Ready to be merged in develop
2015-08-09 00:59:13 -04:00
syl20bnr 64be291221 core: rename some function arguments to more explicit pkg-name 2015-08-09 00:59:13 -04:00
syl20bnr 88a6ddbe37 core: package-list-v2 fix orphan deletion 2015-08-09 00:59:12 -04:00
syl20bnr f0985162c6 core: package-list-v2 fix helm-spacemacs 2015-08-09 00:59:12 -04:00
syl20bnr 00fc8f9502 core: package-list-v2 fix install of packages 2015-08-09 00:59:11 -04:00
syl20bnr b887a21bb6 core: package-list-v2 working loading, still error at install time 2015-08-09 00:59:11 -04:00
syl20bnr aa2669ee9c core: package-list-v2 install and orphan detection
Still need to clean the orphan detection though

Packages are not configured for now
2015-08-09 00:58:48 -04:00
syl20bnr e4748ea692 core: package-list-v2 sort package list 2015-08-09 00:58:33 -04:00
syl20bnr e145f73b8b core: package-list-v2 fix layer variables 2015-08-09 00:58:02 -04:00
syl20bnr f484c2594a core: package-list-v2 new class cfgl-package 2015-08-09 00:55:46 -04:00
syl20bnr a0cbcd4a5d core: fix error when a layer is not found 2015-07-26 20:41:06 -04:00
syl20bnr faa18f49df core: start to use eieio
Replace the alist of layer by a list of layer objects.
2015-07-26 00:41:41 -04:00
syl20bnr 844f2026ac core: rename declare-layers and declare-layer funcs
renamed to declare-used-layers and declare-used-layer respectively
2015-07-25 22:59:54 -04:00
syl20bnr 55f13db2b7 core: fix error when dotspacemacs-directory is nil 2015-07-23 22:59:45 -04:00
justbur 252f26d555 Make default private layer directory explicit 2015-07-23 22:28:26 -04:00
justbur e1eed07c30 Add option for .spacemacs.d/init.el .spacemacs file
Setting SPACEMACSDIR overrides location of .spacemacs.d

Add dotspacemacs-directory variable

Add dotspacemacs-directory to layer search path
2015-07-23 22:25:39 -04:00
syl20bnr 5e1c5319e9 core: put MELPA at the top of the list of archives 2015-07-02 00:38:47 -04:00
Travis B. Hartwell e236d5a280 core: add optional argument to configuration-layer/update-packages
So if called using the universal argument or with a parameter yes is
assumed to the question to update packages.  Useful for calling Emacs
in batch mode to update Spacemacs.
2015-07-01 01:45:37 -04:00
zimbatm b5a732220a Use SSL to contact elpa repositories when possible
* ELPA: Certificate for different domain. HTTPS redirects to HTTP.
* gnu: yes
* melpa: N/A
* org: N/A
* marmalade: Certificate expired. HTTP redirects to HTTPS.
2015-06-22 23:09:18 -04:00
syl20bnr 86c94a2c7f core: auto-discover categories
Categories are directories whose names start with `!`
2015-06-05 22:47:23 -04:00
Eivind Fonn a5a294cb33 Locate layers in arbitrary subdirectories
Conflicts:
	core/core-configuration-layer.el
2015-06-05 21:36:43 -04:00
Keshav Kini 696f2d461a Use weirder-looking templating variables
It's important to make templating variables something unique-looking so
that you don't accidentally write template variables where you don't
mean to.  For example, in extensions.template, "package names go here"
was being replaced with "package <name of package>s go here", etc.
Also Search case-insensitively for good measure
2015-06-02 22:50:51 -04:00
syl20bnr 0846591934 Catch layer variable errors at startup 2015-06-01 00:29:38 -04:00
syl20bnr 4489de827b Now :variables values must be quoted like in setq sexps
Fixes #1596
2015-05-31 20:55:46 -04:00
justbur 33e439e9cc Add option to select other layer directories in create-layer 2015-05-27 23:56:11 -04:00
Tristan Hume eecb250a55 Prefix categories with ! 2015-05-25 00:50:38 -04:00