Compare commits
4 Commits
ec4f355ac2
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 5045c5e5e9 | |||
| 8ccb91103a | |||
| b0aed42312 | |||
| b2be7f9a76 |
@@ -6,42 +6,42 @@
|
|||||||
(setq custom-file (locate-user-emacs-file "custom-vars.el"))
|
(setq custom-file (locate-user-emacs-file "custom-vars.el"))
|
||||||
|
|
||||||
;;; Elpaca package manager
|
;;; Elpaca package manager
|
||||||
(defvar elpaca-installer-version 0.11)
|
(defvar elpaca-installer-version 0.12)
|
||||||
(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory))
|
(defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory))
|
||||||
(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory))
|
(defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory))
|
||||||
(defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory))
|
(defvar elpaca-sources-directory (expand-file-name "sources/" elpaca-directory))
|
||||||
(defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git"
|
(defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git"
|
||||||
:ref nil :depth 1
|
:ref nil :depth 1 :inherit ignore
|
||||||
:files (:defaults "elpaca-test.el" (:exclude "extensions"))
|
:files (:defaults "elpaca-test.el" (:exclude "extensions"))
|
||||||
:build (:not elpaca--activate-package)))
|
:build (:not elpaca-activate)))
|
||||||
(let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory))
|
(let* ((repo (expand-file-name "elpaca/" elpaca-sources-directory))
|
||||||
(build (expand-file-name "elpaca/" elpaca-builds-directory))
|
(build (expand-file-name "elpaca/" elpaca-builds-directory))
|
||||||
(order (cdr elpaca-order))
|
(order (cdr elpaca-order))
|
||||||
(default-directory repo))
|
(default-directory repo))
|
||||||
(add-to-list 'load-path (if (file-exists-p build) build repo))
|
(add-to-list 'load-path (if (file-exists-p build) build repo))
|
||||||
(unless (file-exists-p repo)
|
(unless (file-exists-p repo)
|
||||||
(make-directory repo t)
|
(make-directory repo t)
|
||||||
(when (< emacs-major-version 28) (require 'subr-x))
|
(when (<= emacs-major-version 28) (require 'subr-x))
|
||||||
(condition-case-unless-debug err
|
(condition-case-unless-debug err
|
||||||
(if-let ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*"))
|
(if-let* ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*"))
|
||||||
((zerop (apply #'call-process `("git" nil ,buffer t "clone"
|
((zerop (apply #'call-process `("git" nil ,buffer t "clone"
|
||||||
,@(when-let ((depth (plist-get order :depth)))
|
,@(when-let* ((depth (plist-get order :depth)))
|
||||||
(list (format "--depth=%d" depth) "--no-single-branch"))
|
(list (format "--depth=%d" depth) "--no-single-branch"))
|
||||||
,(plist-get order :repo) ,repo))))
|
,(plist-get order :repo) ,repo))))
|
||||||
((zerop (call-process "git" nil buffer t "checkout"
|
((zerop (call-process "git" nil buffer t "checkout"
|
||||||
(or (plist-get order :ref) "--"))))
|
(or (plist-get order :ref) "--"))))
|
||||||
(emacs (concat invocation-directory invocation-name))
|
(emacs (concat invocation-directory invocation-name))
|
||||||
((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch"
|
((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch"
|
||||||
"--eval" "(byte-recompile-directory \".\" 0 'force)")))
|
"--eval" "(byte-recompile-directory \".\" 0 'force)")))
|
||||||
((require 'elpaca))
|
((require 'elpaca))
|
||||||
((elpaca-generate-autoloads "elpaca" repo)))
|
((elpaca-generate-autoloads "elpaca" repo)))
|
||||||
(progn (message "%s" (buffer-string)) (kill-buffer buffer))
|
(progn (message "%s" (buffer-string)) (kill-buffer buffer))
|
||||||
(error "%s" (with-current-buffer buffer (buffer-string))))
|
(error "%s" (with-current-buffer buffer (buffer-string))))
|
||||||
((error) (warn "%s" err) (delete-directory repo 'recursive))))
|
((error) (warn "%s" err) (delete-directory repo 'recursive))))
|
||||||
(unless (require 'elpaca-autoloads nil t)
|
(unless (require 'elpaca-autoloads nil t)
|
||||||
(require 'elpaca)
|
(require 'elpaca)
|
||||||
(elpaca-generate-autoloads "elpaca" repo)
|
(elpaca-generate-autoloads "elpaca" repo)
|
||||||
(load "./elpaca-autoloads")))
|
(let ((load-source-file-function nil)) (load "./elpaca-autoloads"))))
|
||||||
(add-hook 'after-init-hook #'elpaca-process-queues)
|
(add-hook 'after-init-hook #'elpaca-process-queues)
|
||||||
(elpaca `(,@elpaca-order))
|
(elpaca `(,@elpaca-order))
|
||||||
|
|
||||||
@@ -51,16 +51,16 @@
|
|||||||
|
|
||||||
;; Magit depends on newer versions of seq/transient than Emacs bundles, but Elpaca
|
;; Magit depends on newer versions of seq/transient than Emacs bundles, but Elpaca
|
||||||
;; can't or won't update them on its own.
|
;; can't or won't update them on its own.
|
||||||
(defun +elpaca-unload-seq (e)
|
;; (defun +elpaca-unload-seq (e)
|
||||||
(and (featurep 'seq) (unload-feature 'seq t))
|
;; (and (featurep 'seq) (unload-feature 'seq t))
|
||||||
(elpaca--continue-build e))
|
;; (elpaca--continue-build e))
|
||||||
|
|
||||||
(defun +elpaca-seq-build-steps ()
|
;; (defun +elpaca-seq-build-steps ()
|
||||||
(append (butlast (if (file-exists-p (expand-file-name "seq" elpaca-builds-directory))
|
;; (append (butlast (if (file-exists-p (expand-file-name "seq" elpaca-builds-directory))
|
||||||
elpaca--pre-built-steps elpaca-build-steps))
|
;; elpaca--pre-built-steps elpaca-build-steps))
|
||||||
(list '+elpaca-unload-seq 'elpaca--activate-package)))
|
;; (list '+elpaca-unload-seq 'elpaca--activate-package)))
|
||||||
|
|
||||||
(use-package seq :ensure `(seq :build ,(+elpaca-seq-build-steps)))
|
;; (use-package seq :ensure `(seq :build ,(+elpaca-seq-build-steps)))
|
||||||
(use-package transient :ensure t)
|
(use-package transient :ensure t)
|
||||||
|
|
||||||
;; Required for magit, but Elpaca seems unable to find it by default
|
;; Required for magit, but Elpaca seems unable to find it by default
|
||||||
@@ -285,7 +285,10 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
;;;; Jinx
|
;;;; Jinx
|
||||||
|
|
||||||
(use-package jinx
|
(use-package jinx
|
||||||
|
:ensure t
|
||||||
:hook (emacs-startup . global-jinx-mode)
|
:hook (emacs-startup . global-jinx-mode)
|
||||||
|
:custom
|
||||||
|
(jinx-modes '(text-mode))
|
||||||
:bind ([remap transpose-chars] . jinx-correct))
|
:bind ([remap transpose-chars] . jinx-correct))
|
||||||
|
|
||||||
;;; Completion
|
;;; Completion
|
||||||
@@ -366,10 +369,7 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
consult-theme consult-xref consult-bookmark
|
consult-theme consult-xref consult-bookmark
|
||||||
consult-ripgrep consult-git-grep consult-grep
|
consult-ripgrep consult-git-grep consult-grep
|
||||||
:preview-key '(:debounce 0.4 any)
|
:preview-key '(:debounce 0.4 any)
|
||||||
|
|
||||||
consult-recent-file consult-buffer
|
consult-recent-file consult-buffer
|
||||||
consult--source-bookmark consult--source-recent-file
|
|
||||||
consult--source-project-recent-file
|
|
||||||
:preview-key "C-."))
|
:preview-key "C-."))
|
||||||
|
|
||||||
(use-package consult-dir
|
(use-package consult-dir
|
||||||
@@ -765,10 +765,14 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
(use-package org-bullets
|
(use-package org-bullets
|
||||||
:ensure t
|
:ensure t
|
||||||
:config
|
:config
|
||||||
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1)))
|
(add-hook 'org-mode-hook (lambda () (org-bullets-mode 1))))
|
||||||
;; Eagerly load org-mode
|
|
||||||
(with-temp-buffer
|
;; Preload org-mode (and warm up text-mode hooks like jinx) after
|
||||||
(org-mode)))
|
;; packages are available on the load-path
|
||||||
|
(add-hook 'emacs-startup-hook
|
||||||
|
(lambda ()
|
||||||
|
(with-temp-buffer
|
||||||
|
(org-mode))))
|
||||||
|
|
||||||
(defun my/org-clear-all ()
|
(defun my/org-clear-all ()
|
||||||
(interactive)
|
(interactive)
|
||||||
@@ -853,9 +857,9 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
:ensure t
|
:ensure t
|
||||||
:custom
|
:custom
|
||||||
(treesit-auto-install 'prompt)
|
(treesit-auto-install 'prompt)
|
||||||
|
:hook (prog-mode . treesit-auto-mode)
|
||||||
:config
|
:config
|
||||||
(treesit-auto-add-to-auto-mode-alist 'all)
|
(treesit-auto-add-to-auto-mode-alist 'all))
|
||||||
(global-treesit-auto-mode))
|
|
||||||
|
|
||||||
;;;; Markdown
|
;;;; Markdown
|
||||||
(use-package markdown-mode
|
(use-package markdown-mode
|
||||||
@@ -960,18 +964,6 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
:custom
|
:custom
|
||||||
(lsp-ui-sideline-show-diagnostics nil))
|
(lsp-ui-sideline-show-diagnostics nil))
|
||||||
|
|
||||||
;;;; Flycheck
|
|
||||||
(use-package flycheck
|
|
||||||
:ensure t
|
|
||||||
:init
|
|
||||||
(setq flycheck-keymap-prefix (kbd "C-c e"))
|
|
||||||
(global-flycheck-mode)
|
|
||||||
;; Elisp lint errors are annoying, so disable flycheck in elisp modes
|
|
||||||
:hook (emacs-lisp-mode . (lambda () (flycheck-mode -1)))
|
|
||||||
:bind (:repeat-map flycheck-repeat-map
|
|
||||||
("n" . flycheck-next-error)
|
|
||||||
("p" . flycheck-previous-error)))
|
|
||||||
|
|
||||||
;;;; Nix
|
;;;; Nix
|
||||||
(use-package nix-mode
|
(use-package nix-mode
|
||||||
:ensure t
|
:ensure t
|
||||||
|
|||||||
12
nix/flake.lock
generated
12
nix/flake.lock
generated
@@ -27,11 +27,11 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759702766,
|
"lastModified": 1773093840,
|
||||||
"narHash": "sha256-011pCUbIq/fhCiZ20AzqJYNjLzQ1oYkzYEgzcUYVTBg=",
|
"narHash": "sha256-u/96NoAyN8BSRuM3ZimGf7vyYgXa3pLx4MYWjokuoH4=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "5b45dcf4790bb94fec7e550d2915fc2540a3cdd6",
|
"rev": "bb014746edb2a98d975abde4dd40fa240de4cf86",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -42,11 +42,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759632233,
|
"lastModified": 1772956932,
|
||||||
"narHash": "sha256-krgZxGAIIIKFJS+UB0l8do3sYUDWJc75M72tepmVMzE=",
|
"narHash": "sha256-M0yS4AafhKxPPmOHGqIV0iKxgNO8bHDWdl1kOwGBwRY=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "d7f52a7a640bc54c7bb414cca603835bf8dd4b10",
|
"rev": "608d0cadfed240589a7eea422407a547ad626a14",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
Reference in New Issue
Block a user