This commit is contained in:
Joe Frikker
2026-02-15 22:09:56 -05:00
parent 0a9a7a7d33
commit 0082cb1b33
2 changed files with 99 additions and 68 deletions

View File

@@ -71,5 +71,6 @@
extraSpecialArgs = { kube = kube.packages.x86_64-linux.default; }; extraSpecialArgs = { kube = kube.packages.x86_64-linux.default; };
}; };
packages.aarch64-darwin.default = modules-for-system nixpkgs.legacyPackages.aarch64-darwin;
}; };
} }

166
home.org
View File

@@ -145,7 +145,7 @@ are still Shibumi-specific; ideally I'd find another way to install them.
* Program Configurations * Program Configurations
:PROPERTIES: :PROPERTIES:
:header-args: :noweb-ref programs :noweb no-export :header-args:nix: :noweb-ref programs :noweb no-export
:END: :END:
This section contains applications whose config files will be generated by Home Manager. Home This section contains applications whose config files will be generated by Home Manager. Home
@@ -356,22 +356,22 @@ set -g default-command ""
''; '';
#+END_SRC #+END_SRC
** Wezterm ** Wezterm
:PROPERTIES:
:header-args:lua: :tangle target/wezterm.lua
:END:
~wezterm~ is a fast terminal emulator and multiplexer. It is configured using lua. We'll define its ~wezterm~ is a fast terminal emulator and multiplexer. It is configured using lua. We'll define its
config in two blocks, so we can get lua syntax highlighting in org. First, the nix configuration: config in two blocks, so we can get lua syntax highlighting in org. First, the nix configuration:
#+BEGIN_SRC nix :noweb no-export #+BEGIN_SRC nix
wezterm.enable = true; wezterm.enable = true;
wezterm.extraConfig = '' wezterm.extraConfig = builtins.readFile ./wezterm.lua;
local config = {}
<<wezterm_colors>>
<<wezterm>>
'';
#+END_SRC #+END_SRC
Then the real lua config: Then the real lua config:
#+BEGIN_SRC lua :noweb-ref wezterm #+BEGIN_SRC lua
local config = {}
config.default_prog = { '/Users/jfrikker/.nix-profile/bin/zsh', '-l' } config.default_prog = { '/Users/jfrikker/.nix-profile/bin/zsh', '-l' }
config.font_size = 13.0 config.font_size = 13.0
-- config.font = wezterm.font("JetBrains Mono") -- config.font = wezterm.font("JetBrains Mono")
@@ -389,7 +389,7 @@ Then the real lua config:
I use a workspace switcher plugin, bouned to ~cmd-s~, that lets me quickly switch between I use a workspace switcher plugin, bouned to ~cmd-s~, that lets me quickly switch between
per-project workspaces using a single OS window. per-project workspaces using a single OS window.
#+BEGIN_SRC lua :noweb-ref wezterm #+BEGIN_SRC lua
local workspace_switcher = wezterm.plugin.require("https://github.com/MLFlexer/smart_workspace_switcher.wezterm") local workspace_switcher = wezterm.plugin.require("https://github.com/MLFlexer/smart_workspace_switcher.wezterm")
workspace_switcher.zoxide_path='~/.nix-profile/bin/zoxide' workspace_switcher.zoxide_path='~/.nix-profile/bin/zoxide'
#+END_SRC #+END_SRC
@@ -400,7 +400,7 @@ one. I use "edit" for running the editor (obviously), "run" for building / runni
and "term" for miscellaneous other tasks. I sometimes split the "run" window into multiple panes if and "term" for miscellaneous other tasks. I sometimes split the "run" window into multiple panes if
the project requires multiple things to run simultaneously. the project requires multiple things to run simultaneously.
#+BEGIN_SRC lua :noweb-ref wezterm #+BEGIN_SRC lua
wezterm.on('smart_workspace_switcher.workspace_switcher.created', function(window, path, workspace) wezterm.on('smart_workspace_switcher.workspace_switcher.created', function(window, path, workspace)
local editor = window:active_tab() local editor = window:active_tab()
editor:set_title("edit") editor:set_title("edit")
@@ -417,7 +417,7 @@ the project requires multiple things to run simultaneously.
Put the current workspace name in the lower-right corner of the window. Taken from Put the current workspace name in the lower-right corner of the window. Taken from
[https://alexplescan.com/posts/2024/08/10/wezterm/]. [https://alexplescan.com/posts/2024/08/10/wezterm/].
#+BEGIN_SRC lua :noweb-ref wezterm #+BEGIN_SRC lua
local function segments_for_right_status(window) local function segments_for_right_status(window)
return { return {
window:active_workspace(), window:active_workspace(),
@@ -488,7 +488,7 @@ Now we'll set up some keybindings:
| s-d | Close the current tab (with confirmation). | | s-d | Close the current tab (with confirmation). |
| s-123456789 | Switch to the tab with the corresponding number. | | s-123456789 | Switch to the tab with the corresponding number. |
#+BEGIN_SRC lua :noweb-ref wezterm #+BEGIN_SRC lua
config.leader = { key = ' ', mods = 'CTRL', timeout_milliseconds = 10000 } config.leader = { key = ' ', mods = 'CTRL', timeout_milliseconds = 10000 }
config.keys = { config.keys = {
{ {
@@ -558,8 +558,6 @@ Now we'll set up some keybindings:
action = wezterm.action.ActivateTab(i - 1), action = wezterm.action.ActivateTab(i - 1),
}) })
end end
return config
#+END_SRC #+END_SRC
** Zsh ** Zsh
@@ -595,23 +593,31 @@ Actually, nix *really* requires ~bash~. This is a plugin that allows using zsh f
#+END_SRC #+END_SRC
* Emacs * Emacs
:PROPERTIES:
:header-args:elisp: :tangle target/emacs.el
:header-args:nix: :noweb no-export :noweb-ref emacs_packages
:END:
Emacs is a huge portion of this configuration, so although it's a home-manager "program", I'm Emacs is a huge portion of this configuration, so although it's a home-manager "program", I'm
breaking it out into its own top-level section. Many of the sections here have two code blocks: a breaking it out into its own top-level section. Many of the sections here have two code blocks: a
nix code block listing the emacs packages to include, and an elisp code block to configure them in nix code block listing the emacs packages to include, and an elisp code block to configure them in
emacs. emacs.
#+BEGIN_SRC nix :noweb no-export :noweb-ref programs #+BEGIN_SRC nix :noweb-ref programs
emacs.enable = true; emacs.enable = true;
emacs.extraPackages = epkgs: with epkgs; [ emacs.extraPackages = epkgs: with epkgs; [
<<emacs_packages>> <<emacs_packages>>
]; ];
emacs.extraConfig = '' emacs.extraConfig = builtins.readFile ./emacs.el;
;;; -*- lexical-binding: t -*-
<<emacs_config>>
'';
#+END_SRC #+END_SRC
We'll put the actual emacs config into a separate file, rather than into a nix string literal. This
helps with a few places where nix's string interpolation was causing problems.
#+begin_src elisp
;;; -*- lexical-binding: t -*-
#+end_src
** Keybindings ** Keybindings
These keybindings are scattered throughout this file, I'm collecting them all here to make it easier These keybindings are scattered throughout this file, I'm collecting them all here to make it easier
to track them. to track them.
@@ -646,7 +652,7 @@ These are just some general settings that apply everywhere. First, a few package
Turn off some default settings that I don't find useful. Turn off some default settings that I don't find useful.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq inhibit-startup-screen t) (setq inhibit-startup-screen t)
(setq initial-scratch-message nil) (setq initial-scratch-message nil)
(menu-bar-mode -1) (menu-bar-mode -1)
@@ -664,28 +670,28 @@ Turn off some default settings that I don't find useful.
Make sure which-key mode is always on. The on-the-fly keymap help it gives is indespensable. Make sure which-key mode is always on. The on-the-fly keymap help it gives is indespensable.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(which-key-mode) (which-key-mode)
#+END_SRC #+END_SRC
Automatically refresh ~dired~ buffers when switching to them, instead of requiring an explicit Automatically refresh ~dired~ buffers when switching to them, instead of requiring an explicit
refresh. refresh.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq dired-auto-revert-buffer t) (setq dired-auto-revert-buffer t)
#+END_SRC #+END_SRC
Similarly, highlighting the line the cursor is on is really useful for figuring out where you are, Similarly, highlighting the line the cursor is on is really useful for figuring out where you are,
especially on monitors with a lot of vertical space. especially on monitors with a lot of vertical space.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(global-hl-line-mode) (global-hl-line-mode)
#+END_SRC #+END_SRC
From the docs: "If complete, TAB first tries to indent the current line, and if the line was From the docs: "If complete, TAB first tries to indent the current line, and if the line was
already indented, then try to complete the thing at point." Recommended by [[https://github.com/minad/corfu][the ~corfu~ readme]]. already indented, then try to complete the thing at point." Recommended by [[https://github.com/minad/corfu][the ~corfu~ readme]].
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq tab-always-indent 'complete) (setq tab-always-indent 'complete)
#+END_SRC #+END_SRC
@@ -694,7 +700,7 @@ current character isn't really "selected" like it would be in Helix. When I had
switched to a block cursor during normal mode, just because I was so used to it from Helix and switched to a block cursor during normal mode, just because I was so used to it from Helix and
Vim. Now, I don't think there's really a need to ever switch. Vim. Now, I don't think there's really a need to ever switch.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq-default cursor-type 'bar) (setq-default cursor-type 'bar)
#+END_SRC #+END_SRC
@@ -703,7 +709,7 @@ want changes I've made to be immediately saved to disk. So let's have Emacs do t
fairly long (~5 sec) delay before changes are saved, which is kind of annoying. Maybe I'll look into fairly long (~5 sec) delay before changes are saved, which is kind of annoying. Maybe I'll look into
that at some point? that at some point?
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(auto-save-visited-mode) (auto-save-visited-mode)
#+END_SRC #+END_SRC
@@ -711,14 +717,14 @@ Repeat-mode takes care of eliminating some annoying duplicate keypresses. I most
for two-character commands that need to be repeated; ~devil~ also has some single-key-with-modifier for two-character commands that need to be repeated; ~devil~ also has some single-key-with-modifier
repeats set up that only apply in that mode. repeats set up that only apply in that mode.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(repeat-mode) (repeat-mode)
#+END_SRC #+END_SRC
Save the minibuffer history to disk, so recently-used options show up at the top of the picker Save the minibuffer history to disk, so recently-used options show up at the top of the picker
across restarts. across restarts.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(savehist-mode) (savehist-mode)
#+END_SRC #+END_SRC
@@ -727,7 +733,7 @@ it would update after every command, slowing down everything). I don't need the
I have the tab bar at the top of the window. The other settings just clear up some space, and make I have the tab bar at the top of the window. The other settings just clear up some space, and make
things look at little nicer. things look at little nicer.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq doom-modeline-irc nil) (setq doom-modeline-irc nil)
(setq doom-modeline-workspace-name nil) (setq doom-modeline-workspace-name nil)
(setq doom-modeline-buffer-encoding nil) (setq doom-modeline-buffer-encoding nil)
@@ -739,7 +745,7 @@ Ligature mode combines character sequences like <= into a single on-screen glyph
cool, so I'm turning it on in prog mode. The enabled ligatures are font-specific, taken from [[https://github.com/mickeynp/ligature.el/wiki#jetbrains-mono][the cool, so I'm turning it on in prog mode. The enabled ligatures are font-specific, taken from [[https://github.com/mickeynp/ligature.el/wiki#jetbrains-mono][the
ligature wiki]]. ligature wiki]].
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package ligature (use-package ligature
:after prog-mode :after prog-mode
:config :config
@@ -762,7 +768,7 @@ ligature wiki]].
Use variable-width fonts in text buffers. ~mixed-pitch-mode~ keeps most code blocks as monospace. Use variable-width fonts in text buffers. ~mixed-pitch-mode~ keeps most code blocks as monospace.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(add-hook 'text-mode-hook 'mixed-pitch-mode) (add-hook 'text-mode-hook 'mixed-pitch-mode)
(defun no-mixed-pitch () (defun no-mixed-pitch ()
@@ -774,7 +780,7 @@ Use variable-width fonts in text buffers. ~mixed-pitch-mode~ keeps most code blo
A basic ace-window setup. Allows switching between windows quickly (although avy can do the same...). A basic ace-window setup. Allows switching between windows quickly (although avy can do the same...).
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package ace-window (use-package ace-window
:bind (("M-o" . ace-window) :bind (("M-o" . ace-window)
("s-o" . ace-window)) ("s-o" . ace-window))
@@ -786,7 +792,7 @@ A basic ace-window setup. Allows switching between windows quickly (although avy
Set up a few project- / workspace-related key bindings. Set up a few project- / workspace-related key bindings.
#+name: workspace_keybinds #+name: workspace_keybinds
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(bind-keys ("s-f" . project-find-file) (bind-keys ("s-f" . project-find-file)
("s-F" . project-switch-project)) ("s-F" . project-switch-project))
(bind-keys :map tab-bar-mode-map (bind-keys :map tab-bar-mode-map
@@ -795,20 +801,20 @@ Set up a few project- / workspace-related key bindings.
Don't run a server. I'm not using this, I can always turn it back on if I need to. Don't run a server. I'm not using this, I can always turn it back on if I need to.
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(server-mode -1) (server-mode -1)
#+END_SRC #+END_SRC
All the beeping is annoying. This flashes a huge icon over the screen, which is still annoying, but All the beeping is annoying. This flashes a huge icon over the screen, which is still annoying, but
less so? less so?
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq visible-bell t) (setq visible-bell t)
#+END_SRC #+END_SRC
I'm trying this out. This disables visual selections. It's bold, which is why I like it :) I'm trying this out. This disables visual selections. It's bold, which is why I like it :)
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(transient-mark-mode -1) (transient-mark-mode -1)
#+END_SRC #+END_SRC
@@ -820,7 +826,7 @@ fix / issue, and leave it open until I'm done with that issue.
change when drilling into a help page or something. I've set up repeat mode to make it easier to change when drilling into a help page or something. I've set up repeat mode to make it easier to
move backward / forward through history. move backward / forward through history.
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package tab-bar (use-package tab-bar
:config :config
(tab-bar-history-mode) (tab-bar-history-mode)
@@ -836,7 +842,7 @@ going for an IDE-style layout, with one main editor window, and auxiliary bottom
windows. I place windows in the bottom or on the right mostly depending on how wide I expect their windows. I place windows in the bottom or on the right mostly depending on how wide I expect their
content to be. content to be.
#+BEGIN_SRC elisp :noweb no :noweb-ref emacs_config #+BEGIN_SRC elisp
(setq display-buffer-alist (setq display-buffer-alist
'(((or "\\*Flymake diagnostics *" '(((or "\\*Flymake diagnostics *"
"\\*Embark Export *" "\\*Embark Export *"
@@ -858,6 +864,7 @@ content to be.
(no-other-window . t))) (no-other-window . t)))
((or "magit: *" ((or "magit: *"
"magit-revision: *" "magit-revision: *"
"magit-log*"
"\\*eldoc\\*" "\\*eldoc\\*"
"\\*Help\\*" "\\*Help\\*"
"\\*rustfmt\\*" "\\*rustfmt\\*"
@@ -887,7 +894,7 @@ content to be.
This configuration affects general text editing, across all modes. First, some packages: This configuration affects general text editing, across all modes. First, some packages:
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
avy avy
devil devil
edit-indirect edit-indirect
@@ -907,7 +914,7 @@ but I'm worried that having too many repeat maps will also be annoying (I'll hav
cancel them more frequently). In the end, I opted for Devil mode. It avoids modifier keys, and has cancel them more frequently). In the end, I opted for Devil mode. It avoids modifier keys, and has
its own devil-mode-only repeat maps that don't interfere when using normal modifier key sequences. its own devil-mode-only repeat maps that don't interfere when using normal modifier key sequences.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package devil (use-package devil
:disable t :disable t
:config :config
@@ -944,7 +951,7 @@ Avy allows jumping to any place on the screen with just a few keystrokes. I've s
ideas from Karthinks' article [[https://karthinks.com/software/avy-can-do-anything/][Avy can do Anything]]. I need to find more uses for this, in line with ideas from Karthinks' article [[https://karthinks.com/software/avy-can-do-anything/][Avy can do Anything]]. I need to find more uses for this, in line with
his article. his article.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package avy (use-package avy
:bind ("M-j" . avy-goto-char-timer)) :bind ("M-j" . avy-goto-char-timer))
@@ -974,13 +981,13 @@ his article.
Just "silently" wrap when searching at the bottom of a document. Just "silently" wrap when searching at the bottom of a document.
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package isearch (use-package isearch
:custom :custom
(isearch-wrap-pause 'no-ding)) (isearch-wrap-pause 'no-ding))
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package string-inflection (use-package string-inflection
:commands :commands
string-inflection-java-style-cycle string-inflection-java-style-cycle
@@ -1010,7 +1017,7 @@ Just "silently" wrap when searching at the bottom of a document.
** Language Support ** Language Support
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
consult-eglot consult-eglot
haskell-ts-mode haskell-ts-mode
jenkinsfile-mode jenkinsfile-mode
@@ -1031,7 +1038,7 @@ I had some weird problems with jsx code where the default M-q would just do a te
a re-indent. The solution seems to be to only do the ~syntax-ppss~ stuff if tree-sitter isn't a re-indent. The solution seems to be to only do the ~syntax-ppss~ stuff if tree-sitter isn't
available? It seems to work for now anyway... available? It seems to work for now anyway...
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(electric-pair-mode 1) (electric-pair-mode 1)
(use-package prog-mode (use-package prog-mode
@@ -1061,7 +1068,7 @@ available? It seems to work for now anyway...
(indent-region start (point) nil))))))) (indent-region start (point) nil)))))))
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package nix-mode (use-package nix-mode
:mode "\\.nix\\'") :mode "\\.nix\\'")
@@ -1234,11 +1241,11 @@ available? It seems to work for now anyway...
** Envrc ** Envrc
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
envrc envrc
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package envrc (use-package envrc
:hook (after-init . envrc-global-mode) :hook (after-init . envrc-global-mode)
:custom :custom
@@ -1247,7 +1254,7 @@ available? It seems to work for now anyway...
** Magit ** Magit
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
consult-gh consult-gh
diff-hl diff-hl
forge forge
@@ -1255,7 +1262,7 @@ available? It seems to work for now anyway...
magit magit
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package magit (use-package magit
:defer nil :defer nil
:bind (("C-x g" . magit-status) :bind (("C-x g" . magit-status)
@@ -1288,7 +1295,7 @@ available? It seems to work for now anyway...
** Vertico ** Vertico
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
cape cape
consult consult
corfu corfu
@@ -1298,7 +1305,7 @@ available? It seems to work for now anyway...
vertico vertico
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package consult (use-package consult
:bind ( :bind (
;; ("C-c M-x" . consult-mode-command) ;; ("C-c M-x" . consult-mode-command)
@@ -1347,7 +1354,7 @@ available? It seems to work for now anyway...
(advice-add #'register-preview :override #'consult-register-window) (advice-add #'register-preview :override #'consult-register-window)
(setq register-preview-delay 0.5) (setq register-preview-delay 0.5)
;; (setq xref-show-xrefs-function #'consult-xref xref-show-definitions-function #'consult-xref) (setq xref-show-xrefs-function #'consult-xref xref-show-definitions-function #'consult-xref)
:config :config
@@ -1361,8 +1368,6 @@ available? It seems to work for now anyway...
:preview-key '(:debounce 0.4 any)) :preview-key '(:debounce 0.4 any))
(setq consult-narrow-key "<") ;; "C-+" (setq consult-narrow-key "<") ;; "C-+"
(setq xref-show-xrefs-function #'consult-xref
xref-show-definitions-function #'consult-xref)
) )
(use-package vertico (use-package vertico
@@ -1404,7 +1409,7 @@ available? It seems to work for now anyway...
** Org ** Org
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
org-modern org-modern
org-present org-present
org-roam org-roam
@@ -1413,7 +1418,7 @@ available? It seems to work for now anyway...
visual-fill-column visual-fill-column
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package org (use-package org
:defer nil :defer nil
:mode ("\\.org\\'" . org-mode) :mode ("\\.org\\'" . org-mode)
@@ -1542,11 +1547,11 @@ available? It seems to work for now anyway...
** Terminal ** Terminal
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
eat eat
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package eat (use-package eat
:config :config
(eat-eshell-mode)) (eat-eshell-mode))
@@ -1554,11 +1559,11 @@ available? It seems to work for now anyway...
** Slack ** Slack
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
slack slack
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package lui (use-package lui
:defer t :defer t
:custom :custom
@@ -1574,11 +1579,11 @@ available? It seems to work for now anyway...
** Kubernetes ** Kubernetes
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
kubed kubed
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package kubed (use-package kubed
:bind-keymap :bind-keymap
("s-k" . kubed-prefix-map)) ("s-k" . kubed-prefix-map))
@@ -1586,17 +1591,17 @@ available? It seems to work for now anyway...
** Ledger ** Ledger
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
ledger-mode ledger-mode
#+END_SRC #+END_SRC
** Age ** Age
#+BEGIN_SRC nix :noweb-ref emacs_packages #+BEGIN_SRC nix
age age
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref emacs_config #+BEGIN_SRC elisp
(use-package age (use-package age
:custom :custom
(age-default-identity "~/source/dotfiles/keys/yubi1age.txt") (age-default-identity "~/source/dotfiles/keys/yubi1age.txt")
@@ -1606,6 +1611,29 @@ age
(age-file-enable)) (age-file-enable))
#+END_SRC #+END_SRC
** Snippets
#+BEGIN_SRC nix
yasnippet
#+END_SRC
#+BEGIN_SRC elisp
(yas-global-mode)
#+END_SRC
*** Org Mode
#+BEGIN_SRC snippet :tangle target/snippets/org-mode/src
# name: SRC block
# key: src
# expand-env: ((yas-indent-line 'fixed))
# --
,#+BEGIN_SRC ${1:elisp}
$0
,#+END_SRC
#+END_SRC
* Theme * Theme
I like Catppuccin Frappe as my theme. Let's use it in as many places as we can. I like Catppuccin Frappe as my theme. Let's use it in as many places as we can.
@@ -1678,8 +1706,10 @@ I like Catppuccin Frappe as my theme. Let's use it in as many places as we can.
** Wezterm ** Wezterm
#+NAME: wezterm_colors #+NAME: wezterm_colors
#+BEGIN_SRC lua #+BEGIN_SRC lua :tangle target/wezterm.lua
config.color_scheme = 'Catppuccin Frappe' config.color_scheme = 'Catppuccin Frappe'
return config
#+END_SRC #+END_SRC
** Emacs ** Emacs
@@ -1688,7 +1718,7 @@ I like Catppuccin Frappe as my theme. Let's use it in as many places as we can.
catppuccin-theme catppuccin-theme
#+END_SRC #+END_SRC
#+BEGIN_SRC elisp :noweb-ref "emacs_config" #+BEGIN_SRC elisp :tangle target/emacs.el
(use-package catppuccin-theme (use-package catppuccin-theme
:custom :custom
(catppuccin-flavor 'frappe) (catppuccin-flavor 'frappe)