having fun with nixvim

This commit is contained in:
chloe 2025-03-07 13:34:05 +01:00
parent 851eaf80ee
commit dc4c8a81e1
5 changed files with 158 additions and 57 deletions

View file

@ -0,0 +1,11 @@
{ self, ... }:
{
programs.nixvim = {
enable = true;
colorschemes.catppuccin = {
enable = true;
settings.flavour = "latte";
};
};
}

14
features/neovim/keys.nix Normal file
View file

@ -0,0 +1,14 @@
{
lib,
config,
pkgs,
...
}:
{
programs.nixvim = {
enable = true;
keymaps = {
};
};
}

View file

@ -0,0 +1,78 @@
{
lib,
config,
pkgs,
...
}:
{
programs.nixvim = {
plugins = {
lsp = {
enable = true;
servers = {
asm_lsp.enable = true;
gopls.enable = true;
java_language_server.enable = true;
rust-analyzer.enable = true;
};
};
nvim-cmp = {
enable = true;
autoEnableSources = true;
sources = [
{ name = "nvim_lsp"; }
{ name = "path"; }
{ name = "buffer"; }
];
};
barbar.enable = true;
gitsigns.enable = true;
comment = {
enable = true;
};
treesitter = {
enable = true;
};
web-devicons = {
enable = true;
};
emmet = {
enable = true;
};
nvim-autopairs = {
enable = true;
};
presence-nvim = {
enable = true;
};
chadtree = {
enable = true;
};
fzf-lua = {
enable = true;
};
notify = true;
neotest = {
enable = true;
adapters = {
rust.enable = true;
python.enable = true;
java.enable = true;
go.enable = true;
};
};
};
};
}

View file

@ -25,13 +25,13 @@
nix-darwin.url = "github:LnL7/nix-darwin"; nix-darwin.url = "github:LnL7/nix-darwin";
nix-darwin.inputs.nixpkgs.follows = "nixpkgs"; nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
anyrun = {
url = "github:anyrun-org/anyrun";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.4.1"; nix-flatpak.url = "github:gmodena/nix-flatpak/?ref=v0.4.1";
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay"; neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
inputs.nixvim = {
url = "github:nix-community/nixvim";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = outputs =
@ -44,8 +44,8 @@
nixos-generators, nixos-generators,
nix-darwin, nix-darwin,
nix-flatpak, nix-flatpak,
anyrun,
home-manager, home-manager,
nixvim,
... ...
}@inputs: }@inputs:
let let
@ -87,9 +87,6 @@
modules = [ modules = [
./hosts/goober/configuration.nix ./hosts/goober/configuration.nix
nix-flatpak.nixosModules.nix-flatpak nix-flatpak.nixosModules.nix-flatpak
{ environment.systemPackages = [ anyrun.packages."x86_64-linux".anyrun ]; }
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
@ -98,6 +95,8 @@
home-manager.extraSpecialArgs = { inherit inputs; }; home-manager.extraSpecialArgs = { inherit inputs; };
} }
nixvim.homeManagerModules.nixvim
]; ];
}; };

View file

@ -30,72 +30,71 @@
# The home.packages option allows you to install Nix packages into your # The home.packages option allows you to install Nix packages into your
# environment. # environment.
home.packages = [ home.packages = with pkgs; [
# # Adds the 'hello' command to your environment. It prints a friendly # # Adds the 'hello' command to your environment. It prints a friendly
# # "Hello, world!" when run. # # "Hello, world!" when run.
# pkgs.hello # pkgs.hello
# # It is sometimes useful to fine-tune packages, for example, by applying nerd-fonts.code-new-roman
# # overrides. You can do that directly here, just don't forget the
# # parentheses. Maybe you want to install Nerd Fonts with a limited number of
# # fonts?
(pkgs.nerdfonts.override { fonts = [ "CodeNewRoman" ]; })
pkgs.dm-sans dm-sans
pkgs.zoxide zoxide
pkgs.btop btop
#pkgs.bitwarden #pkgs.bitwarden
pkgs.weechat weechat
pkgs.eclipses.eclipse-java # school wants us to use it... eclipses.eclipse-java # school wants us to use it...
pkgs.cava cava
pkgs.hyfetch hyfetch
pkgs.kittysay kittysay
pkgs.nextcloud-client nextcloud-client
pkgs.thunderbird-bin thunderbird-bin
pkgs.feh feh
pkgs.waybar waybar
pkgs.p7zip p7zip
pkgs.playerctl playerctl
pkgs.wf-recorder wf-recorder
pkgs.file file
pkgs.osu-lazer-bin osu-lazer-bin
pkgs.qbittorrent qbittorrent
pkgs.i2pd i2pd
pkgs.ripgrep ripgrep
pkgs.vscode vscode
pkgs.zathura zathura
pkgs.tor-browser tor-browser
pkgs.gammastep gammastep
pkgs.lazygit lazygit
pkgs.xfce.thunar xfce.thunar
pkgs.gimp-with-plugins gimp-with-plugins
pkgs.fzf fzf
pkgs.lf lf
pkgs.why3 why3
pkgs.alt-ergo alt-ergo
pkgs.cvc4 cvc4
pkgs.z3 z3
pkgs.prismlauncher prismlauncher
pkgs.audacious audacious
pkgs.audacious-plugins audacious-plugins
pkgs.krita krita
pkgs.udiskie udiskie
pkgs.libsixel libsixel
pkgs.walker walker
pkgs.unzip unzip
pkgs.p7zip p7zip
pkgs.nixfmt-rfc-style nixfmt-rfc-style
signal-desktop
gajim
blender
# # You can also create simple shell scripts directly inside your # # You can also create simple shell scripts directly inside your
# # configuration. For example, this adds a command 'my-hello' to your # # configuration. For example, this adds a command 'my-hello' to your
# # environment: # # environment: