Commit Graph

4574 Commits

Author SHA1 Message Date
Henrik Lissner
d474223a99 cli/upgrade: don't use removed -f switch 2019-11-16 21:04:08 -05:00
Henrik Lissner
c363791da0 Made -f the default for 'doom refresh' #2065
-f is necessary when there are changes to your system that Doom needs to
pick up when running 'doom refresh'. It won't do anything if your doom
dotfiles haven't visibly changed, which won't be the case if you are
installing, say, mu4e or vterm, through your system package manager.

What was initially a time-saving mechanic has become a trap for
beginners, so I've made -f its default behavior and its previous
behavior opt-in with the -n / --if-necessary switches.
2019-11-16 20:55:08 -05:00
Henrik Lissner
b9e5059e3f Ensure only one window after doom/kill-all-buffers 2019-11-15 22:17:30 -05:00
Henrik Lissner
9108f4780e Clean up & refactor tests 2019-11-15 02:14:42 -05:00
Henrik Lissner
3d4a51b4a9 Merge pull request #2006 from RBckmnn/FixSudoEdit
Fix doom/sudo-{find,this}-file on remote files
2019-11-15 01:34:00 -05:00
Henrik Lissner
287cc94cba Fix doom-load-autoloads-file tests on macos
Since /var is symlinked to /private/var on macos, the tests -- which do
a simple string comparison between two paths -- won't correctly
determine the two paths are the same file.
2019-11-15 00:56:58 -05:00
Ralf Beckmann
12fcd3857d Avoid superfluous buffers when sudo-editing
When invoking 'doom/sudo-this-file', do not
keep the old buffer around, since it is most
likely no longer needed.
2019-11-14 20:48:21 +01:00
Henrik Lissner
6599388f00 Fix infinite loop on invalid answer to straight prompts 2019-11-14 02:37:24 -05:00
Henrik Lissner
82c0fb6fc7 cli/doctor: ensure modules are fully loaded 2019-11-12 15:24:02 -05:00
Henrik Lissner
c297d091bd Fix void-function doom-initialize-packages on 'doom upgrade' 2019-11-10 23:43:05 -05:00
Henrik Lissner
8d112fdca8 Prevent void-variable errors on 'doom upgrade'
If Doom is up-to-date, certain Doom package state doesn't get
initialized for the 'doom update' that occurs directly after, causing
these errors.
2019-11-10 20:15:25 -05:00
Henrik Lissner
4ceb09c219 cli/upgrade: don't double-update packages
And don't initialize too much of Doom before updating it.
2019-11-10 16:44:53 -05:00
Henrik Lissner
829e1762b1 cli/doctor: fix vestigial variable references 2019-11-10 04:56:55 -05:00
Henrik Lissner
dd1dd6901f doom-directory-size: error if path doesn't exist 2019-11-10 04:29:53 -05:00
Henrik Lissner
e252ee61e7 cli/doctor: fix HOME project root detection 2019-11-10 01:39:30 -05:00
Henrik Lissner
962459e8ba cli/doctor: fix cache filesize checks
Closes #2041
2019-11-10 01:35:21 -05:00
Henrik Lissner
17b874dedd Refactor doom-file-size
Change it throw an error if the file doesn't exist.
2019-11-10 01:32:58 -05:00
Henrik Lissner
6c31968a46 cli/doctor: fix font checks 2019-11-09 20:32:48 -05:00
Henrik Lissner
5c3f7d648d cli/doctor: fix void-variable font-dest error
...when a font is missing.
2019-11-09 20:28:40 -05:00
Henrik Lissner
2158b7bdeb Fix dir! & file! tests 2019-11-09 20:25:55 -05:00
Henrik Lissner
967e32c084 Ignore doom-debug-mode in quiet! tests 2019-11-09 17:28:39 -05:00
Henrik Lissner
31f1873aaa Fix tests 2019-11-09 17:03:47 -05:00
Henrik Lissner
b3b0af8a35 Complain if autoload libs fail to load 2019-11-09 17:00:33 -05:00
Henrik Lissner
a55b5a4514 Fix void-function doom-sh error in 'doom upgrade' #2034 2019-11-09 11:06:06 -05:00
Henrik Lissner
cc1bbe0b7e core-cli: add doom-cli constructor 2019-11-09 02:23:58 -05:00
Henrik Lissner
135e7ffc89 Load seq in core-cli 2019-11-08 17:48:16 -05:00
Henrik Lissner
3896b994b5 Remove double-negative filesize from 'doom purge' 2019-11-08 17:30:21 -05:00
Henrik Lissner
5c459e75f8 Fix 'doom refresh' not seeing -f/--force 2019-11-08 16:57:25 -05:00
Henrik Lissner
4ce153519c Refactor out map.el dependency
Since map-put appears to be deprecated on Emacs 27
2019-11-08 16:57:19 -05:00
Henrik Lissner
d20d664f84 Update 'doom install' to reflect recent changes #2033 2019-11-08 16:39:48 -05:00
Henrik Lissner
35152fda67 Fix 'doom env -c'
Throwing "I don't understand 'doom env -c'" errors
2019-11-08 16:20:43 -05:00
Henrik Lissner
ee2c1e384c Fix void-variable doom-module-dirs error from 'doom clean' 2019-11-08 16:19:29 -05:00
Henrik Lissner
d099fac2b9 Fix core & core-lib tests 2019-11-08 16:02:07 -05:00
Henrik Lissner
d683effd23 Recognize single-character envvars in doom-load-envvars-file
And preserve insertion order for process-environment's new value.
2019-11-08 16:02:06 -05:00
Henrik Lissner
d78d584fdf Demote autoload errors to warnings 2019-11-08 16:02:06 -05:00
Henrik Lissner
9ef6ccb7cd Refactor doom-run-all-startup-hooks-h 2019-11-08 16:02:06 -05:00
Henrik Lissner
44d5e097c9 shell-command-to-string -> doom-call-process #1887
Minor optimization to remove a layer of indirection when starting
processes.
2019-11-08 16:02:06 -05:00
Henrik Lissner
873fc5c0db Rewrite core-cli
Highlights:
- 'doom purge' now purges builds, elpa packages, and repos by default.
  Regrafting repos is now opt-in with the -g/--regraft switches.
  Negation flags have been added for elpa/repos: -e/--no-elpa and
  -r/--no-repos.
- Removed 'doom rebuild' (it is now just 'doom build' or 'doom b').
- Removed 'doom build's -f flag, this is now the default. Added the -r
  flag instead, which only builds packages that need rebuilding.
- 'doom update' now updates packages synchronously, but produces more
  informative output about the updating process.
- Straight can now prompt in batch mode, which resolves a lot of issues
  with 'doom update' (and 'doom upgrade') freezing indefinitely or
  throwing repo branch errors.
- 'bin/doom's switches are now positional. Switches aimed at `bin/doom`
  must precede any subcommands. e.g.
    Do: 'doom -yd upgrade'
    Don't do: 'doom upgrade -yd'
- Moved 'doom doctor' from bin/doom-doctor to core/cli/doctor, and
  integrated core/doctor.el into it, as to avoid naming conflicts
  between it and Emacs doctor.
- The defcli! macro now has a special syntax for declaring flags, their
  arguments and descriptions.

Addresses #1981, #1925, #1816, #1721, #1322
2019-11-08 16:02:06 -05:00
Henrik Lissner
99cd52e70f 💥 Drop Emacs 25.x support
Emacs 26.1 is Doom's new minimum supported version

Closes #2026
2019-11-08 16:02:06 -05:00
Henrik Lissner
8db3b7dca7 Always load package autoloads file & demote errors
Indirectly addresses #2010
2019-11-04 17:21:56 -05:00
Henrik Lissner
2bf74158fd Minor refactors across the board 2019-11-04 03:37:54 -05:00
Henrik Lissner
633fd7c95f Exclude *.org files from doom/help-packages{,-config} 2019-11-03 15:43:18 -05:00
Henrik Lissner
2519d12ae3 Don't trigger so-long in noninteractive sessions 2019-11-03 13:06:44 -05:00
Ralf Beckmann
7a810d53a0 Consider current buffer's file when sudo-editing
If doom/sudo-find-file is invoked with a file that is equal
to the current buffer's file, kill that buffer since it is probably
not needed anymore.
2019-11-03 14:25:10 +01:00
Henrik Lissner
cae8c3f145 Refresh package.el first time package-install is used 2019-11-02 21:55:40 -04:00
Ralf Beckmann
68e56025bc Fixed sudo edit on remote files
The previous implementation failed, if the
remote user was given only implicitly.
2019-11-03 02:22:52 +01:00
Henrik Lissner
9fbfc44f73 Fix doom-create-missing-directories-h
Hanging variable reference caused a void-variable error.
2019-11-02 14:01:19 -04:00
Henrik Lissner
e1d62f5d12 Don't trigger create-missing-directories on remotes
Also: minor refactor of the hook.
2019-11-02 13:25:43 -04:00
Henrik Lissner
7142b4aa0f Make plist-put! variadic
And capable of modifying non-symbols in-place.
2019-11-02 00:02:54 -04:00
Henrik Lissner
7b9991711a defvar->defconst for dir vars & expand DIR envvars
- Use defconst so that we can reload core.el if these variables change.
- Expand DIR envvars to ensure their correctness
2019-11-01 15:12:12 -04:00