Things
This commit is contained in:
parent
2a1f2576e4
commit
a7ac7b4b74
8 changed files with 232 additions and 72 deletions
86
flake.lock
generated
86
flake.lock
generated
|
@ -1,5 +1,21 @@
|
||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"combobulate": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1695034590,
|
||||||
|
"narHash": "sha256-YZgYaRVX8cO5W90MUD9CJO8sfiqhDyJDV58hE7utbVI=",
|
||||||
|
"owner": "mickeynp",
|
||||||
|
"repo": "combobulate",
|
||||||
|
"rev": "d51ca57221f8c2689665da4dbe55dc618f0d04e0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "mickeynp",
|
||||||
|
"repo": "combobulate",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"emacs-overlay": {
|
"emacs-overlay": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
|
@ -7,11 +23,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable"
|
"nixpkgs-stable": "nixpkgs-stable"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691921730,
|
"lastModified": 1694602127,
|
||||||
"narHash": "sha256-2vTR0Vq2VRQt7+4todEdOJRGIU/qyPdVCXJgbosz3Aw=",
|
"narHash": "sha256-8lcpkk35COSkygePlvsOtSpR7tZx1SIgxdltZ0UZvXM=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "emacs-overlay",
|
"repo": "emacs-overlay",
|
||||||
"rev": "9279ce7180483c5ec9e6da74b87000a49a4942c0",
|
"rev": "b99f00b0bc835dd490b455c8df0bab2acc16021c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -43,11 +59,11 @@
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1689068808,
|
"lastModified": 1694529238,
|
||||||
"narHash": "sha256-6ixXo3wt24N/melDWjq70UuHQLxGV8jZvooRanIHXw0=",
|
"narHash": "sha256-zsNZZGTGnMOf9YpHKJqMSsa0dXbfmxeoJ7xHlrt+xmY=",
|
||||||
"owner": "numtide",
|
"owner": "numtide",
|
||||||
"repo": "flake-utils",
|
"repo": "flake-utils",
|
||||||
"rev": "919d646de7be200f3bf08cb76ae1f09402b6f9b4",
|
"rev": "ff7b65b44d01cf9ba6a71320833626af21126384",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -59,11 +75,11 @@
|
||||||
"indent-bars": {
|
"indent-bars": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691609947,
|
"lastModified": 1695000820,
|
||||||
"narHash": "sha256-hLIqwuWt75kEQqfzZ+VKQsSVhuHqFRzN8ko29Y/Pi/o=",
|
"narHash": "sha256-qJy9g/tdce74Rh7FyMxCSBZjK6paZrPaL4UpS/uxPSg=",
|
||||||
"owner": "jdtsmith",
|
"owner": "jdtsmith",
|
||||||
"repo": "indent-bars",
|
"repo": "indent-bars",
|
||||||
"rev": "7da1a4a2a4d7e024a7eff99fde08844049287e04",
|
"rev": "2b0a4ad16804fb48821f661cd6be4652c0e37d72",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -72,13 +88,30 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-ts-mode": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1694965545,
|
||||||
|
"narHash": "sha256-HijDb+2ojDk1Evv/KEIrZ/xW+QXz6IJoUllniTsE3hs=",
|
||||||
|
"owner": "aciceri",
|
||||||
|
"repo": "nix-ts-mode",
|
||||||
|
"rev": "8da9a76cd014d56ee734553a32c9e006e375bce4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "aciceri",
|
||||||
|
"ref": "improved",
|
||||||
|
"repo": "nix-ts-mode",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691654369,
|
"lastModified": 1694422566,
|
||||||
"narHash": "sha256-gSILTEx1jRaJjwZxRlnu3ZwMn1FVNk80qlwiCX8kmpo=",
|
"narHash": "sha256-lHJ+A9esOz9vln/3CJG23FV6Wd2OoOFbDeEs4cMGMqc=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "ce5e4a6ef2e59d89a971bc434ca8ca222b9c7f5e",
|
"rev": "3a2786eea085f040a66ecde1bc3ddc7099f6dbeb",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -108,11 +141,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable": {
|
"nixpkgs-stable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1691693223,
|
"lastModified": 1694499547,
|
||||||
"narHash": "sha256-9t8ZY1XNAsWqxAJmXgg+GXqF5chORMVnBT6PSHaRV3I=",
|
"narHash": "sha256-R7xMz1Iia6JthWRHDn36s/E248WB1/je62ovC/dUVKI=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "18784aac1013da9b442adf29b6c7c228518b5d3f",
|
"rev": "e5f018cf150e29aac26c61dac0790ea023c46b24",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -122,15 +155,30 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nixpkgs_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1694422566,
|
||||||
|
"narHash": "sha256-lHJ+A9esOz9vln/3CJG23FV6Wd2OoOFbDeEs4cMGMqc=",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "3a2786eea085f040a66ecde1bc3ddc7099f6dbeb",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"combobulate": "combobulate",
|
||||||
"emacs-overlay": "emacs-overlay",
|
"emacs-overlay": "emacs-overlay",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"indent-bars": "indent-bars",
|
"indent-bars": "indent-bars",
|
||||||
"nixpkgs": [
|
"nix-ts-mode": "nix-ts-mode",
|
||||||
"emacs-overlay",
|
"nixpkgs": "nixpkgs_2"
|
||||||
"nixpkgs"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
|
12
flake.nix
12
flake.nix
|
@ -4,14 +4,22 @@
|
||||||
inputs = {
|
inputs = {
|
||||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||||
emacs-overlay.url = "github:nix-community/emacs-overlay";
|
emacs-overlay.url = "github:nix-community/emacs-overlay";
|
||||||
nixpkgs.follows = "emacs-overlay/nixpkgs";
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
indent-bars = {
|
indent-bars = {
|
||||||
# TODO remove when it lands on (M)ELPA
|
# TODO remove when it lands on (M)ELPA
|
||||||
url = "github:jdtsmith/indent-bars";
|
url = "github:jdtsmith/indent-bars";
|
||||||
flake = false;
|
flake = false;
|
||||||
};
|
};
|
||||||
|
nix-ts-mode = {
|
||||||
|
url = "github:aciceri/nix-ts-mode/improved";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
combobulate = {
|
||||||
|
url = "github:mickeynp/combobulate";
|
||||||
|
# url = "github:aciceri/combobulate/nix";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = inputs @ {flake-parts, ...}:
|
outputs = inputs @ {flake-parts, ...}:
|
||||||
flake-parts.lib.mkFlake {inherit inputs;} {
|
flake-parts.lib.mkFlake {inherit inputs;} {
|
||||||
systems = ["x86_64-linux"];
|
systems = ["x86_64-linux"];
|
||||||
|
|
|
@ -44,24 +44,17 @@
|
||||||
};
|
};
|
||||||
home.packages = with pkgs;
|
home.packages = with pkgs;
|
||||||
[
|
[
|
||||||
# TODO add epub-thumbnailer to nixpkgs
|
|
||||||
nil
|
|
||||||
terraform-lsp
|
|
||||||
imagemagick
|
|
||||||
ffmpegthumbnailer
|
|
||||||
mediainfo
|
|
||||||
unzipNLS
|
|
||||||
binutils
|
binutils
|
||||||
(ripgrep.override {withPCRE2 = true;})
|
(ripgrep.override {withPCRE2 = true;})
|
||||||
gnutls
|
gnutls
|
||||||
fd
|
fd
|
||||||
imagemagick
|
|
||||||
sqlite
|
|
||||||
maim
|
|
||||||
jq
|
|
||||||
xclip
|
|
||||||
hunspell
|
hunspell
|
||||||
python3
|
python3
|
||||||
|
imagemagick
|
||||||
|
ffmpegthumbnailer
|
||||||
|
mediainfo
|
||||||
|
unzipNLS
|
||||||
|
pkgs.tree-sitter-grammars.tree-sitter-nix
|
||||||
]
|
]
|
||||||
++ (with hunspellDicts; [
|
++ (with hunspellDicts; [
|
||||||
en_US-large
|
en_US-large
|
||||||
|
@ -76,6 +69,7 @@
|
||||||
"$HOME/.config/emacs"
|
"$HOME/.config/emacs"
|
||||||
$DRY_RUN_CMD ln -s "$HOME/.config/emacs" "$HOME/emacs"
|
$DRY_RUN_CMD ln -s "$HOME/.config/emacs" "$HOME/emacs"
|
||||||
fi
|
fi
|
||||||
|
$DRY_RUN_CMD ln -sfn ${self.packages.${pkgs.system}.treesitGrammars} "$HOME/.config/emacs/tree-sitter"
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
89
init.el
89
init.el
|
@ -105,11 +105,14 @@
|
||||||
|
|
||||||
(use-package indent-bars
|
(use-package indent-bars
|
||||||
:custom
|
:custom
|
||||||
|
(indent-bars-treesit-support t)
|
||||||
|
(indent-bars-spacing-override 2)
|
||||||
|
;; (indent-bars-treesit-wrap '())
|
||||||
(indent-bars-color '(highlight :face-bg t :blend 0.2))
|
(indent-bars-color '(highlight :face-bg t :blend 0.2))
|
||||||
(indent-bars-highlight-current-depth '(:blend 0.4))
|
(indent-bars-highlight-current-depth '(:blend 0.4))
|
||||||
(indent-bars-no-stipple-char (string-to-char "┋")))
|
(indent-bars-no-stipple-char (string-to-char "┋")))
|
||||||
|
|
||||||
(use-package diredf
|
(use-package diredfl
|
||||||
:config (diredfl-global-mode))
|
:config (diredfl-global-mode))
|
||||||
|
|
||||||
(use-package treemacs
|
(use-package treemacs
|
||||||
|
@ -344,10 +347,16 @@
|
||||||
:hook ((prog-mode . hl-line-mode)
|
:hook ((prog-mode . hl-line-mode)
|
||||||
(prog-mode . display-line-numbers-mode)))
|
(prog-mode . display-line-numbers-mode)))
|
||||||
|
|
||||||
(use-package which-key :delight :config (which-key-mode))
|
(use-package which-key :delight :config
|
||||||
|
(which-key-mode)
|
||||||
|
(which-key-setup-side-window-right))
|
||||||
|
|
||||||
(use-package magit
|
(use-package magit
|
||||||
:hook (magit-mode . magit-delta-mode)
|
:hook ((magit-mode . magit-delta-mode))
|
||||||
|
:custom
|
||||||
|
(magit-todos-keyword-suffix "([^)]+):")
|
||||||
|
:config
|
||||||
|
(magit-todos-mode +1)
|
||||||
:bind (("C-c o g" . magit)))
|
:bind (("C-c o g" . magit)))
|
||||||
|
|
||||||
(use-package sideline
|
(use-package sideline
|
||||||
|
@ -365,13 +374,24 @@
|
||||||
(+ (apply #'+ lengths) (if (display-graphic-p) 1 3)))))
|
(+ (apply #'+ lengths) (if (display-graphic-p) 1 3)))))
|
||||||
(advice-add 'sideline--align :override #'ccr-sideline--align))
|
(advice-add 'sideline--align :override #'ccr-sideline--align))
|
||||||
|
|
||||||
(use-package nix-mode
|
;; FIXME there is something deeply wrong about how nix is configured here
|
||||||
:delight nix-prettify-mode
|
;; (use-package nix-mode
|
||||||
:hook ((nix-mode . eglot-ensure)
|
;; :delight nix-prettify-mode
|
||||||
(nix-mode . tree-sitter-hl-mode)
|
;; :config
|
||||||
(nix-mode . (lambda () (setq indent-bars-spacing-override 2) (indent-bars-mode))))
|
;; (global-nix-prettify-mode))
|
||||||
:config
|
|
||||||
(global-nix-prettify-mode))
|
(use-package nix-ts-mode
|
||||||
|
:hook (
|
||||||
|
(nix-ts-mode . (lambda ()
|
||||||
|
(require 'eglot)
|
||||||
|
(add-to-list 'eglot-server-programs
|
||||||
|
'(nix-ts-mode . ("nil")))
|
||||||
|
(eglot-ensure)))
|
||||||
|
(nix-ts-mode . electric-pair-mode)
|
||||||
|
(nix-ts-mode . (lambda () (setq indent-bars-spacing-override 2) (indent-bars-mode)))
|
||||||
|
)
|
||||||
|
:mode "\\.nix\\'"
|
||||||
|
)
|
||||||
|
|
||||||
(use-package haskell-mode
|
(use-package haskell-mode
|
||||||
:hook ((haskell-mode . eglot-ensure)
|
:hook ((haskell-mode . eglot-ensure)
|
||||||
|
@ -381,6 +401,10 @@
|
||||||
:hook (purescript-mode . turn-on-purescript-indentation))
|
:hook (purescript-mode . turn-on-purescript-indentation))
|
||||||
|
|
||||||
(use-package terraform-mode
|
(use-package terraform-mode
|
||||||
|
:after eglot
|
||||||
|
:config
|
||||||
|
(add-to-list 'eglot-server-programs
|
||||||
|
'(terraform-mode . ("terraform-lsp")))
|
||||||
:hook ((terraform-mode . eglot-ensure)
|
:hook ((terraform-mode . eglot-ensure)
|
||||||
(terraform-mode . tree-sitter-hl-mode)))
|
(terraform-mode . tree-sitter-hl-mode)))
|
||||||
|
|
||||||
|
@ -390,6 +414,20 @@
|
||||||
(use-package sh-mode
|
(use-package sh-mode
|
||||||
:hook (sh-mode . tree-sitter-hl-mode))
|
:hook (sh-mode . tree-sitter-hl-mode))
|
||||||
|
|
||||||
|
;; FIXME
|
||||||
|
;; (use-package mmm-mode
|
||||||
|
;; :config
|
||||||
|
;; (mmm-add-group 'nix-sh
|
||||||
|
;; '((sh-command
|
||||||
|
;; :submode sh-mode
|
||||||
|
;; :face mmm-output-submode-face
|
||||||
|
;; :front "[^'a-zA-Z]''[^']"
|
||||||
|
;; :back "''[^$\\']"
|
||||||
|
;; :include-front t
|
||||||
|
;; :front-offset 4
|
||||||
|
;; :end-not-begin t)))
|
||||||
|
;; (mmm-add-mode-ext-class 'nix-mode "\\.nix\\'" 'nix-sh))
|
||||||
|
|
||||||
(use-package paredit
|
(use-package paredit
|
||||||
:delight
|
:delight
|
||||||
:hook ((lisp-mode . enable-paredit-mode)
|
:hook ((lisp-mode . enable-paredit-mode)
|
||||||
|
@ -398,8 +436,6 @@
|
||||||
(use-package eldoc
|
(use-package eldoc
|
||||||
:delight)
|
:delight)
|
||||||
|
|
||||||
(use-package tree-sitter :delight)
|
|
||||||
|
|
||||||
(use-package diff-hl
|
(use-package diff-hl
|
||||||
:init
|
:init
|
||||||
(global-diff-hl-mode 1)
|
(global-diff-hl-mode 1)
|
||||||
|
@ -416,13 +452,17 @@
|
||||||
(use-package eat
|
(use-package eat
|
||||||
:custom
|
:custom
|
||||||
(eat-kill-buffer-on-exit t)
|
(eat-kill-buffer-on-exit t)
|
||||||
:bind (("C-c o t" . eat-project)))
|
:bind (("C-c o t" . eat-project))
|
||||||
|
;; doesn't work well
|
||||||
|
;; ((eat-mode . compilation-shell-minor-mode))
|
||||||
|
)
|
||||||
|
|
||||||
(use-package popper
|
(use-package popper
|
||||||
:custom
|
:custom
|
||||||
(popper-reference-buffers '("\*Messages\*"
|
(popper-reference-buffers '("\*Messages\*"
|
||||||
"Output\*$"
|
"Output\*$"
|
||||||
"\\*Async Shell Command\\*"
|
"\\*Async Shell Command\\*"
|
||||||
|
(completion-list-mode . hide)
|
||||||
help-mode
|
help-mode
|
||||||
compilation-mode
|
compilation-mode
|
||||||
"^\\*eshell.*\\*$" eshell-mode ;eshell as a popup
|
"^\\*eshell.*\\*$" eshell-mode ;eshell as a popup
|
||||||
|
@ -440,10 +480,33 @@
|
||||||
("C-c t c" . popper-cycle)
|
("C-c t c" . popper-cycle)
|
||||||
("C-c t p" . popper-toggle-type)))
|
("C-c t p" . popper-toggle-type)))
|
||||||
|
|
||||||
|
(use-package org-roam)
|
||||||
|
|
||||||
|
(use-package consult-org-roam
|
||||||
|
:delight
|
||||||
|
:after org-roam
|
||||||
|
:init
|
||||||
|
(require 'consult-org-roam)
|
||||||
|
;; Activate the minor mode
|
||||||
|
(consult-org-roam-mode 1)
|
||||||
|
:custom
|
||||||
|
(consult-org-roam-grep-func #'consult-ripgrep)
|
||||||
|
(consult-org-roam-buffer-narrow-key ?r)
|
||||||
|
(consult-org-roam-buffer-after-buffers t)
|
||||||
|
:config
|
||||||
|
(consult-customize
|
||||||
|
consult-org-roam-forward-links
|
||||||
|
:preview-key (kbd "M-."))
|
||||||
|
:bind
|
||||||
|
("C-c n f" . consult-org-roam-file-find)
|
||||||
|
("C-c n b" . consult-org-roam-backlinks)
|
||||||
|
("C-c n l" . consult-org-roam-forward-links)
|
||||||
|
("C-c n r" . consult-org-roam-search))
|
||||||
|
|
||||||
(provide 'init)
|
(provide 'init)
|
||||||
;;; init.el ends here
|
;;; init.el ends here
|
||||||
;; Local Variables:
|
;; Local Variables:
|
||||||
;; byte-compile-warnings: (not free-vars noruntime unresolved)
|
;; byte-compile-warnings: (not free-vars noruntime unresolved)
|
||||||
;; End:
|
;; End:
|
||||||
|
|
||||||
|
|
||||||
|
|
10
packages/combobulate.nix
Normal file
10
packages/combobulate.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
trivialBuild,
|
||||||
|
src,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
trivialBuild {
|
||||||
|
inherit src;
|
||||||
|
version = "git";
|
||||||
|
pname = "combombulate";
|
||||||
|
}
|
|
@ -18,43 +18,61 @@
|
||||||
# https://github.com/NixOS/nixpkgs/issues/209114
|
# https://github.com/NixOS/nixpkgs/issues/209114
|
||||||
_module.args.pkgs = inputs.nixpkgs.legacyPackages.${system}.extend (self: super: {
|
_module.args.pkgs = inputs.nixpkgs.legacyPackages.${system}.extend (self: super: {
|
||||||
indent-bars-source = inputs.indent-bars;
|
indent-bars-source = inputs.indent-bars;
|
||||||
tree-sitter-grammars =
|
nix-ts-mode-source = inputs.nix-ts-mode;
|
||||||
super.tree-sitter-grammars
|
combobulate-source = inputs.combobulate;
|
||||||
// {
|
# tree-sitter-grammars =
|
||||||
tree-sitter-rust = super.tree-sitter-grammars.tree-sitter-rust.overrideAttrs (_: {
|
# super.tree-sitter-grammars
|
||||||
nativeBuildInputs = [self.nodejs self.tree-sitter];
|
# // {
|
||||||
configurePhase = ''
|
# tree-sitter-rust = super.tree-sitter-grammars.tree-sitter-rust.overrideAttrs (_: {
|
||||||
tree-sitter generate --abi 13 src/grammar.json
|
# nativeBuildInputs = [self.nodejs self.tree-sitter];
|
||||||
'';
|
# configurePhase = ''
|
||||||
});
|
# tree-sitter generate --abi 13 src/grammar.json
|
||||||
};
|
# '';
|
||||||
|
# });
|
||||||
|
# };
|
||||||
});
|
});
|
||||||
|
|
||||||
packages = {
|
packages = {
|
||||||
|
treesitGrammars = let
|
||||||
|
all-grammars = pkgs.tree-sitter.withPlugins builtins.attrValues;
|
||||||
|
in
|
||||||
|
pkgs.runCommand "treesit-grammars" {} ''
|
||||||
|
mkdir $out
|
||||||
|
for f in ${all-grammars}/*
|
||||||
|
do
|
||||||
|
cp $f $out/"libtree-sitter-$(basename $f)"
|
||||||
|
done
|
||||||
|
'';
|
||||||
ccrEmacsWithoutPackages =
|
ccrEmacsWithoutPackages =
|
||||||
(inputs'.emacs-overlay.packages.emacs-unstable.override {
|
(inputs'.emacs-overlay.packages.emacs-unstable.override {
|
||||||
# treeSitterPlugins =
|
withPgtk = true;
|
||||||
# builtins.attrValues
|
# withNS = false;
|
||||||
# (builtins.removeAttrs pkgs.tree-sitter-grammars ["recurseForDerivations"]);
|
# withX = false;
|
||||||
withNS = false;
|
# withGTK2 = false;
|
||||||
withX = false;
|
# withGTK3 = false;
|
||||||
withGTK2 = false;
|
# withWebP = false;
|
||||||
withGTK3 = false;
|
|
||||||
withWebP = false;
|
|
||||||
})
|
})
|
||||||
.overrideAttrs (old: {
|
.overrideAttrs (old: {
|
||||||
name = "ccr-emacs";
|
name = "ccr-emacs";
|
||||||
version = "29";
|
version = "29";
|
||||||
});
|
});
|
||||||
ccrEmacs =
|
ccrEmacs = let
|
||||||
|
emacs =
|
||||||
(emacsPackagesFor self'.packages.ccrEmacsWithoutPackages).emacsWithPackages
|
(emacsPackagesFor self'.packages.ccrEmacsWithoutPackages).emacsWithPackages
|
||||||
(import ./packages.nix pkgs);
|
(import ./packages.nix pkgs);
|
||||||
|
in
|
||||||
|
pkgs.runCommand "emacs" {} ''
|
||||||
|
cp -r ${emacs} emacs
|
||||||
|
chmod 700 -R emacs
|
||||||
|
mkdir emacs/share/emacs
|
||||||
|
cp -r emacs $out
|
||||||
|
'';
|
||||||
default = self'.packages.ccrEmacs;
|
default = self'.packages.ccrEmacs;
|
||||||
};
|
};
|
||||||
|
|
||||||
apps = {
|
apps = {
|
||||||
ccrEmacs.program = "${self'.packages.ccrEmacs}/bin/emacs";
|
ccrEmacs.program = "${self'.packages.ccrEmacs}/bin/emacs";
|
||||||
default = self'.apps.ccrEmacs;
|
default = config.apps.ccrEmacs;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
9
packages/nix-ts-mode.nix
Normal file
9
packages/nix-ts-mode.nix
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{
|
||||||
|
trivialBuild,
|
||||||
|
src,
|
||||||
|
}:
|
||||||
|
trivialBuild {
|
||||||
|
inherit src;
|
||||||
|
pname = "nix-ts-mode";
|
||||||
|
version = "git";
|
||||||
|
}
|
|
@ -22,13 +22,17 @@ with epkgs; [
|
||||||
embark-consult
|
embark-consult
|
||||||
magit
|
magit
|
||||||
magit-delta
|
magit-delta
|
||||||
|
magit-todos
|
||||||
diff-hl
|
diff-hl
|
||||||
corfu
|
corfu
|
||||||
corfu-terminal
|
corfu-terminal
|
||||||
kind-icon
|
kind-icon
|
||||||
cape
|
cape
|
||||||
which-key
|
which-key
|
||||||
nix-mode
|
# nix-mode
|
||||||
|
(nix-ts-mode.overrideAttrs (_: {
|
||||||
|
src = pkgs.nix-ts-mode-source;
|
||||||
|
}))
|
||||||
unisonlang-mode
|
unisonlang-mode
|
||||||
purescript-mode
|
purescript-mode
|
||||||
dhall-mode
|
dhall-mode
|
||||||
|
@ -36,8 +40,6 @@ with epkgs; [
|
||||||
inheritenv
|
inheritenv
|
||||||
popper
|
popper
|
||||||
paredit
|
paredit
|
||||||
tree-sitter
|
|
||||||
tree-sitter-langs
|
|
||||||
yaml-mode
|
yaml-mode
|
||||||
hl-todo
|
hl-todo
|
||||||
markdown-mode
|
markdown-mode
|
||||||
|
@ -48,4 +50,12 @@ with epkgs; [
|
||||||
src = pkgs.indent-bars-source;
|
src = pkgs.indent-bars-source;
|
||||||
inherit (epkgs) trivialBuild compat;
|
inherit (epkgs) trivialBuild compat;
|
||||||
})
|
})
|
||||||
|
(pkgs.callPackage ./combobulate.nix {
|
||||||
|
src = pkgs.combobulate-source;
|
||||||
|
inherit (epkgs) trivialBuild;
|
||||||
|
})
|
||||||
|
org-roam
|
||||||
|
consult-org-roam
|
||||||
|
|
||||||
|
ement
|
||||||
]
|
]
|
||||||
|
|
Reference in a new issue