home/natto/emacs: tangle when deploying
Signed-off-by: Amneesh Singh <natto@weirdnatto.in>
This commit is contained in:
@@ -159,13 +159,11 @@ To undo and redo easily like vi
|
|||||||
:defer t
|
:defer t
|
||||||
:config
|
:config
|
||||||
(treemacs-project-follow-mode))
|
(treemacs-project-follow-mode))
|
||||||
#+end_src
|
|
||||||
|
|
||||||
#+begin_src emacs-lisp
|
(use-package treemacs-evil :after treemacs)
|
||||||
(use-package treemacs-evil :defer t)
|
(use-package treemacs-magit :after treemacs)
|
||||||
(use-package treemacs-magit :defer t)
|
(use-package treemacs-projectile :after treemacs)
|
||||||
(use-package treemacs-projectile :defer t)
|
(use-package treemacs-all-the-icons :after treemacs)
|
||||||
(use-package treemacs-all-the-icons :defer t)
|
|
||||||
#+end_src
|
#+end_src
|
||||||
|
|
||||||
** LSP
|
** LSP
|
||||||
@@ -516,7 +514,8 @@ not using this anymore
|
|||||||
:keymaps '(global override vterm-mode-map)
|
:keymaps '(global override vterm-mode-map)
|
||||||
:states evil-states
|
:states evil-states
|
||||||
"<f4>" (lambda () (interactive) (vterm t))
|
"<f4>" (lambda () (interactive) (vterm t))
|
||||||
"C-<f1>" 'vterm-toggle-cd
|
"C-S-t" 'vterm-toggle-cd
|
||||||
|
"C-t" 'vterm-toggle
|
||||||
"<f1>" 'vterm-toggle
|
"<f1>" 'vterm-toggle
|
||||||
"<f5>" (lambda () (interactive) (run-in-vterm (candrun))))
|
"<f5>" (lambda () (interactive) (run-in-vterm (candrun))))
|
||||||
(general-define-key
|
(general-define-key
|
||||||
|
@@ -1,29 +1,21 @@
|
|||||||
{ config, pkgs, inputs, ... }:
|
{ config, pkgs, inputs, lib, ... }:
|
||||||
let
|
let
|
||||||
mymacs = config: # with inputs.emacs-overlay.packages.${pkgs.system}; already resolved with overlay
|
emacs = pkgs.emacs-pgtk;
|
||||||
with pkgs; emacsWithPackagesFromUsePackage {
|
configFile = ./config/emacs/config.org;
|
||||||
inherit config;
|
enable = true;
|
||||||
package = emacs-pgtk;
|
|
||||||
alwaysEnsure = true;
|
|
||||||
alwaysTangle = true;
|
|
||||||
extraEmacsPackages = epkgs: with epkgs; [
|
|
||||||
use-package
|
|
||||||
(epkgs.tree-sitter-langs.withPlugins (_: epkgs.tree-sitter-langs.plugins))
|
|
||||||
];
|
|
||||||
};
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
nixpkgs.overlays = [ inputs.emacs-overlay.overlays.default ];
|
nixpkgs.overlays = [ inputs.emacs-overlay.overlays.default ];
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
file = with config; {
|
file = {
|
||||||
"config.org" = {
|
|
||||||
source = ./config/emacs/config.org;
|
|
||||||
target = "${home.homeDirectory}/.emacs.d/config.org";
|
|
||||||
};
|
|
||||||
"init.el" = {
|
"init.el" = {
|
||||||
source = ./config/emacs/init.el;
|
source = pkgs.runCommandLocal "tangle-emacs" { } ''
|
||||||
target = "${home.homeDirectory}/.emacs.d/init.el";
|
${pkgs.coreutils}/bin/ln -s ${configFile} ./config.org
|
||||||
|
${emacs}/bin/emacs -Q --batch ./config.org -f org-babel-tangle
|
||||||
|
cp ./config.el $out
|
||||||
|
'';
|
||||||
|
target = "${config.home.homeDirectory}/.emacs.d/init.el";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
shellAliases = rec {
|
shellAliases = rec {
|
||||||
@@ -35,8 +27,21 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
programs.emacs = {
|
programs.emacs = {
|
||||||
enable = true;
|
inherit enable;
|
||||||
package = mymacs ./config/emacs/config.org;
|
package = pkgs.emacsWithPackagesFromUsePackage {
|
||||||
|
config = configFile;
|
||||||
|
package = emacs;
|
||||||
|
alwaysEnsure = true;
|
||||||
|
alwaysTangle = true;
|
||||||
|
extraEmacsPackages = epkgs: with epkgs; [
|
||||||
|
use-package
|
||||||
|
(tree-sitter-langs.withPlugins (_: tree-sitter-langs.plugins))
|
||||||
|
];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
services.emacs.enable = true;
|
services.emacs = {
|
||||||
|
inherit enable;
|
||||||
|
defaultEditor = true;
|
||||||
|
};
|
||||||
|
systemd.user.services.emacs.Service.Environment = "COLORTERM=truecolor";
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user