feat(nvim): setup for ipynb dev work #98

Merged
jalil merged 1 commit from ipynb-nvim into main 2024-10-12 21:41:21 +02:00
4 changed files with 42 additions and 21 deletions
Showing only changes of commit f30afe506b - Show all commits

View file

@ -1,24 +1,22 @@
{ inputs, ... }: { inputs, ... }:
let
standalone = ../nvim/standalone.nix;
in
{ {
flake.overlays.nixvim = inputs.nixvim.overlays.default; flake.overlays.nixvim = inputs.nixvim.overlays.default;
perSystem = perSystem =
{ pkgs, system, ... }: { pkgs, system, ... }:
{ let
# Check standalone nvim build nixvimLib = inputs.nixvim.lib.${system};
checks.nvim = inputs.nixvim.lib.${system}.check.mkTestDerivationFromNixvimModule { nixvim = inputs.nixvim.legacyPackages.${system};
module = {
inherit pkgs; inherit pkgs;
module = ../nvim/standalone.nix; module = ../nvim/standalone.nix;
}; };
in
{
# Check standalone nvim build
checks.nvim = nixvimLib.check.mkTestDerivationFromNixvimModule module;
# Nvim standalone module # Nvim standalone module
packages.nvim = inputs.nixvim.legacyPackages.${system}.makeNixvimWithModule { packages.nvim = nixvim.makeNixvimWithModule module;
inherit pkgs;
module = standalone;
};
}; };
} }

View file

@ -5,7 +5,7 @@
... ...
}: }:
let let
inherit (helpers) mkRaw; inherit (helpers) mkRaw enableExceptInTests;
in in
{ {
config.plugins = { config.plugins = {
@ -160,6 +160,15 @@ in
}; };
}; };
gitsigns.enable = true; gitsigns.enable = true;
image.enable = enableExceptInTests;
jupytext = {
enable = true;
settings.custom_language_formatting.python = {
extension = "md";
style = "markdown";
force_ft = "markdown";
};
};
lint = { lint = {
enable = true; enable = true;
lintersByFt = { lintersByFt = {
@ -210,6 +219,15 @@ in
enable = true; enable = true;
settings.update_events = "TextChanged,TextChangedI"; settings.update_events = "TextChanged,TextChangedI";
}; };
molten = {
enable = true;
settings = {
image_provider = "image.nvim";
virt_text_output = true;
molten_auto_open_output = false;
molten_virt_lines_off_by_1 = true;
};
};
noice = { noice = {
enable = true; enable = true;
lsp.override = { lsp.override = {
@ -241,6 +259,7 @@ in
mode = "virtualtext"; mode = "virtualtext";
}; };
}; };
otter.enable = true;
rustaceanvim = { rustaceanvim = {
enable = true; enable = true;
# Install through rustup # Install through rustup
@ -256,6 +275,7 @@ in
treesitter = { treesitter = {
enable = true; enable = true;
settings = { settings = {
highlight.enable = true;
indent.enable = true; indent.enable = true;
incremental_election.enable = true; incremental_election.enable = true;
}; };

View file

@ -61,6 +61,7 @@
pkgs.unstable.taplo pkgs.unstable.taplo
pkgs.unstable.typos pkgs.unstable.typos
pkgs.unstable.yamlfmt pkgs.unstable.yamlfmt
(pkgs.unstable.python3.withPackages (p: [ p.jupytext ]))
]; ];
extraConfigLuaPre = extraConfigLuaPre =
# lua # lua

View file

@ -74,16 +74,18 @@ in
}; };
environment.etc = keysFromGithub; environment.etc = keysFromGithub;
services.openssh.authorizedKeysFiles = builtins.map (path: "/etc/${path}") ( services = {
builtins.attrNames keysFromGithub
);
# Enable printer autodiscovery if printing is enabled # Enable printer autodiscovery if printing is enabled
services.avahi = { avahi = {
inherit (config.services.printing) enable; inherit (config.services.printing) enable;
nssmdns4 = true; nssmdns4 = true;
openFirewall = true; openFirewall = true;
}; };
openssh.authorizedKeysFiles = builtins.map (path: "/etc/${path}") (
builtins.attrNames keysFromGithub
);
jupyter.enable = cfg.dev.enable;
};
users.defaultUserShell = pkgs.zsh; users.defaultUserShell = pkgs.zsh;
# Open ports for spotifyd # Open ports for spotifyd
networking.firewall = { networking.firewall = {