fully fleshed out nixd settings and switch to nvim-cmp from COQ. Also updated rebuild to work for both home and system configs
This commit is contained in:
@@ -6,13 +6,15 @@
|
||||
pkgs.writeShellApplication {
|
||||
name = "rebuild";
|
||||
text = ''
|
||||
[ $# -eq 0 ] && echo "Usage: rebuild -h for home config, rebuild -s for sys config"
|
||||
scheck && runbg aplay ${self}/assets/sound/nixswitch-start.wav
|
||||
set -e
|
||||
nh os switch -H ${host} "$HOME"/.sysflake
|
||||
if sudo nixos-rebuild switch --flake "$HOME/.sysflake#${host}"; then
|
||||
scheck && runbg aplay ${self}/assets/sound/update.wav
|
||||
else
|
||||
scheck && runbg aplay ${self}/assets/sound/error.wav
|
||||
fi
|
||||
hooray() { scheck && runbg aplay ${self}/assets/sound/update.wav }
|
||||
damn() { scheck && runbg aplay ${self}/assets/sound/error.wav }
|
||||
case $1 in
|
||||
"-h" ) if nh home switch -c ${host}Home "$FLAKEPATH"; then hooray; else damn; fi;;
|
||||
"-s" ) if nh os switch -H ${host} "$FLAKEPATH"; then hooray; else damn; fi;;
|
||||
* ) echo "Usage: rebuild -h for home config, rebuild -s for sys config";;
|
||||
esac
|
||||
'';
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
plugins.coq-nvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
auto_start = true;
|
||||
auto_start = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
./alpha.nix
|
||||
./haskell.nix
|
||||
./vim-matchup.nix
|
||||
./coq.nix
|
||||
# ./coq.nix
|
||||
./barbar.nix
|
||||
./cmp.nix
|
||||
( import ./lsp.nix { inherit host self; })
|
||||
./lsp.nix
|
||||
./lualine.nix
|
||||
./plugins.nix
|
||||
./nvim-tree.nix
|
||||
|
||||
@@ -1,10 +1,52 @@
|
||||
{ host, ... }:
|
||||
let
|
||||
flakePath = builtins.getEnv "FLAKEPATH";
|
||||
in
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.lsp = {
|
||||
plugins = {
|
||||
cmp-snippy.enable = true;
|
||||
cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mapping = {
|
||||
__raw = ''
|
||||
cmp.mapping.preset.insert({
|
||||
['<C-o>'] = cmp.mapping.close_docs(),
|
||||
['<C-i>'] = cmp.mapping.open_docs(),
|
||||
['<C-j>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<C-k>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<CR>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.confirm()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, -- Added a comma here
|
||||
['<Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, -- Added a comma here
|
||||
['<S-Tab>'] = function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_prev_item()
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end -- No comma needed for the last item
|
||||
})
|
||||
'';
|
||||
};
|
||||
completion = {
|
||||
keyword_length = 3;
|
||||
};
|
||||
window = {
|
||||
completion.border = "rounded";
|
||||
};
|
||||
};
|
||||
};
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
bashls.enable = true;
|
||||
@@ -21,9 +63,11 @@ in
|
||||
nixd = {
|
||||
nixpkgs.expr = "import <nixpkgs> { }";
|
||||
formatting.command = "nixfmt";
|
||||
options = {
|
||||
nixos.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").nixosConfigurations.xenon.options";
|
||||
};
|
||||
options = {
|
||||
# uses Xenon config because it has every option exposed to it
|
||||
nixos.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").nixosConfigurations.xenon.options";
|
||||
home.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").homeConfigurations.xenonHome.options";
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -36,4 +80,5 @@ in
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user