From 03d48de760dd423110a0a6c8ddec5651007b67ad Mon Sep 17 00:00:00 2001 From: Sakooooo <78461130+Sakooooo@users.noreply.github.com> Date: Mon, 25 Dec 2023 14:20:28 +0400 Subject: [PATCH] Revert "please" This reverts commit 0b03caa7d3786c2facc539ca2c670fadec2dcd86. --- config/emacs/emacs.org | 114 +++++++++++++++++++++++--- config/emacs/init.el | 113 ++++++++++++++++++++++--- modules/dev/editors/emacs/default.nix | 13 +++ 3 files changed, 215 insertions(+), 25 deletions(-) diff --git a/config/emacs/emacs.org b/config/emacs/emacs.org index f45e107c..913cb149 100644 --- a/config/emacs/emacs.org +++ b/config/emacs/emacs.org @@ -104,6 +104,22 @@ Should make startup faster, taken from doom-emacs (require 'use-package) (setq use-package-always-ensure t) #+end_src +* Straight.el setup +#+begin_src emacs-lisp + (message "setting up straight.el") + (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)) +#+end_src * SPEED SPEED SPEED SPEED ** Avoid Garbage Collection at startup #+begin_src emacs-lisp @@ -275,17 +291,24 @@ Should make startup faster, taken from doom-emacs #+end_src ** Command Log Mode #+begin_src emacs-lisp - (use-package command-log-mode) + (use-package command-log-mode + :straight t + ) #+end_src ** Command Autocompletion Packages #+begin_src emacs-lisp ;; better search - (use-package swiper) + (use-package swiper + ;;:straight t + ) ;; better commands - (use-package counsel) + (use-package counsel + :straight t + ) ;; autocompletion on commands (?) (use-package ivy :diminish + :straight t :bind (("C-s" . swiper) :map ivy-minibuffer-map ("TAB" . ivy-alt-done) @@ -304,11 +327,13 @@ Should make startup faster, taken from doom-emacs (ivy-mode 1)) ;; better ivy autocompletion (use-package ivy-rich + :straight t :init (ivy-rich-mode 1)) ;; ivy in the middle (use-package ivy-posframe + :straight t :init (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center))) :config @@ -316,6 +341,7 @@ Should make startup faster, taken from doom-emacs ;; counsel M+X (use-package counsel + :straight t :bind (("M-x" . counsel-M-x) ("C-x b" . counsel-ibuffer) ("C-x C-f" . counsel-find-file) @@ -344,6 +370,7 @@ Should make startup faster, taken from doom-emacs ;; (doom-themes-visual-bell-config)) (use-package timu-macos-theme + :straight t :config (load-theme 'timu-macos t)) @@ -355,6 +382,7 @@ Should make startup faster, taken from doom-emacs ** Nerd-Fonts (All of the Icons doesnt work for me) #+begin_src emacs-lisp (use-package nerd-icons + :straight t :custom ;; "Symbols Nerd Font Mono" is the default and is recommended ;; but you can use any other Nerd Font if you want @@ -364,11 +392,13 @@ Should make startup faster, taken from doom-emacs ** Rainbow Delimiters #+begin_src emacs-lisp (use-package rainbow-delimiters + :straight t :hook (prog-mode . rainbow-delimiters-mode)) #+end_src ** Keybinding autocompletion #+begin_src emacs-lisp (use-package which-key + :straight t :init (which-key-mode) :diminish which-key-mode :config @@ -385,6 +415,7 @@ Should make startup faster, taken from doom-emacs ** Hide Modeline #+begin_src emacs-lisp (use-package hide-mode-line + :straight t :hook (((treemacs-mode eshell-mode shell-mode term-mode vterm-mode @@ -397,12 +428,14 @@ Should make startup faster, taken from doom-emacs ** Minor mode menu for modline #+begin_src emacs-lisp (use-package minions + :straight t :hook (doom-modeline-mode . minions-mode)) #+end_src ** Better help menu #+begin_src emacs-lisp (use-package helpful :ensure t + :straight t :custom (counsel-describe-function-function #'helpful-callable) (counsel-describe-variable-function #'helpful-variable) @@ -415,12 +448,14 @@ Should make startup faster, taken from doom-emacs ** Modern selection behavior #+begin_src emacs-lisp (use-package delsel + :straight t :ensure nil :config (delete-selection-mode +1)) #+end_src ** General Leader Key #+begin_src emacs-lisp (use-package general + :straight t :config (general-create-definer sakomacs/leader-keys :keymaps `(normal insert visual emacs) @@ -478,6 +513,7 @@ Should make startup faster, taken from doom-emacs ** Dashboard #+begin_src emacs-lisp (use-package dashboard + :straight t :init (setq dashboard-display-icons-p t) ;; display icons on both GUI and terminal (setq dashboard-icon-type 'nerd-icons) ;; use `nerd-icons' package @@ -511,6 +547,7 @@ Should make startup faster, taken from doom-emacs ** Evil Mode (vim) #+begin_src emacs-lisp (use-package evil + :straight t :init (setq evil-want-integration t) (setq evil-want-keybinding nil) @@ -532,19 +569,23 @@ Should make startup faster, taken from doom-emacs ;; extra things for Evil (use-package evil-collection + :straight t :after evil :config (evil-collection-init)) ;; commenting (use-package evil-commentary + :straight t :after evil :diminish :config (evil-commentary-mode +1)) #+end_src ** Hydra for scaling text #+begin_src emacs-lisp - (use-package hydra) + (use-package hydra + :straight t + ) (defhydra hydra-text-scale (:timeout 4) "scale text" ("j" text-scale-increase "in") @@ -557,6 +598,7 @@ Should make startup faster, taken from doom-emacs ** Helpful for projects #+begin_src emacs-lisp (use-package projectile + :straight t :diminish projectile-mode :demand :config (projectile-mode) @@ -569,11 +611,13 @@ Should make startup faster, taken from doom-emacs (setq projectile-switch-project-action #'projectile-dired)) (use-package counsel-projectile + :straight t :config (counsel-projectile-mode)) #+end_src ** Org-Mode #+begin_src emacs-lisp (use-package org + :straight t :hook (org-mode . org-indent-mode) :config (setq org-ellipsis " ↓") @@ -705,11 +749,13 @@ Should make startup faster, taken from doom-emacs *** Olivetti #+begin_src emacs-lisp (use-package olivetti + :straight t :hook (org-mode . (lambda () (interactive) (olivetti-mode) (olivetti-set-width 100)))) #+end_src ** Org-Roam #+begin_src emacs-lisp (use-package org-roam + :straight t :ensure t :custom (org-roam-directory "~/org/notes") @@ -724,6 +770,7 @@ Should make startup faster, taken from doom-emacs (use-package treemacs :ensure t :defer t + :straight t :init (with-eval-after-load 'winum (define-key winum-keymap (kbd "M-0") #'treemacs-select-window)) @@ -813,17 +860,21 @@ Should make startup faster, taken from doom-emacs (use-package treemacs-evil :after (treemacs evil) + :straight t :ensure t) (use-package treemacs-projectile :after (treemacs projectile) + :straight t :ensure t) (use-package treemacs-magit :after (treemacs magit) + :straight t :ensure t) (use-package treemacs-nerd-icons + :straight t :config (treemacs-load-theme "nerd-icons")) @@ -832,10 +883,12 @@ Should make startup faster, taken from doom-emacs *** Magit (git in emacs) #+begin_src emacs-lisp (use-package magit + :straight t :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1) ) (use-package magit-todos + :straight t :after magit :config (magit-todos-mode 1)) #+end_src @@ -843,6 +896,7 @@ Should make startup faster, taken from doom-emacs make sure to setup authinfo #+begin_src emacs-lisp (use-package forge + :straight t :after magit) (setq auth-sources '("~/.authinfo")) #+end_src @@ -850,6 +904,7 @@ make sure to setup authinfo *** Direnv #+begin_src emacs-lisp (use-package direnv + :straight t :config (direnv-mode)) #+end_src @@ -861,6 +916,7 @@ make sure to setup authinfo (lsp-headerline-breadcrumb-mode)) (use-package lsp-mode + :straight t :commands (lsp lsp-deferred) :hook (lsp-mode . sakomacs/lsp-mode-setup) :init @@ -873,22 +929,27 @@ make sure to setup authinfo #+begin_src emacs-lisp (use-package lsp-ui :hook (lsp-mode . lsp-ui-mode) + :straight t :custom (lsp-ui-doc-position 'bottom)) #+end_src **** Treemacs Lsp #+begin_src emacs-lisp (use-package lsp-treemacs + :straight t :after lsp) #+end_src **** lsp-ivy #+begin_src emacs-lisp - (use-package lsp-ivy) + (use-package lsp-ivy + :straight t + ) #+end_src **** Languages ***** HTML/CSS #+begin_src emacs-lisp (use-package web-mode + :straight t :hook (web-mode . lsp) :mode ("\\.html\\'" "\\.css\\'")) @@ -896,6 +957,7 @@ make sure to setup authinfo ***** Javascript #+begin_src emacs-lisp (use-package js2-mode + :straight t :mode ("\\.js\\'" "\\.jsx\\'") :hook (js2-mode . lsp) @@ -908,6 +970,7 @@ make sure to setup authinfo ***** Typescript #+begin_src emacs-lisp (use-package typescript-mode + :straight t :mode ("\\.ts\\'" "\\.tsx\\'") :hook (typescript-mode . lsp)) @@ -943,22 +1006,26 @@ make sure to setup authinfo #+begin_src emacs-lisp (use-package cmake-mode :mode "CMakeLists.txt" + :straight t :hook (cmake-mode . lsp)) #+end_src ***** Lua #+begin_src emacs-lisp (use-package lua-mode :mode "\\.lua\\'" + :straight t :hook (lua-mode . lsp)) #+end_src ***** Python #+begin_src emacs-lisp (use-package python-mode :mode "\\.py\\'" + :straight t :hook (python-mode . lsp)) (use-package elpy :after python-mode + :straight t :custom (elpy-rpc-python-command "python3") @@ -968,6 +1035,7 @@ make sure to setup authinfo (use-package lsp-pyright :ensure t + :straight t :hook (python-mode . (lambda () (require 'lsp-pyright) (lsp)))) ; or lsp-deferred @@ -976,17 +1044,20 @@ make sure to setup authinfo #+begin_src emacs-lisp (use-package haskell-mode :mode "\\.hs\\'" + :straight t :hook (python-mode . lsp)) #+end_src ***** Yaml editing #+begin_src emacs-lisp (use-package yaml-mode + :straight t :mode ("\\.yaml\\'" "\\.yml\\'")) #+end_src ***** Nix #+begin_src emacs-lisp (use-package nix-mode + :straight t :hook ((nix-mode . lsp) (nix-mode . format-all-mode) (nix-mode . (lambda () (setq-local format-all-formatters '(("Nix" alejandra)))))) @@ -995,24 +1066,29 @@ make sure to setup authinfo ***** Dart #+begin_src emacs-lisp (use-package dart-mode + :straight t :hook (dart-mode . lsp) :mode "\\.dart\\'" ) #+end_src ***** Markdown #+begin_src emacs-lisp (use-package markdown-mode + :straight t :hook (markdown-mode . visual-line-mode)) - (use-package markdown-preview-mode) + (use-package markdown-preview-mode + :straight t) #+end_src *** Commenter #+begin_src emacs-lisp (use-package evil-nerd-commenter + :straight t :bind ("M-/" . evilnc-comment-or-uncomment-lines)) #+end_src *** Company Mode (Better Autocompletion) #+begin_src emacs-lisp (use-package company + :straight t :after lsp-mode :hook (lsp-mode . company-mode) :bind (:map company-active-map @@ -1026,15 +1102,18 @@ make sure to setup authinfo (company-tooltip-align-annotations t)) (use-package company-box + :straight t :hook (company-mode . company-box-mode)) #+end_src *** Syntax Checking (Flycheck) #+begin_src emacs-lisp -(use-package flycheck :config (global-flycheck-mode +1)) +(use-package flycheck :straight t :config (global-flycheck-mode +1)) #+end_src *** Formatting #+begin_src emacs-lisp - (use-package format-all) + (use-package format-all + :straight t + ) #+end_src *** Better Compile Messages #+begin_src emacs-lisp @@ -1047,12 +1126,15 @@ make sure to setup authinfo *** Snippets #+begin_src emacs-lisp (use-package yasnippet + :straight t :diminish yas-minor-mode :hook (after-init . yas-global-mode)) - (use-package yasnippet-snippets) + (use-package yasnippet-snippets + :straight t) (use-package yasnippet-capf + :straight t :init (add-to-list 'completion-at-point-functions #'yasnippet-capf)) #+end_src ** Dired (quick file management in emacs) @@ -1156,6 +1238,7 @@ Dired is a built-in file manager for Emacs that does some pretty amazing things! ** RSS Reader #+begin_src emacs-lisp (use-package elfeed + :straight t :config (setq elfeed-use-curl t) (setq browse-url-browser-function 'eww-browse-url) @@ -1163,6 +1246,7 @@ Dired is a built-in file manager for Emacs that does some pretty amazing things! ) (use-package elfeed-protocol + :straight t :after elfeed :config (elfeed-set-timeout 36000) @@ -1203,6 +1287,7 @@ only god knows why im doing this Emacs can be everything? Why not turn it into a pdf reader #+begin_src emacs-lisp (use-package pdf-tools + :straight t :mode ("\\.pdf\\'" . pdf-view-mode) :config (setq-default pdf-view-display-size 'fit-page) @@ -1212,11 +1297,13 @@ Emacs can be everything? Why not turn it into a pdf reader ** Matrix Client okay this one is a bit more understandable #+begin_src emacs-lisp - (use-package ement) + (use-package ement + :straight t) #+end_src ** Discord RPC #+begin_src emacs-lisp -(use-package elcord) +(use-package elcord +:straight t) #+end_src> ** Email This has to be one of the hardest things to configure on windows @@ -1230,7 +1317,8 @@ I should just switch to Linux at this point :( ;; ) ;; we need this regardless of platform - (use-package smtpmail) + (use-package smtpmail + :straight t) #+end_src * Org Mode Configuration Setup ** Babel Languages @@ -1275,6 +1363,7 @@ god dammit why are they making my shells in emacs lisp (use-package eshell-git-prompt) (use-package eshell + :straight t :hook (eshell-first-time-mode . sakomacs/configure-eshell) :config @@ -1287,6 +1376,7 @@ god dammit why are they making my shells in emacs lisp ** VTerm #+begin_src emacs-lisp (use-package vterm + :straight t :commands vterm :config (setq vterm-max-scrollback 10000)) diff --git a/config/emacs/init.el b/config/emacs/init.el index 7f1eae6d..4ca3bf3d 100644 --- a/config/emacs/init.el +++ b/config/emacs/init.el @@ -79,6 +79,20 @@ kept-old-versions 5) (require 'use-package) (setq use-package-always-ensure t) +(message "setting up straight.el") +(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)) + (use-package gcmh :init (setq gcmh-idle-delay 5) @@ -227,15 +241,22 @@ kept-old-versions 5) (message "setting up packages") -(use-package command-log-mode) +(use-package command-log-mode + ;;:straight t + ) ;; better search -(use-package swiper) +(use-package swiper + ;;:straight t + ) ;; better commands -(use-package counsel) +(use-package counsel + :straight t + ) ;; autocompletion on commands (?) (use-package ivy :diminish + :straight t :bind (("C-s" . swiper) :map ivy-minibuffer-map ("TAB" . ivy-alt-done) @@ -254,11 +275,13 @@ kept-old-versions 5) (ivy-mode 1)) ;; better ivy autocompletion (use-package ivy-rich + :straight t :init (ivy-rich-mode 1)) ;; ivy in the middle (use-package ivy-posframe + :straight t :init (setq ivy-posframe-display-functions-alist '((t . ivy-posframe-display-at-frame-center))) :config @@ -266,6 +289,7 @@ kept-old-versions 5) ;; counsel M+X (use-package counsel + :straight t :bind (("M-x" . counsel-M-x) ("C-x b" . counsel-ibuffer) ("C-x C-f" . counsel-find-file) @@ -292,12 +316,14 @@ kept-old-versions 5) ;; (doom-themes-visual-bell-config)) (use-package timu-macos-theme + :straight t :config (load-theme 'timu-macos t)) (use-package all-the-icons) (use-package nerd-icons + :straight t :custom ;; "Symbols Nerd Font Mono" is the default and is recommended ;; but you can use any other Nerd Font if you want @@ -305,9 +331,11 @@ kept-old-versions 5) ) (use-package rainbow-delimiters + :straight t :hook (prog-mode . rainbow-delimiters-mode)) (use-package which-key + :straight t :init (which-key-mode) :diminish which-key-mode :config @@ -320,6 +348,7 @@ kept-old-versions 5) ;; :custom ((doom-modeline-height 40))) (use-package hide-mode-line + :straight t :hook (((treemacs-mode eshell-mode shell-mode term-mode vterm-mode @@ -330,10 +359,12 @@ kept-old-versions 5) (dired-mode . turn-off-hide-mode-line-mode))) (use-package minions + :straight t :hook (doom-modeline-mode . minions-mode)) (use-package helpful :ensure t + :straight t :custom (counsel-describe-function-function #'helpful-callable) (counsel-describe-variable-function #'helpful-variable) @@ -344,10 +375,12 @@ kept-old-versions 5) ([remap describe-key] . helpful-key)) (use-package delsel + :straight t :ensure nil :config (delete-selection-mode +1)) (use-package general + :straight t :config (general-create-definer sakomacs/leader-keys :keymaps `(normal insert visual emacs) @@ -403,6 +436,7 @@ kept-old-versions 5) "gcp" `(forge-create-pullreq :which-key "pull request"))) (use-package dashboard + :straight t :init (setq dashboard-display-icons-p t) ;; display icons on both GUI and terminal (setq dashboard-icon-type 'nerd-icons) ;; use `nerd-icons' package @@ -434,6 +468,7 @@ kept-old-versions 5) (dashboard-setup-startup-hook)) (use-package evil + :straight t :init (setq evil-want-integration t) (setq evil-want-keybinding nil) @@ -455,17 +490,21 @@ kept-old-versions 5) ;; extra things for Evil (use-package evil-collection + :straight t :after evil :config (evil-collection-init)) ;; commenting (use-package evil-commentary +:straight t :after evil :diminish :config (evil-commentary-mode +1)) -(use-package hydra) +(use-package hydra + :straight t + ) (defhydra hydra-text-scale (:timeout 4) "scale text" ("j" text-scale-increase "in") @@ -476,6 +515,7 @@ kept-old-versions 5) "ts" '(hydra-text-scale/body :which-key "scale text")) (use-package projectile + :straight t :diminish projectile-mode :demand :config (projectile-mode) @@ -488,9 +528,11 @@ kept-old-versions 5) (setq projectile-switch-project-action #'projectile-dired)) (use-package counsel-projectile + :straight t :config (counsel-projectile-mode)) (use-package org + :straight t :hook (org-mode . org-indent-mode) :config (setq org-ellipsis " ↓") @@ -619,9 +661,11 @@ kept-old-versions 5) :empty-lines 1)))) (use-package olivetti + :straight t :hook (org-mode . (lambda () (interactive) (olivetti-mode) (olivetti-set-width 100)))) (use-package org-roam +:straight t :ensure t :custom (org-roam-directory "~/org/notes") @@ -634,6 +678,7 @@ kept-old-versions 5) (use-package treemacs :ensure t :defer t + :straight t :init (with-eval-after-load 'winum (define-key winum-keymap (kbd "M-0") #'treemacs-select-window)) @@ -723,33 +768,41 @@ kept-old-versions 5) (use-package treemacs-evil :after (treemacs evil) + :straight t :ensure t) (use-package treemacs-projectile :after (treemacs projectile) + :straight t :ensure t) (use-package treemacs-magit :after (treemacs magit) + :straight t :ensure t) (use-package treemacs-nerd-icons + :straight t :config (treemacs-load-theme "nerd-icons")) (use-package magit + :straight t :custom (magit-display-buffer-function #'magit-display-buffer-same-window-except-diff-v1) ) (use-package magit-todos + :straight t :after magit :config (magit-todos-mode 1)) (use-package forge + :straight t :after magit) (setq auth-sources '("~/.authinfo")) (use-package direnv + :straight t :config (direnv-mode)) @@ -758,6 +811,7 @@ kept-old-versions 5) (lsp-headerline-breadcrumb-mode)) (use-package lsp-mode + :straight t :commands (lsp lsp-deferred) :hook (lsp-mode . sakomacs/lsp-mode-setup) :init @@ -768,20 +822,26 @@ kept-old-versions 5) (use-package lsp-ui :hook (lsp-mode . lsp-ui-mode) + :straight t :custom (lsp-ui-doc-position 'bottom)) (use-package lsp-treemacs + :straight t :after lsp) -(use-package lsp-ivy) +(use-package lsp-ivy + :straight t + ) (use-package web-mode + :straight t :hook (web-mode . lsp) :mode ("\\.html\\'" "\\.css\\'")) (use-package js2-mode + :straight t :mode ("\\.js\\'" "\\.jsx\\'") :hook (js2-mode . lsp) @@ -792,6 +852,7 @@ kept-old-versions 5) (setq web-mode-content-types-alist '(("jsx" . "\\.js[x]?\\'")))) (use-package typescript-mode + :straight t :mode ("\\.ts\\'" "\\.tsx\\'") :hook (typescript-mode . lsp)) @@ -820,18 +881,22 @@ kept-old-versions 5) (use-package cmake-mode :mode "CMakeLists.txt" + :straight t :hook (cmake-mode . lsp)) (use-package lua-mode :mode "\\.lua\\'" + :straight t :hook (lua-mode . lsp)) (use-package python-mode :mode "\\.py\\'" + :straight t :hook (python-mode . lsp)) (use-package elpy :after python-mode + :straight t :custom (elpy-rpc-python-command "python3") @@ -841,37 +906,46 @@ kept-old-versions 5) (use-package lsp-pyright :ensure t + :straight t :hook (python-mode . (lambda () (require 'lsp-pyright) (lsp)))) ; or lsp-deferred (use-package haskell-mode :mode "\\.hs\\'" + :straight t :hook (python-mode . lsp)) (use-package yaml-mode - :mode ("\\.yaml\\'" - "\\.yml\\'")) +:straight t + :mode ("\\.yaml\\'" + "\\.yml\\'")) (use-package nix-mode +:straight t :hook ((nix-mode . lsp) (nix-mode . format-all-mode) (nix-mode . (lambda () (setq-local format-all-formatters '(("Nix" alejandra)))))) :mode "\\.nix\\'") (use-package dart-mode + :straight t :hook (dart-mode . lsp) :mode "\\.dart\\'" ) (use-package markdown-mode + :straight t :hook (markdown-mode . visual-line-mode)) -(use-package markdown-preview-mode) +(use-package markdown-preview-mode + :straight t) (use-package evil-nerd-commenter + :straight t :bind ("M-/" . evilnc-comment-or-uncomment-lines)) (use-package company + :straight t :after lsp-mode :hook (lsp-mode . company-mode) :bind (:map company-active-map @@ -885,11 +959,14 @@ kept-old-versions 5) (company-tooltip-align-annotations t)) (use-package company-box + :straight t :hook (company-mode . company-box-mode)) -(use-package flycheck :config (global-flycheck-mode +1)) +(use-package flycheck :straight t :config (global-flycheck-mode +1)) -(use-package format-all) +(use-package format-all + :straight t + ) (use-package fancy-compilation :commands (fancy-compilation-mode)) @@ -898,12 +975,15 @@ kept-old-versions 5) (fancy-compilation-mode)) (use-package yasnippet + :straight t :diminish yas-minor-mode :hook (after-init . yas-global-mode)) -(use-package yasnippet-snippets) +(use-package yasnippet-snippets + :straight t) (use-package yasnippet-capf + :straight t :init (add-to-list 'completion-at-point-functions #'yasnippet-capf)) (use-package dired @@ -943,6 +1023,7 @@ kept-old-versions 5) `((".*" ,(no-littering-expand-var-file-name "auto-save/") t))) (use-package elfeed + :straight t :config (setq elfeed-use-curl t) (setq browse-url-browser-function 'eww-browse-url) @@ -950,6 +1031,7 @@ kept-old-versions 5) ) (use-package elfeed-protocol + :straight t :after elfeed :config (elfeed-set-timeout 36000) @@ -983,13 +1065,15 @@ kept-old-versions 5) (use-package telega) (use-package pdf-tools + :straight t :mode ("\\.pdf\\'" . pdf-view-mode) :config (setq-default pdf-view-display-size 'fit-page) :init (pdf-tools-install)) -(use-package ement) +(use-package ement + :straight t) ;; global defaults ;; (use-package mu4e @@ -998,7 +1082,8 @@ kept-old-versions 5) ;; ) ;; we need this regardless of platform -(use-package smtpmail) +(use-package smtpmail + :straight t) (org-babel-do-load-languages 'org-babel-load-languages @@ -1032,6 +1117,7 @@ kept-old-versions 5) (use-package eshell-git-prompt) (use-package eshell + :straight t :hook (eshell-first-time-mode . sakomacs/configure-eshell) :config @@ -1042,6 +1128,7 @@ kept-old-versions 5) (eshell-git-prompt-use-theme 'powerline)) (use-package vterm + :straight t :commands vterm :config (setq vterm-max-scrollback 10000)) diff --git a/modules/dev/editors/emacs/default.nix b/modules/dev/editors/emacs/default.nix index e01ba9b5..fffa8199 100644 --- a/modules/dev/editors/emacs/default.nix +++ b/modules/dev/editors/emacs/default.nix @@ -20,7 +20,20 @@ in { services.emacs = { enable = cfg.daemon; install = true; +<<<<<<< HEAD package = pkgs.emacs29-pgtk; +======= + # package = pkgs.emacs29-pgtk; + package = pkgs.emacsWithPackagesFromUsePackage { + # org mode files are borked with this right now + config = ../../../../config/emacs/init.el; + + defaultInitFile = true; + + package = pkgs.emacs29-pgtk; + + }; +>>>>>>> parent of 0b03caa (please) }; users.users.sako.packages = with pkgs; [ # direnv