feat(flake): Added subflake
So as to not specify fetchFromGitHub commit hashes Added mullvad packages
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
enable = device.isLinux;
|
||||
profiles.default = {
|
||||
userChrome = let
|
||||
# TODO: Move to subflake
|
||||
csshacks = pkgs.fetchFromGitHub {
|
||||
owner = "MrOtherGuy";
|
||||
repo = "firefox-csshacks";
|
||||
|
||||
@@ -80,7 +80,9 @@
|
||||
gptfdisk
|
||||
polkit_gnome
|
||||
dig
|
||||
mullvad
|
||||
mullvad-vpn
|
||||
mullvad-closest
|
||||
mullvad-browser
|
||||
steam-run
|
||||
usbutils
|
||||
handlr-regex
|
||||
@@ -218,7 +220,7 @@
|
||||
};
|
||||
carapace = {
|
||||
enable = true;
|
||||
# enableFishIntegration = true;
|
||||
enableFishIntegration = true;
|
||||
enableNushellIntegration = true;
|
||||
};
|
||||
fzf = {
|
||||
|
||||
@@ -54,13 +54,13 @@ in {
|
||||
lua
|
||||
*/
|
||||
''
|
||||
function(bufnr)
|
||||
local opts = { highlight = true }
|
||||
return require'nvim-navic'.get_location(opts)
|
||||
end,
|
||||
cond = function()
|
||||
return require'nvim-navic'.is_available()
|
||||
end
|
||||
function(bufnr)
|
||||
local opts = { highlight = true }
|
||||
return require'nvim-navic'.get_location(opts)
|
||||
end,
|
||||
cond = function()
|
||||
return require'nvim-navic'.is_available()
|
||||
end
|
||||
'';
|
||||
}
|
||||
];
|
||||
@@ -226,6 +226,7 @@ in {
|
||||
cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
autoEnableSources = true;
|
||||
sources = [
|
||||
{name = "buffer";}
|
||||
{name = "buffer";}
|
||||
@@ -291,33 +292,36 @@ in {
|
||||
};
|
||||
keymaps = mkMappings {
|
||||
normal = {
|
||||
"<leader>c" = "[[<cmd>ChatGPT<cr>]]";
|
||||
"<leader>o" = "[[<cmd>TroubleToggle<cr>]]";
|
||||
"<leader>ee" = "[[<cmd>Rest run<cr>]]";
|
||||
"<leader>el" = "[[<cmd>Rest run last<cr>]]";
|
||||
"vff" = "[[<cmd>vertical Gdiffsplit<cr>]]";
|
||||
"<leader>\"" = ''[["+]]'';
|
||||
"gh" = "[[<cmd>Octo actions<cr>]]";
|
||||
"<leader><leader>" = "'<c-^>'";
|
||||
"<leader>q" = "[[<cmd>bw<cr>]]";
|
||||
"<leader>n" = "[[<cmd>bnext<cr>]]";
|
||||
"<leader>p" = "[[<cmd>bprev<cr>]]";
|
||||
"<C-l>" = "[[<cmd>Outline<cr>]]";
|
||||
"<C-w>\"" = "[[<cmd>split<cr>]]";
|
||||
"<C-w>%" = "[[<cmd>vsplit<cr>]]";
|
||||
"gh" = "[[<cmd>Octo actions<cr>]]";
|
||||
"<leader>\"" = ''[["+]]'';
|
||||
"<leader>c" = "[[<cmd>ChatGPT<cr>]]";
|
||||
"<leader>dr" = "[[<cmd>RustLsp debuggables<cr>]]";
|
||||
"<C-l>" = "[[<cmd>Outline<cr>]]";
|
||||
"<leader>ee" = "[[<cmd>Rest run<cr>]]";
|
||||
"<leader>el" = "[[<cmd>Rest run last<cr>]]";
|
||||
"<leader>hh" = "[[<cmd>DevdocsOpenFloat<cr>]]";
|
||||
"<leader>hl" = "[[<cmd>DevdocsToggle<cr>]]";
|
||||
"<leader><leader>" = "'<c-^>'";
|
||||
"<leader>n" = "[[<cmd>bnext<cr>]]";
|
||||
"<leader>o" = "[[<cmd>TroubleToggle<cr>]]";
|
||||
"<leader>p" = "[[<cmd>bprev<cr>]]";
|
||||
"<leader>q" = "[[<cmd>bw<cr>]]";
|
||||
"<leader>nn" = "[[<cmd>Neorg<cr>]]";
|
||||
"vff" = "[[<cmd>vertical Gdiffsplit<cr>]]";
|
||||
|
||||
"<C-k>" = "vim.lsp.buf.definition";
|
||||
"<C-\\>" = "require('FTerm').toggle";
|
||||
"F" = "function() vim.lsp.buf.format({ async = true }) end";
|
||||
"gi" = "require'telescope.builtin'.lsp_implementations";
|
||||
"<leader>a" = "vim.lsp.buf.code_action";
|
||||
"<leader>bb" = "require'dap'.toggle_breakpoint";
|
||||
"<leader>du" = "require'dapui'.toggle";
|
||||
"<leader>fb" = "require'telescope'.extensions.file_browser.file_browser";
|
||||
"<leader>ff" = "require'telescope.builtin'.find_files";
|
||||
"<leader>gg" = "require'telescope.builtin'.live_grep";
|
||||
"<leader>;" = "require'telescope.builtin'.buffers";
|
||||
"<C-k>" = "vim.lsp.buf.definition";
|
||||
"gi" = "require'telescope.builtin'.lsp_implementations";
|
||||
"<leader>a" = "vim.lsp.buf.code_action";
|
||||
"F" = "function() vim.lsp.buf.format({ async = true }) end";
|
||||
"<leader>bb" = "require'dap'.toggle_breakpoint";
|
||||
"<leader>du" = "require'dapui'.toggle";
|
||||
"<C-\\>" = "require('FTerm').toggle";
|
||||
};
|
||||
terminal = {
|
||||
"<C-\\>" = "require('FTerm').toggle";
|
||||
@@ -505,6 +509,20 @@ in {
|
||||
require('lspconfig.ui.windows').default_options.border = 'single'
|
||||
|
||||
catcher(require('nvim_context_vt').setup)
|
||||
catcher(function()
|
||||
require('nvim-devdocs').setup({
|
||||
ensure_installed = {"nix", "rust"},
|
||||
float_win = {
|
||||
relative = "editor",
|
||||
height = 80,
|
||||
width = 100,
|
||||
border = "rounded",
|
||||
},
|
||||
after_open = function()
|
||||
vim.o.conceallevel = 3
|
||||
end,
|
||||
})
|
||||
end)
|
||||
'';
|
||||
package = pkgs.neovim-nightly;
|
||||
options = {
|
||||
@@ -524,6 +542,7 @@ in {
|
||||
undodir = "${config.xdg.cacheHome}/undodir";
|
||||
undofile = true;
|
||||
viewoptions = "cursor,folds";
|
||||
concealcursor = "n";
|
||||
};
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
# neorg
|
||||
@@ -547,6 +566,7 @@ in {
|
||||
# lsp stuff
|
||||
copilot-lua
|
||||
crates-nvim
|
||||
luasnip
|
||||
|
||||
# No more postman
|
||||
rest-nvim
|
||||
@@ -563,8 +583,11 @@ in {
|
||||
|
||||
# Testing
|
||||
neotest
|
||||
# neotest-rust
|
||||
# Helper libs
|
||||
webapi-vim
|
||||
# Treesitter
|
||||
nvim_context_vt
|
||||
nvim-devdocs
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
{lib, ...}: {
|
||||
{
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
home.sessionVariables = {
|
||||
"ZELLIJ_AUTO_ATTACH" = "true";
|
||||
# "ZELLIJ_AUTO_EXIT" = "true";
|
||||
@@ -59,7 +63,7 @@
|
||||
default_shell = "fish";
|
||||
pane_frames = false;
|
||||
theme = "catppuccin-mocha";
|
||||
default_layout = "compact";
|
||||
# default_layout = "compact";
|
||||
keybinds = mkKeybinds {
|
||||
normal = {
|
||||
clear-defaults = true;
|
||||
@@ -93,4 +97,49 @@
|
||||
};
|
||||
enableFishIntegration = true;
|
||||
};
|
||||
xdg.configFile."zellij/layouts/default.kdl" = {
|
||||
text =
|
||||
/*
|
||||
kdl
|
||||
*/
|
||||
''
|
||||
layout {
|
||||
pane split_direction="vertical" {
|
||||
pane
|
||||
}
|
||||
|
||||
pane size=1 borderless=true {
|
||||
plugin location="file:${pkgs.zellijPlugins.zjstatus}/bin/zjstatus.wasm" {
|
||||
hide_frame_for_single_pane "true"
|
||||
|
||||
format_left "{mode}#[fg=#89B4FA,bg=#181825,bold] {session}#[bg=#181825] {tabs}"
|
||||
format_right "{command_kubectx}#[fg=#424554,bg=#181825]::{command_kubens}{datetime}"
|
||||
format_space "#[bg=#181825]"
|
||||
|
||||
mode_normal "#[bg=#89B4FA] "
|
||||
mode_tmux "#[bg=#ffc387] "
|
||||
mode_default_to_mode "tmux"
|
||||
|
||||
tab_normal "#[fg=#6C7086,bg=#181825] {index} {name} {fullscreen_indicator}{sync_indicator}{floating_indicator}"
|
||||
tab_active "#[fg=#9399B2,bg=#181825,bold,italic] {index} {name} {fullscreen_indicator}{sync_indicator}{floating_indicator}"
|
||||
tab_fullscreen_indicator "□ "
|
||||
tab_sync_indicator " "
|
||||
tab_floating_indicator " "
|
||||
|
||||
command_kubectx_command "kubectx -c"
|
||||
command_kubectx_format "#[fg=#6C7086,bg=#181825,italic] {stdout}"
|
||||
command_kubectx_interval "2"
|
||||
|
||||
command_kubens_command "kubens -c"
|
||||
command_kubens_format "#[fg=#6C7086,bg=#181825]{stdout} "
|
||||
command_kubens_interval "2"
|
||||
|
||||
datetime "#[fg=#9399B2,bg=#181825] {format} "
|
||||
datetime_format "%A, %d %b %Y %H:%M"
|
||||
datetime_timezone "Asia/Kolkata"
|
||||
}
|
||||
}
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user