authorgravatar for git@paperclover.netclover caruso <git@paperclover.net> 2025-07-04 21:29:59-07:00
committergravatar for git@paperclover.netclover caruso <git@paperclover.net> 2025-07-04 21:29:59-07:00
logac6a00196705a795ac82a59eeacd7eee59587cee
treed10cac04a5b4b7f9fd6c419ab70f5895be7ff8c9
parent926f53011d593219726d6432324071a2d589df96
parentab7dc1a69776f3bde087126d89f6e6eac17d56e0

Merge paperclover.dev:clo/config into chloe


3 files changed, 36 insertions(+), 17 deletions(-)

lib/mkNeovim.nix+15-13
...@@ -4,7 +4,9 @@...@@ -4,7 +4,9 @@
4 # TODO: apply overlays here4 # TODO: apply overlays here
5 overlays,5 overlays,
6 inputs,6 inputs,
7}: user: system: let7}:
8user: system:
9let
8 darwin = nixpkgs.lib.strings.hasSuffix "-darwin" system;10 darwin = nixpkgs.lib.strings.hasSuffix "-darwin" system;
911
10 host = {12 host = {
...@@ -15,15 +17,15 @@...@@ -15,15 +17,15 @@
15 userDir = ../users + "/${user}";17 userDir = ../users + "/${user}";
16 userConfig = import (userDir + "/user.nix");18 userConfig = import (userDir + "/user.nix");
17in19in
18 (inputs.nvf.lib.neovimConfiguration {20(inputs.nvf.lib.neovimConfiguration {
19 pkgs = nixpkgs.legacyPackages.${system};21 pkgs = nixpkgs.legacyPackages.${system};
20 modules = builtins.filter (f: f != null) [22 modules = builtins.filter (f: f != null) [
21 (../users + ("/" + user + "/vim.nix"))23 (../users + ("/" + user + "/vim.nix"))
22 ../modules/neovim24 ../modules/neovim
23 ];25 ];
24 extraSpecialArgs = {26 extraSpecialArgs = {
25 inherit host;27 inherit host;
26 flake = self;28 flake = self;
27 user = userConfig;29 user = userConfig;
28 };30 };
29 }).neovim31}).neovim
modules/neovim/default.nix+20-2
...@@ -1,4 +1,9 @@...@@ -1,4 +1,9 @@
1{ config, lib, ... }:1{
2 config,
3 pkgs,
4 lib,
5 ...
6}:
2{7{
3 # based on default options from upstream:8 # based on default options from upstream:
4 # https://github.com/NotAShelf/nvf/blob/main/configuration.nix9 # https://github.com/NotAShelf/nvf/blob/main/configuration.nix
...@@ -8,7 +13,7 @@...@@ -8,7 +13,7 @@
8 #13 #
9 # override level 999 is used to not conflict with mkDefault as used by nvf.14 # override level 999 is used to not conflict with mkDefault as used by nvf.
10 # which allows user configurations to disable/override anything here.15 # which allows user configurations to disable/override anything here.
11 vim = lib.mkOverride 999 {16 config.vim = lib.mkOverride 999 {
12 theme = {17 theme = {
13 enable = true;18 enable = true;
14 };19 };
...@@ -70,8 +75,21 @@...@@ -70,8 +75,21 @@
70 zig.enable = true;75 zig.enable = true;
71 # sort-lines: off76 # sort-lines: off
7277
78 ts.format.enable = false; # deno fmt is enabled elsewhere
73 nix.format.type = "nixfmt"; # looks so much nicer79 nix.format.type = "nixfmt"; # looks so much nicer
74 };80 };
81 formatter.conform-nvim = {
82 enable = true;
83 setupOpts.formatters_by_ft = {
84 typescript = [ "deno_fmt" ];
85 typescriptreact = [ "deno_fmt" ];
86 javascript = [ "deno_fmt" ];
87 javascriptreact = [ "deno_fmt" ];
88 };
89 setupOpts.formatters.deno_fmt = {
90 command = lib.meta.getExe pkgs.deno;
91 };
92 };
75 filetree = {93 filetree = {
76 neo-tree = {94 neo-tree = {
77 enable = false;95 enable = false;
users/chloe/vim.nix+1-2
...@@ -1,5 +1,6 @@...@@ -1,5 +1,6 @@
1_: {1_: {
2 vim = {2 vim = {
3 languages.astro.enable = true;
3 options = {4 options = {
4 tabstop = 2;5 tabstop = 2;
5 softtabstop = 2;6 softtabstop = 2;
...@@ -13,7 +14,6 @@ _: {...@@ -13,7 +14,6 @@ _: {
13 foldenable = true;14 foldenable = true;
14 linebreak = true;15 linebreak = true;
15 };16 };
16
17 binds = {17 binds = {
18 hardtime-nvim.setupOpts = {18 hardtime-nvim.setupOpts = {
19 restriction_mode = "block";19 restriction_mode = "block";
...@@ -33,7 +33,6 @@ _: {...@@ -33,7 +33,6 @@ _: {
33 };33 };
34 };34 };
35 };35 };
36
37 keymaps =36 keymaps =
38 let37 let
39 mkKeymap = mode: key: action: desc: {38 mkKeymap = mode: key: action: desc: {