From e52adbbc4bd9ed59bedaefa83853688cb4b61a97 Mon Sep 17 00:00:00 2001 From: Joe Frikker Date: Wed, 17 Jun 2026 15:42:52 -0400 Subject: [PATCH] Splitting out shibumi deps --- flake.nix | 10 ++++----- home.org | 64 +++++++++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 61 insertions(+), 13 deletions(-) diff --git a/flake.nix b/flake.nix index 702f6fe..5d77e93 100644 --- a/flake.nix +++ b/flake.nix @@ -50,13 +50,11 @@ modules = [ nix-index-database.homeModules.default + "${modules}/base.nix" + "${modules}/desktop.nix" + "${modules}/shibumi.nix" + "${modules}/shibumi-desktop.nix" ] ++ - (pkgs.lib.filter - (n: pkgs.lib.strings.hasSuffix ".nix" n) - (pkgs.lib.filesystem.listFilesRecursive "${modules}/base")) ++ - (pkgs.lib.filter - (n: pkgs.lib.strings.hasSuffix ".nix" n) - (pkgs.lib.filesystem.listFilesRecursive "${modules}/desktop")) ++ [{ home.stateVersion = "22.05"; home.username = "jfrikker"; diff --git a/home.org b/home.org index 46f2a3c..bdb04d9 100644 --- a/home.org +++ b/home.org @@ -1,5 +1,38 @@ #+PROPERTY: header-args :mkdirp yes #+PROPERTY: header-args:elisp :lexical t +* Categories + +#+BEGIN_SRC nix :tangle target/base.nix + {lib, ...}: { + imports = lib.filter + (n: lib.strings.hasSuffix ".nix" n) + (lib.filesystem.listFilesRecursive ./base); + } +#+END_SRC + +#+BEGIN_SRC nix :tangle target/desktop.nix + {lib, ...}: { + imports = lib.filter + (n: lib.strings.hasSuffix ".nix" n) + (lib.filesystem.listFilesRecursive ./desktop); + } +#+END_SRC + +#+BEGIN_SRC nix :tangle target/shibumi.nix + {lib, ...}: { + imports = lib.filter + (n: lib.strings.hasSuffix ".nix" n) + (lib.filesystem.listFilesRecursive ./shibumi); + } +#+END_SRC + +#+BEGIN_SRC nix :tangle target/shibumi-desktop.nix + {lib, ...}: { + imports = lib.filter + (n: lib.strings.hasSuffix ".nix" n) + (lib.filesystem.listFilesRecursive ./shibumi-desktop); + } +#+END_SRC * Packages Home-manager "packages" are simply binaries that are placed on the path, without any attached @@ -90,6 +123,7 @@ tools. They boost better speed, or simply more streamlined features. dust fd ripgrep + tokei xh ]; } @@ -133,7 +167,7 @@ between them. Once installed, the actual command is ~wormhole~. These are the other programs I have installed globally. A few (like ~awscli~, ~mysql-client~, etc.) are still Shibumi-specific; ideally I'd find another way to install them. - #+BEGIN_SRC nix :tangle target/base/other-packages.nix + #+BEGIN_SRC nix :tangle target/shibumi/other-packages.nix {pkgs, kube, ...}: { home.packages = with pkgs; [ @@ -142,9 +176,7 @@ are still Shibumi-specific; ideally I'd find another way to install them. kube kubectl mariadb.client - nerd-fonts.jetbrains-mono openssh - tokei ]; fonts.fontconfig.enable = true; @@ -158,17 +190,26 @@ These programs require a full desktop environment: { home.packages = with pkgs; [ google-chrome + nerd-fonts.jetbrains-mono (iosevka-bin.override { variant = "Aile"; }) (iosevka-bin.override { variant = "Etoile"; }) (iosevka-bin.override { variant = "SGr-IosevkaTerm"; }) keymapp proton-pass - slack wireshark ]; } #+END_SRC +#+BEGIN_SRC nix :tangle target/shibumi-desktop/desktop-packages.nix + {pkgs, ...}: + { + home.packages = with pkgs; [ + slack + ]; + } +#+END_SRC + * Program Configurations This section contains applications whose config files will be generated by Home Manager. Home Manager calls these "programs" (as opposed to "packages", which are just binaries to put on the @@ -878,7 +919,8 @@ A basic ace-window setup. Allows switching between windows quickly (although avy #+BEGIN_SRC elisp (bind-keys ("M-o" . ace-window) - ("s-o" . ace-window)) + ("s-o" . ace-window) + ("C-c o" . ace-window)) (setopt aw-keys '(?a ?s ?d ?f ?g ?h ?j ?k ?l)) (setopt aw-dispatch-always t) #+END_SRC @@ -1112,7 +1154,13 @@ Just "silently" wrap when searching at the bottom of a document. haskell-ts-mode jenkinsfile-mode jq-mode - lispy + (lispy.overrideAttrs { + packageRequires = [ + ace-window iedit swiper zoutline + ]; + ignoreCompilationError = true; + }) + lispyville lua-mode nix-mode rust-mode @@ -1294,6 +1342,8 @@ for completion. That makes it really annoying to use; don't use yasnippet with e (add-hook 'emacs-lisp-mode-hook (lambda () (lispy-mode 1))) (add-hook 'lisp-mode-hook (lambda () (lispy-mode 1))) (with-eval-after-load 'lispy + (require 'lispyville) + (add-hook 'lispy-mode-hook #'lispyville-mode) (bind-keys :map lispy-mode-map ("i" . (lambda () (interactive) @@ -1808,7 +1858,7 @@ for completion. That makes it really annoying to use; don't use yasnippet with e #+END_SRC #+BEGIN_SRC elisp - (autoload 'claude-code-command-map "claude-code" :type 'keymap) + (require 'claude-code) (keymap-global-set "C-c c" claude-code-command-map) #+END_SRC * Theme