Browse Source

upstream pub-solar changes from teutat3s (#11)

Co-authored-by: teutat3s <10206665+teutat3s@users.noreply.github.com>
Reviewed-on: https://git.b12f.io/pub-solar/os/pulls/11
Reviewed-by: Benjamin Bädorf <b12f@noreply.example.org>
Co-authored-by: teutat3s <teutates@mailbox.org>
Co-committed-by: teutat3s <teutates@mailbox.org>
core
teutat3s 2 months ago
committed by Benjamin Bädorf
parent
commit
de5d4a223a
  1. 1
      modules/graphical/default.nix
  2. 3
      modules/terminal-life/nvim/default.nix
  3. 84
      modules/terminal-life/nvim/lsp.vim
  4. 2
      modules/terminal-life/nvim/plugins.vim
  5. 2
      profiles/base-user/mimeapps.nix
  6. 1
      profiles/core/default.nix

1
modules/graphical/default.nix

@ -98,6 +98,7 @@ in
flameshot
libnotify
gnome3.adwaita-icon-theme
gnome.eog
gnome3.nautilus
wine

3
modules/terminal-life/nvim/default.nix

@ -86,7 +86,7 @@ in
python-language-server
solargraph
rust-analyzer
ctags
universal-ctags
ccls
rnix-lsp
terraform-ls
@ -111,6 +111,7 @@ in
sonokai
fugitive
vim-rhubarb
vim-gitgutter
vimagit

84
modules/terminal-life/nvim/lsp.vim

@ -16,74 +16,74 @@ lua <<EOF
local nvim_lsp = require('lspconfig')
-- Attach `completion-nvim` to the buffer.
local function lsp_setup()
require('completion').on_attach()
require('completion').on_attach()
end
for lsp_key, lsp_settings in pairs({
'bashls', ------------------------------- Bash
'ccls', --------------------------------- C / C++ / Objective-C
'cssls', -------------------------------- CSS / SCSS / LESS
'dockerls', ----------------------------- Docker
['gopls'] = { --------------------------- Go
['settings'] = {
['gopls'] = {
['analyses'] = {
['unusedparams'] = true,
},
['staticcheck'] = true
},
['settings'] = {
['gopls'] = {
['analyses'] = {
['unusedparams'] = true,
},
['staticcheck'] = true
},
},
},
},
'html', --------------------------------- HTML
['jdtls'] = { --------------------------- Java
['root_dir'] = nvim_lsp.util.root_pattern('.git', 'pom.xml', 'build.xml'),
['init_options'] = {
['jvm_args'] = {['java.format.settings.url'] = vim.fn.stdpath('config')..'/eclipse-formatter.xml'},
['workspace'] = vim.fn.stdpath('cache')..'/java-workspaces'
}
},
['jdtls'] = { --------------------------- Java
['root_dir'] = nvim_lsp.util.root_pattern('.git', 'pom.xml', 'build.xml'),
['init_options'] = {
['jvm_args'] = {['java.format.settings.url'] = vim.fn.stdpath('config')..'/eclipse-formatter.xml'},
['workspace'] = vim.fn.stdpath('cache')..'/java-workspaces'
}
},
'jsonls', ------------------------------- JSON
'phpactor', ----------------------------- PHP
'pyls', --------------------------------- Python
'rnix', --------------------------------- Nix
'solargraph', --------------------------- Ruby
'rust_analyzer', ------------------------ Rust
['sqlls'] = {
['cmd'] = {"$XDG_DATA_HOME/nvm/versions/node/v12.19.0/bin/sql-language-server", "up", "--method", "stdio"}
['cmd'] = {"$XDG_DATA_HOME/nvm/versions/node/v12.19.0/bin/sql-language-server", "up", "--method", "stdio"}
},
['terraformls'] = { --------------------- Terraform
['filetypes'] = { "terraform", "hcl", "tf" }
['filetypes'] = { "terraform", "hcl", "tf" }
},
'tsserver', ----------------------------- Typescript / JavaScript
'angularls', ---------------------------- Angular
'vuels', -------------------------------- Vue
'svelte', ------------------------------- Svelte
['yamlls'] = { -------------------------- YAML
['settings'] = {
['yaml'] = {
['schemas'] = {
['https://json.schemastore.org/github-workflow'] = '.github/workflows/*.{yml,yaml}',
['https://json.schemastore.org/github-action'] = '.github/action.{yml,yaml}',
['https://json.schemastore.org/ansible-stable-2.9'] = 'roles/tasks/*.{yml,yaml}',
['https://json.schemastore.org/drone'] = '*.drone.{yml,yaml}',
}
}
['settings'] = {
['yaml'] = {
['schemas'] = {
['https://json.schemastore.org/github-workflow'] = '.github/workflows/*.{yml,yaml}',
['https://json.schemastore.org/github-action'] = '.github/action.{yml,yaml}',
['https://json.schemastore.org/ansible-stable-2.9'] = 'roles/tasks/*.{yml,yaml}',
['https://json.schemastore.org/drone'] = '*.drone.{yml,yaml}',
}
}
}
}
}) do -- Setup all of the language servers. †
if type(lsp_key) == 'number' then -- Enable the LSP with defaults.
-- The `lsp` is an index in this case.
nvim_lsp[lsp_settings].setup{['on_attach'] = lsp_setup}
else -- Use the LSP's configuration.
local on_attach_setting = lsp_settings.on_attach
lsp_settings.on_attach = function()
lsp_setup()
if on_attach_setting then on_attach_setting() end
end
nvim_lsp[lsp_key].setup(lsp_settings)
end
if type(lsp_key) == 'number' then -- Enable the LSP with defaults.
-- The `lsp` is an index in this case.
nvim_lsp[lsp_settings].setup{['on_attach'] = lsp_setup}
else -- Use the LSP's configuration.
local on_attach_setting = lsp_settings.on_attach
lsp_settings.on_attach = function()
lsp_setup()
if on_attach_setting then on_attach_setting() end
end
nvim_lsp[lsp_key].setup(lsp_settings)
end
end --
EOF

2
modules/terminal-life/nvim/plugins.vim

@ -2,6 +2,8 @@
au! BufNewFile,BufReadPost *.{yaml,yml} set filetype=yaml
autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab
let g:gutentags_file_list_command = 'git ls-files'
" Golang
" Go test shortcut
nmap <Leader>got :GoTest<CR>

2
profiles/base-user/mimeapps.nix

@ -14,7 +14,7 @@
"application/x-extension-xht" = [ "firefox.desktop" ];
"image/jpeg" = [ "viewnior.desktop" "gpicview.desktop" ];
"image/png" = [ "viewnior.desktop" "gpicview.desktop" ];
"text/plain" = [ "mousepad.desktop" ];
"text/plain" = [ "firefox.desktop" ];
"x-scheme-handler/mailto" = [ "userapp-Thunderbird.desktop" ];
"message/rfc822" = [ "userapp-Thunderbird.desktop" ];
"application/pdf" = [ "org.gnome.Evince.desktop" ];

1
profiles/core/default.nix

@ -53,6 +53,7 @@ in
diffutils
findutils
exfat-utils
file
# zippit
zip

Loading…
Cancel
Save