blob: d18bd293a34e5a833e85a858fcfd556fa9b3d35f (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
;;; thanos-packages.el --- -*- lexical-binding: t; -*-
;; Copyright (C) 2023 Thanos Apollo
;; Author: Thanos Apollo <[email protected]>
;; Keywords:
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;; ╭━━━━┳╮╱╱╱╱╱╱╱╱╱╱╱╱╱╱╭━━━╮╱╱╱╱╱╭╮╭╮╱╱╱╱╱╱╱╱╭━━━╮
;; ┃╭╮╭╮┃┃╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃╭━╮┃╱╱╱╱╱┃┃┃┃╱╱╱╱╱╱╱╱┃╭━━╯
;; ╰╯┃┃╰┫╰━┳━━┳━╮╭━━┳━━╮┃┃╱┃┣━━┳━━┫┃┃┃╭━━╮╱╱╱╱┃╰━━┳╮╭┳━━┳━━┳━━╮
;; ╱╱┃┃╱┃╭╮┃╭╮┃╭╮┫╭╮┃━━┫┃╰━╯┃╭╮┃╭╮┃┃┃┃┃╭╮┃╭━━╮┃╭━━┫╰╯┃╭╮┃╭━┫━━┫
;; ╱╱┃┃╱┃┃┃┃╭╮┃┃┃┃╰╯┣━━┃┃╭━╮┃╰╯┃╰╯┃╰┫╰┫╰╯┃╰━━╯┃╰━━┫┃┃┃╭╮┃╰━╋━━┃
;; ╱╱╰╯╱╰╯╰┻╯╰┻╯╰┻━━┻━━╯╰╯╱╰┫╭━┻━━┻━┻━┻━━╯╱╱╱╱╰━━━┻┻┻┻╯╰┻━━┻━━╯
;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱┃┃
;; ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╰╯
;;; Code:
(require 'package)
;; Straight
(defvar bootstrap-version)
(let ((bootstrap-file
(expand-file-name "straight/repos/straight.el/bootstrap.el" user-emacs-directory))
(bootstrap-version 6))
(unless (file-exists-p bootstrap-file)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.githubusercontent.com/radian-software/straight.el/develop/install.el"
'silent 'inhibit-cookies)
(goto-char (point-max))
(eval-print-last-sexp)))
(load bootstrap-file nil 'nomessage))
(setf straight-recipe-overrides
'((doom-modeline :type git :host github :repo "seagle0128/doom-modeline")
(elfeed :type git :host github :repo "skeeto/elfeed")
(elfeed-goodies :type git :host github :repo "algernon/elfeed-goodies")
(eshell-git-prompt :type git :host github :repo "xuchunyang/eshell-git-prompt")
(eshell-syntax-highlighting :type git :host github :repo "akreisher/eshell-syntax-highlighting")
(gptel :type git :host github :repo "karthink/gptel")
(nerd-icons-completion :type git :host github :repo "rainstormstudio/nerd-icons-completion")
(nerd-icons-dired :type git :host github :repo "rainstormstudio/nerd-icons-dired")
(org-roam :type git :host github :repo "org-roam/org-roam")
(sudo-edit :type git :host github :repo "nflath/sudo-edit")))
(straight-pull-all)
(add-to-list 'load-path "~/dotfiles/emacs.d/packages")
(defvar thanos/packages
'(emms vertico marginalia doom-modeline org-roam nerd-icons-completion
consult org org-modern which-key elfeed elfeed-goodies
visual-fill-column rainbow-delimiters eshell-git-prompt
json-mode ement magit corfu orderless consult pdf-tools
org-auto-tangle sly eat nov eshell-syntax-highlighting
yeetube telega transmission gptel nerd-icons-dired sudo-edit))
(setf package-archives '(("elpa" . "https://elpa.gnu.org/packages/")
("nongnu" . "https://elpa.nongnu.org/nongnu/")))
;; Activate all the packages
(package-initialize)
(setf straight-use-package-by-default t)
;; Install the missing packages
(dolist (package thanos/packages)
(unless (package-installed-p package)
(straight-use-package package)))
;; Set and load custom.el
(setf custom-file (concat user-emacs-directory "custom.el"))
(load custom-file 'noerror)
(provide 'thanos-packages)
;;; thanos-packages.el ends here
|