feat: add nvim dap
This commit is contained in:
parent
e501718888
commit
c0f766ea26
15 changed files with 370 additions and 18 deletions
44
flake.lock
generated
44
flake.lock
generated
|
|
@ -253,7 +253,7 @@
|
||||||
},
|
},
|
||||||
"flake-utils_3": {
|
"flake-utils_3": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems_5"
|
"systems": "systems_6"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726560853,
|
"lastModified": 1726560853,
|
||||||
|
|
@ -621,6 +621,32 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprtasking": {
|
||||||
|
"inputs": {
|
||||||
|
"hyprland": [
|
||||||
|
"hyprland"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"hyprtasking",
|
||||||
|
"hyprland",
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"systems": "systems_5"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1737823473,
|
||||||
|
"narHash": "sha256-XhYxMiTEHEJfOv5C2IGby32pg0Qvz+nVynl0IGbjChk=",
|
||||||
|
"owner": "raybbian",
|
||||||
|
"repo": "hyprtasking",
|
||||||
|
"rev": "17940931b59f76ff3b475230648fef261e1e94c8",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "raybbian",
|
||||||
|
"repo": "hyprtasking",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"hyprutils": {
|
"hyprutils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
|
@ -909,6 +935,7 @@
|
||||||
"hyprgrass": "hyprgrass",
|
"hyprgrass": "hyprgrass",
|
||||||
"hyprland": "hyprland",
|
"hyprland": "hyprland",
|
||||||
"hyprland-plugins": "hyprland-plugins",
|
"hyprland-plugins": "hyprland-plugins",
|
||||||
|
"hyprtasking": "hyprtasking",
|
||||||
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
"neovim-nightly-overlay": "neovim-nightly-overlay",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
"nixpkgs": "nixpkgs_3",
|
"nixpkgs": "nixpkgs_3",
|
||||||
|
|
@ -997,6 +1024,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems_5": {
|
"systems_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1689347949,
|
||||||
|
"narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default-linux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"systems_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
|
|
||||||
|
|
@ -44,6 +44,11 @@
|
||||||
inputs.hyprland.follows = "hyprland";
|
inputs.hyprland.follows = "hyprland";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
hyprtasking = {
|
||||||
|
url = "github:raybbian/hyprtasking";
|
||||||
|
inputs.hyprland.follows = "hyprland";
|
||||||
|
};
|
||||||
|
|
||||||
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
neovim-nightly-overlay.url = "github:nix-community/neovim-nightly-overlay";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
font-family = "CaskaydiaCove Nerd Font Mono"
|
font-family = "CaskaydiaCove Nerd Font Mono"
|
||||||
font-size = 16
|
font-size = 15
|
||||||
theme = catppuccin-macchiato
|
theme = catppuccin-macchiato
|
||||||
unfocused-split-opacity = 0.85
|
unfocused-split-opacity = 0.85
|
||||||
|
|
||||||
|
|
@ -14,5 +14,5 @@ mouse-hide-while-typing = true
|
||||||
|
|
||||||
keybind = ctrl+shift+zero=toggle_tab_overview
|
keybind = ctrl+shift+zero=toggle_tab_overview
|
||||||
|
|
||||||
custom-shader = ./shader/mnoise.glsl
|
# custom-shader = ./shader/mnoise.glsl
|
||||||
custom-shader-animation = always
|
# custom-shader-animation = always
|
||||||
|
|
|
||||||
|
|
@ -20,5 +20,6 @@ if package.config:sub(1, 1) == "\\" then
|
||||||
vim.o.shell = GetAvailableWindowsShell()
|
vim.o.shell = GetAvailableWindowsShell()
|
||||||
end
|
end
|
||||||
|
|
||||||
|
vim.g.lazyvim_python_lsp = "pyright"
|
||||||
vim.g.lazyvim_python_ruff = "ruff"
|
vim.g.lazyvim_python_ruff = "ruff"
|
||||||
vim.g.lazyvim_eslint_auto_format = true
|
vim.g.lazyvim_eslint_auto_format = true
|
||||||
|
|
|
||||||
270
home/config/nvim/lua/plugins/typescript.lua
Normal file
270
home/config/nvim/lua/plugins/typescript.lua
Normal file
|
|
@ -0,0 +1,270 @@
|
||||||
|
return {
|
||||||
|
recommended = function()
|
||||||
|
return LazyVim.extras.wants({
|
||||||
|
ft = {
|
||||||
|
"javascript",
|
||||||
|
"javascriptreact",
|
||||||
|
"javascript.jsx",
|
||||||
|
"typescript",
|
||||||
|
"typescriptreact",
|
||||||
|
"typescript.tsx",
|
||||||
|
},
|
||||||
|
root = { "tsconfig.json", "package.json", "jsconfig.json" },
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
|
||||||
|
-- correctly setup lspconfig
|
||||||
|
{
|
||||||
|
"neovim/nvim-lspconfig",
|
||||||
|
opts = {
|
||||||
|
-- make sure mason installs the server
|
||||||
|
servers = {
|
||||||
|
--- @deprecated -- tsserver renamed to ts_ls but not yet released, so keep this for now
|
||||||
|
--- the proper approach is to check the nvim-lspconfig release version when it's released to determine the server name dynamically
|
||||||
|
tsserver = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
ts_ls = {
|
||||||
|
enabled = false,
|
||||||
|
},
|
||||||
|
vtsls = {
|
||||||
|
-- explicitly add default filetypes, so that we can extend
|
||||||
|
-- them in related extras
|
||||||
|
filetypes = {
|
||||||
|
"javascript",
|
||||||
|
"javascriptreact",
|
||||||
|
"javascript.jsx",
|
||||||
|
"typescript",
|
||||||
|
"typescriptreact",
|
||||||
|
"typescript.tsx",
|
||||||
|
},
|
||||||
|
settings = {
|
||||||
|
complete_function_calls = true,
|
||||||
|
vtsls = {
|
||||||
|
enableMoveToFileCodeAction = true,
|
||||||
|
autoUseWorkspaceTsdk = true,
|
||||||
|
experimental = {
|
||||||
|
maxInlayHintLength = 30,
|
||||||
|
completion = {
|
||||||
|
enableServerSideFuzzyMatch = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
typescript = {
|
||||||
|
updateImportsOnFileMove = { enabled = "always" },
|
||||||
|
suggest = {
|
||||||
|
completeFunctionCalls = true,
|
||||||
|
},
|
||||||
|
inlayHints = {
|
||||||
|
enumMemberValues = { enabled = true },
|
||||||
|
functionLikeReturnTypes = { enabled = true },
|
||||||
|
parameterNames = { enabled = "literals" },
|
||||||
|
parameterTypes = { enabled = true },
|
||||||
|
propertyDeclarationTypes = { enabled = true },
|
||||||
|
variableTypes = { enabled = false },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keys = {
|
||||||
|
{
|
||||||
|
"gD",
|
||||||
|
function()
|
||||||
|
local params = vim.lsp.util.make_position_params()
|
||||||
|
LazyVim.lsp.execute({
|
||||||
|
command = "typescript.goToSourceDefinition",
|
||||||
|
arguments = { params.textDocument.uri, params.position },
|
||||||
|
open = true,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
desc = "Goto Source Definition",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"gR",
|
||||||
|
function()
|
||||||
|
LazyVim.lsp.execute({
|
||||||
|
command = "typescript.findAllFileReferences",
|
||||||
|
arguments = { vim.uri_from_bufnr(0) },
|
||||||
|
open = true,
|
||||||
|
})
|
||||||
|
end,
|
||||||
|
desc = "File References",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>co",
|
||||||
|
LazyVim.lsp.action["source.organizeImports"],
|
||||||
|
desc = "Organize Imports",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cM",
|
||||||
|
LazyVim.lsp.action["source.addMissingImports.ts"],
|
||||||
|
desc = "Add missing imports",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cu",
|
||||||
|
LazyVim.lsp.action["source.removeUnused.ts"],
|
||||||
|
desc = "Remove unused imports",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cD",
|
||||||
|
LazyVim.lsp.action["source.fixAll.ts"],
|
||||||
|
desc = "Fix all diagnostics",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"<leader>cV",
|
||||||
|
function()
|
||||||
|
LazyVim.lsp.execute({ command = "typescript.selectTypeScriptVersion" })
|
||||||
|
end,
|
||||||
|
desc = "Select TS workspace version",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
setup = {
|
||||||
|
--- @deprecated -- tsserver renamed to ts_ls but not yet released, so keep this for now
|
||||||
|
--- the proper approach is to check the nvim-lspconfig release version when it's released to determine the server name dynamically
|
||||||
|
tsserver = function()
|
||||||
|
-- disable tsserver
|
||||||
|
return true
|
||||||
|
end,
|
||||||
|
ts_ls = function()
|
||||||
|
-- disable tsserver
|
||||||
|
return true
|
||||||
|
end,
|
||||||
|
vtsls = function(_, opts)
|
||||||
|
LazyVim.lsp.on_attach(function(client, buffer)
|
||||||
|
client.commands["_typescript.moveToFileRefactoring"] = function(command, ctx)
|
||||||
|
---@type string, string, lsp.Range
|
||||||
|
local action, uri, range = unpack(command.arguments)
|
||||||
|
|
||||||
|
local function move(newf)
|
||||||
|
client.request("workspace/executeCommand", {
|
||||||
|
command = command.command,
|
||||||
|
arguments = { action, uri, range, newf },
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
|
local fname = vim.uri_to_fname(uri)
|
||||||
|
client.request("workspace/executeCommand", {
|
||||||
|
command = "typescript.tsserverRequest",
|
||||||
|
arguments = {
|
||||||
|
"getMoveToRefactoringFileSuggestions",
|
||||||
|
{
|
||||||
|
file = fname,
|
||||||
|
startLine = range.start.line + 1,
|
||||||
|
startOffset = range.start.character + 1,
|
||||||
|
endLine = range["end"].line + 1,
|
||||||
|
endOffset = range["end"].character + 1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}, function(_, result)
|
||||||
|
---@type string[]
|
||||||
|
local files = result.body.files
|
||||||
|
table.insert(files, 1, "Enter new path...")
|
||||||
|
vim.ui.select(files, {
|
||||||
|
prompt = "Select move destination:",
|
||||||
|
format_item = function(f)
|
||||||
|
return vim.fn.fnamemodify(f, ":~:.")
|
||||||
|
end,
|
||||||
|
}, function(f)
|
||||||
|
if f and f:find("^Enter new path") then
|
||||||
|
vim.ui.input({
|
||||||
|
prompt = "Enter move destination:",
|
||||||
|
default = vim.fn.fnamemodify(fname, ":h") .. "/",
|
||||||
|
completion = "file",
|
||||||
|
}, function(newf)
|
||||||
|
return newf and move(newf)
|
||||||
|
end)
|
||||||
|
elseif f then
|
||||||
|
move(f)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end, "vtsls")
|
||||||
|
-- copy typescript settings to javascript
|
||||||
|
opts.settings.javascript =
|
||||||
|
vim.tbl_deep_extend("force", {}, opts.settings.typescript, opts.settings.javascript or {})
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"mfussenegger/nvim-dap",
|
||||||
|
optional = true,
|
||||||
|
opts = function()
|
||||||
|
local dap = require("dap")
|
||||||
|
if not dap.adapters["pwa-node"] then
|
||||||
|
require("dap").adapters["pwa-node"] = {
|
||||||
|
type = "server",
|
||||||
|
host = "localhost",
|
||||||
|
port = "${port}",
|
||||||
|
executable = {
|
||||||
|
command = "js-debug",
|
||||||
|
args = {
|
||||||
|
"${port}",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
if not dap.adapters["node"] then
|
||||||
|
dap.adapters["node"] = function(cb, config)
|
||||||
|
if config.type == "node" then
|
||||||
|
config.type = "pwa-node"
|
||||||
|
end
|
||||||
|
local nativeAdapter = dap.adapters["pwa-node"]
|
||||||
|
if type(nativeAdapter) == "function" then
|
||||||
|
nativeAdapter(cb, config)
|
||||||
|
else
|
||||||
|
cb(nativeAdapter)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
local js_filetypes = { "typescript", "javascript", "typescriptreact", "javascriptreact" }
|
||||||
|
|
||||||
|
local vscode = require("dap.ext.vscode")
|
||||||
|
vscode.type_to_filetypes["node"] = js_filetypes
|
||||||
|
vscode.type_to_filetypes["pwa-node"] = js_filetypes
|
||||||
|
|
||||||
|
for _, language in ipairs(js_filetypes) do
|
||||||
|
if not dap.configurations[language] then
|
||||||
|
dap.configurations[language] = {
|
||||||
|
{
|
||||||
|
type = "pwa-node",
|
||||||
|
request = "launch",
|
||||||
|
name = "Launch file",
|
||||||
|
program = "${file}",
|
||||||
|
cwd = "${workspaceFolder}",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type = "pwa-node",
|
||||||
|
request = "attach",
|
||||||
|
name = "Attach",
|
||||||
|
processId = require("dap.utils").pick_process,
|
||||||
|
cwd = "${workspaceFolder}",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Filetype icons
|
||||||
|
{
|
||||||
|
"echasnovski/mini.icons",
|
||||||
|
opts = {
|
||||||
|
file = {
|
||||||
|
[".eslintrc.js"] = { glyph = "", hl = "MiniIconsYellow" },
|
||||||
|
[".node-version"] = { glyph = "", hl = "MiniIconsGreen" },
|
||||||
|
[".prettierrc"] = { glyph = "", hl = "MiniIconsPurple" },
|
||||||
|
[".yarnrc.yml"] = { glyph = "", hl = "MiniIconsBlue" },
|
||||||
|
["eslint.config.js"] = { glyph = "", hl = "MiniIconsYellow" },
|
||||||
|
["package.json"] = { glyph = "", hl = "MiniIconsGreen" },
|
||||||
|
["tsconfig.json"] = { glyph = "", hl = "MiniIconsAzure" },
|
||||||
|
["tsconfig.build.json"] = { glyph = "", hl = "MiniIconsAzure" },
|
||||||
|
["yarn.lock"] = { glyph = "", hl = "MiniIconsBlue" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
@ -43,9 +43,12 @@ in
|
||||||
|
|
||||||
xdg.mimeApps = {
|
xdg.mimeApps = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
associations.added = {
|
||||||
|
"application/pdf" = [ browser ];
|
||||||
|
};
|
||||||
defaultApplications = {
|
defaultApplications = {
|
||||||
"text/html" = browser;
|
"text/html" = browser;
|
||||||
"application/pdf" = browser;
|
"application/pdf" = [ browser ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -63,9 +63,9 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
"Kvantum/Catppuccin-Macchiato-Lavender/Catppuccin-Macchiato-Blue/Catppuccin-Macchiato-Blue.kvconfig".source =
|
"Kvantum/catppuccin-macchiato-Lavender/catppuccin-macchiato-lavender/catppuccin-macchiato-lavender.kvconfig".source =
|
||||||
"${pkgs.catppuccin-kvantum}/share/Kvantum/Catppuccin-Macchiato-Lavender/Cattpuccin-Macchiato-Blue.kvconfig";
|
"${pkgs.catppuccin-kvantum}/share/Kvantum/catppuccin-macchiato-lavender/cattpuccin-macchiato-lavender.kvconfig";
|
||||||
"Kvantum/Catppuccin-Macchiato-Lavender/Catppuccin-Macchiato-Blue/Catppuccin-Macchiato-Blue.svg".source =
|
"Kvantum/catppuccin-macchiato-Lavender/catppuccin-macchiato-lavender/catppuccin-macchiato-lavender.svg".source =
|
||||||
"${pkgs.catppuccin-kvantum}/share/Kvantum/Catppuccin-Macchiato-Lavender/Cattpuccin-Macchiato-Blue.svg";
|
"${pkgs.catppuccin-kvantum}/share/Kvantum/catppuccin-macchiato-lavender/cattpuccin-macchiato-lavender.svg";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -73,6 +73,8 @@ in
|
||||||
'',XF86MonBrightnessUp, exec, brightnessctl set ${brightnessStep}%+''
|
'',XF86MonBrightnessUp, exec, brightnessctl set ${brightnessStep}%+''
|
||||||
'',XF86AudioPrev, exec, playerctl previous''
|
'',XF86AudioPrev, exec, playerctl previous''
|
||||||
'',XF86AudioNext, exec, playerctl next''
|
'',XF86AudioNext, exec, playerctl next''
|
||||||
|
''${mainMod} CTRL, COMMA, exec, playerctl previous''
|
||||||
|
''${mainMod} CTRL, PERIOD, exec, playerctl next''
|
||||||
'',XF86AudioPlay, exec, playerctl play-pause''
|
'',XF86AudioPlay, exec, playerctl play-pause''
|
||||||
'',XF86AudioStop, exec, playerctl stop''
|
'',XF86AudioStop, exec, playerctl stop''
|
||||||
'',XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle''
|
'',XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle''
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,8 @@
|
||||||
follow_mouse = 1;
|
follow_mouse = 1;
|
||||||
accel_profile = "flat";
|
accel_profile = "flat";
|
||||||
|
|
||||||
|
kb_options = "caps:swapescape";
|
||||||
|
|
||||||
touchpad = {
|
touchpad = {
|
||||||
natural_scroll = true;
|
natural_scroll = true;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -69,6 +69,7 @@ in
|
||||||
])
|
])
|
||||||
++ [
|
++ [
|
||||||
inputs.hyprgrass.packages.${system}.default
|
inputs.hyprgrass.packages.${system}.default
|
||||||
|
# inputs.hyprtasking.packages.${system}.hyprtasking
|
||||||
];
|
];
|
||||||
|
|
||||||
settings =
|
settings =
|
||||||
|
|
|
||||||
6
home/user/music-production.nix
Normal file
6
home/user/music-production.nix
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
bitwig-studio
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
@ -16,7 +16,7 @@
|
||||||
package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default;
|
package = inputs.neovim-nightly-overlay.packages.${pkgs.system}.default;
|
||||||
withPython3 = true;
|
withPython3 = true;
|
||||||
extraPython3Packages = (
|
extraPython3Packages = (
|
||||||
plugins: with plugins; [
|
ps: with ps; [
|
||||||
debugpy
|
debugpy
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
|
|
@ -51,6 +51,7 @@
|
||||||
clang-tools
|
clang-tools
|
||||||
taplo
|
taplo
|
||||||
zls
|
zls
|
||||||
|
vscode-js-debug
|
||||||
];
|
];
|
||||||
|
|
||||||
plugins = with pkgs.vimPlugins; [
|
plugins = with pkgs.vimPlugins; [
|
||||||
|
|
@ -215,7 +216,7 @@
|
||||||
{ import = "lazyvim.plugins.extras.lang.omnisharp" },
|
{ import = "lazyvim.plugins.extras.lang.omnisharp" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.clangd" },
|
{ import = "lazyvim.plugins.extras.lang.clangd" },
|
||||||
-- { import = "lazyvim.plugins.extras.lang.vue" },
|
-- { import = "lazyvim.plugins.extras.lang.vue" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.typescript" },
|
-- { import = "lazyvim.plugins.extras.lang.typescript" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.python" },
|
{ import = "lazyvim.plugins.extras.lang.python" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.rust" },
|
{ import = "lazyvim.plugins.extras.lang.rust" },
|
||||||
{ import = "lazyvim.plugins.extras.lang.tailwind" },
|
{ import = "lazyvim.plugins.extras.lang.tailwind" },
|
||||||
|
|
@ -236,7 +237,7 @@
|
||||||
{ import = "lazyvim.plugins.extras.editor.refactoring" },
|
{ import = "lazyvim.plugins.extras.editor.refactoring" },
|
||||||
{ import = "lazyvim.plugins.extras.editor.harpoon2" },
|
{ import = "lazyvim.plugins.extras.editor.harpoon2" },
|
||||||
|
|
||||||
-- uncomment to import/override with your plugins
|
-- import/override your plugins
|
||||||
{ import = "plugins" },
|
{ import = "plugins" },
|
||||||
|
|
||||||
-- Vue & Typescript
|
-- Vue & Typescript
|
||||||
|
|
@ -256,6 +257,16 @@
|
||||||
end
|
end
|
||||||
},
|
},
|
||||||
|
|
||||||
|
-- Python debugpy
|
||||||
|
{
|
||||||
|
{
|
||||||
|
"mfussenegger/nvim-dap-python",
|
||||||
|
config = function ()
|
||||||
|
require("dap-python").setup("python3")
|
||||||
|
end
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
-- Nix
|
-- Nix
|
||||||
{
|
{
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
|
|
@ -292,10 +303,6 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
-- disable DAP
|
|
||||||
{ "mfussenegger/nvim-dap-python", enabled = false },
|
|
||||||
{ "mfussenegger/nvim-dap", enabled = false },
|
|
||||||
|
|
||||||
-- disable mason.nvim, use config.extraPackages
|
-- disable mason.nvim, use config.extraPackages
|
||||||
{ "williamboman/mason-lspconfig.nvim", enabled = false },
|
{ "williamboman/mason-lspconfig.nvim", enabled = false },
|
||||||
{ "williamboman/mason.nvim", enabled = false },
|
{ "williamboman/mason.nvim", enabled = false },
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,16 @@
|
||||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||||
boot.loader.systemd-boot.enable = true;
|
boot.loader.systemd-boot.enable = true;
|
||||||
|
|
||||||
|
fileSystems."/mnt/storage" = {
|
||||||
|
device = "router.dn:/mnt/storage";
|
||||||
|
fsType = "nfs";
|
||||||
|
options = [
|
||||||
|
"x-systemd.automount"
|
||||||
|
"noauto"
|
||||||
|
"x-systemd.idle-timeout=600"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
# Enable F keys in some wireless keyboard (Ex. neo65)
|
# Enable F keys in some wireless keyboard (Ex. neo65)
|
||||||
boot.extraModprobeConfig = ''
|
boot.extraModprobeConfig = ''
|
||||||
options hid_apple fnmode=2
|
options hid_apple fnmode=2
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,10 @@ in
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
users."${username}" = {
|
users."${username}" = {
|
||||||
imports = [ ../../../home ];
|
imports = [
|
||||||
|
../../../home
|
||||||
|
../../../home/user/music-production.nix
|
||||||
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ lib.checkListOfEnum "Nvidia Prime Mode" validModes [ nvidia-mode ] {
|
||||||
|
|
||||||
nvidia.nvidiaSettings = true;
|
nvidia.nvidiaSettings = true;
|
||||||
nvidia.dynamicBoost.enable = true;
|
nvidia.dynamicBoost.enable = true;
|
||||||
nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable;
|
nvidia.package = config.boot.kernelPackages.nvidiaPackages.beta;
|
||||||
|
|
||||||
nvidia.prime =
|
nvidia.prime =
|
||||||
(
|
(
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue