Commit Graph

544 Commits

Author SHA1 Message Date
aca1599a81 Only resolve package :local-repo if relative path exists
This allows you to specify a :local-repo relative to the directory your
packages.el is in. If it doesn't exist, it'll assume you meant a
directory in ~/.emacs.d/.local/straight/repos
2020-04-29 00:29:17 -04:00
c963038308 Use straight master branch by default
raxod502/straight.el@d28fd41930 causes breakage; preventing users from
installing Doom. It's about time we stop living dangerously and use
straight's master branch instead.

Addresses #2937
2020-04-19 14:47:05 -04:00
b78fc4eb76 Minor refactor & reformatting across the board 2020-04-08 15:30:10 -04:00
8a7763337d doom refresh -> doom sync
refresh isn't going anywhere, but sync will be the canonical command
here on out, because it is more appropriate for kind of work it will be
doing in the future.
2020-02-19 23:34:16 -05:00
097972bd9d Refactor package pinning
- Make doom/info package details more concise
- Removed doom-pinned-packages variable (pin info now stored in
  doom-packages metadata)
- Fix unpin! not actually unpinning some packages
2020-01-28 20:47:45 -05:00
c6518498b9 Fix void-variable targets when using unpin! macro 2020-01-28 14:07:08 -05:00
99fc55f75c General, minor refactors in doom core 2020-01-27 00:51:32 -05:00
dadd54604b Refactor package update logic
Still needs more work.
2020-01-26 21:21:06 -05:00
f600605de3 Add "unpin" section to doom/info
Important when debugging potential upstream issues.
2020-01-25 19:02:01 -05:00
a9402cfb55 Fix #2373: bring back package pinning
This needs some serious refactoring...
2020-01-25 19:02:00 -05:00
d866592beb Fix unpin! with variadic module lists 2020-01-15 00:45:43 -05:00
835f3f2c53 Eval unpin! logic at runtime 2020-01-15 00:31:12 -05:00
4b2a9c8c38 Polish unpin! user story and docstring 2020-01-14 23:05:17 -05:00
f3a9d0c03c Resolve pinned packages based on overridden recipes
And rearrange "Checking out ..." message during 'doom upgrade' to
display package first, then commit (and abbreviated), rather than the
other around. It's easier to read.
2020-01-14 21:57:58 -05:00
7326d2b4dc Add unpin! macro for easy package unpinning 2020-01-14 21:39:19 -05:00
b8b0f73edc Resolve packages to repo for pinned packages
- Allow :pin SHA's to be abbreviated.
- Print out the repo being updated, rather than the package.
2020-01-14 21:18:59 -05:00
9745f41ded Add :no-byte-compile & :no-autoloads support to package! :recipe #2370 2020-01-14 19:25:24 -05:00
f6852a2c9f Add --discard switch to 'doom upgrade' #2224
Also rewrites straight prompt-in-batch-Emacs hack, and move it to
core-cli.el.
2020-01-09 03:36:00 -05:00
309e322037 Add (Recommended) after certain straight prompts
When a package's worktree is dirty (or its recipe was changed), straight
prompts you with options to deal with it. To make it easier for less git
savvy folks, the recommended option has been marked.
2020-01-08 22:07:34 -05:00
7a348f8784 Refactor how we indent straight's progress output
More work up front, less work in the trenches.
2020-01-01 19:34:30 -05:00
b592e58c97 Fix warning when disabling core packages 2019-12-31 14:10:52 -05:00
e5602c1802 Move async.el out of baseline packages
It isn't needed anywhere atm. Perhaps we don't need it in core at all?
2019-12-27 01:52:45 -05:00
0ff68e5a7f Don't handle straight transactions anymore
Since raxod502/straight.el@e45f726, straight handles its transactions in
non-interactive sessions.
2019-12-27 01:44:41 -05:00
a02cfdc365 No-op package--ensure-init-file completely
Rather than setting package--init-file-ensured to nil. It's less work
for Emacs at startup and is functionally equivalent.
2019-12-27 01:44:40 -05:00
09b49ee83a Silence unused retval warnings from package! 2019-12-26 02:44:23 -05:00
c1ff03ebed Expand :local-repo relative to containing file 2019-12-26 02:40:56 -05:00
28e36222ed Reformat package! macro 2019-12-24 02:35:07 -05:00
ebc30232a3 Fix package manager ignoring :disable 2019-12-24 02:25:37 -05:00
125561eb03 Refactor package! & package init system
- Reduces `package!`'s side-effects and moves them to
  `doom-initialize-packages`.
- Adds :pin to `package!` for commit pinning (but it hasn't been
  implemented just yet -- needs more testing)!
- Adds `doom-pinned-packages` variable
- Now overrides straight recipes using `straight-override-recipe`
  instead of in-house merging.
2019-12-24 00:02:50 -05:00
969b047472 Add warning when disabling core packages #2223 2019-12-21 14:11:20 -05:00
11046d7f82 Move gcmh from doom-core-packages to core/packages.el
It doesn't need to be present outside of interactive sessions.
2019-12-19 22:07:32 -05:00
5ece51a2a6 Prevent straight recipe lookup errors #2104
Errors like 'Could not find package emacsmirror-mirror in recipe
repositories' occur because I assumed that straight--reset-caches would
unset `straight-recipe-repositories`. I'm not sure if that was ever the
case, but it isn't now.
2019-11-23 01:44:49 -05:00
9676c7a871 Update straight init
Since straight-allow-recipe-inheritance was introduced upstream, we no
longer need to merge recipes ourselves.
2019-11-23 01:21:24 -05:00
db19241936 Use gcmh package to manage adjust GC interactively 2019-11-21 14:46:45 -05:00
8ea3733e73 Fix :built-in property for package! 2019-11-17 17:55:06 -05:00
3195b84fd2 Evaluate package! properties & error on :fetcher
- No longer translates :fetcher to :host. Update your package!
  declaration people!
- Now evaluates the values for properties (except for :recipe IF it is a
  list whose CAR passes keywordp -- for backwards compatibility).
- Throws error if an invalid property is used for a package!'s :recipe
2019-11-17 16:48:25 -05:00
6599388f00 Fix infinite loop on invalid answer to straight prompts 2019-11-14 02:37:24 -05:00
cae8c3f145 Refresh package.el first time package-install is used 2019-11-02 21:55:40 -04:00
c2f6aa3e9d Remove duplicate straight-are-you-sure advice 2019-10-26 00:58:26 -04:00
c990c50fb8 Force straight to fall back to tty prompts
Otherwise it tries to use popups, which are invisible in non-interactive
Emacs, causing Emacs to block indefinitely.
2019-10-26 00:35:47 -04:00
641d4a1b71 Fix ':built-in prefer' in package!
It was treating 'prefer as truthy, thus preventing packages with it from
being installed (like so-long).
2019-10-25 04:00:49 -04:00
f516d4c342 Fix package! mutating package state at expansion time
Fixes an issue where package! declarations were read unconditionally at
compile time, whether or not they were on a reachable code path. e.g.
evil is always disabled by:

  (when nil
    (package! evil :disable t))
2019-10-25 02:38:15 -04:00
45240699e0 Remove doom-elpa-dir variable
And just use package-user-dir. No need for two variable when one will
do.
2019-09-26 14:26:47 -04:00
31ccd9be78 Replace vestigial references to def-package!
def-package! is deprecated and is replaced with use-package! to reduce
confusion about its purpose and connection to use-package.
2019-09-13 22:00:34 -04:00
4b736bef68 Introduce doom-interactive-mode
As soft inverse alias for noninteractive; this makes it easier to unit
test functionality that depends on the session type.
2019-09-03 00:37:30 -04:00
91b27bdccc Remove doom--straight-use-local-dir-a advice
Unnecessary now that straight-base-dir exists.
2019-09-02 22:51:20 -04:00
19899dac82 Fix inverted condition in package-archives assembly 2019-08-28 22:08:13 -04:00
75fe17950e Refactor doom-initialize-packages
Make it reinitialize more if FORCE-P is provided or doom-init-packages-p
is nil.
2019-08-28 16:46:39 -04:00
8ac1e1a781 Refactor doom init process
- Refactors doom-initialize
- Moves doom-initialize-modules call to init.el, to more easily isolate
  it during unit testing.
2019-08-27 00:05:12 -04:00
879f3a660a Use new straight-base-dir variable
We can't phase out doom--straight-use-local-dir-a until I fix the issue
with straight not reinstalling packages when their recipes change.
2019-08-21 00:29:12 -04:00