153 lines
2.6 KiB
Nix
153 lines
2.6 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
options,
|
|
...
|
|
}:
|
|
{
|
|
options.mods = {
|
|
coding = {
|
|
enable = lib.mkOption {
|
|
default = true;
|
|
example = false;
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Enables coding packages.
|
|
'';
|
|
};
|
|
dashvim = lib.mkOption {
|
|
default = true;
|
|
example = false;
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Enables dashvim package.
|
|
'';
|
|
};
|
|
jetbrains = lib.mkOption {
|
|
default = false;
|
|
example = true;
|
|
type = lib.types.bool;
|
|
description = ''
|
|
Enables jetbrains toolbox.
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf config.mods.coding.enable (
|
|
lib.optionalAttrs (options ? home.packages) {
|
|
programs.dashvim = lib.mkIf config.mods.coding.dashvim {
|
|
enable = true;
|
|
colorscheme = config.mods.stylix.colorscheme;
|
|
};
|
|
home.packages = with pkgs; [
|
|
(lib.mkIf config.mods.coding.jetbrains jetbrains-toolbox)
|
|
#basics
|
|
gitui
|
|
gcc
|
|
meson
|
|
ninja
|
|
tree-sitter
|
|
unzip
|
|
pkg-config
|
|
sqlite
|
|
plantuml
|
|
d-spy
|
|
|
|
# cpp
|
|
bear
|
|
clang-tools
|
|
|
|
#sql
|
|
nodePackages.sql-formatter
|
|
sqls
|
|
|
|
#assembly
|
|
asm-lsp
|
|
|
|
#yaml
|
|
yamlfmt
|
|
yamllint
|
|
yaml-language-server
|
|
|
|
#markdown
|
|
marksman
|
|
mdformat
|
|
|
|
#bash
|
|
bash-language-server
|
|
shfmt
|
|
|
|
#fsharp
|
|
fsharp
|
|
fsautocomplete
|
|
|
|
#haskell
|
|
haskellPackages.cabal-install
|
|
ghc
|
|
haskellPackages.haskell-language-server
|
|
|
|
#html
|
|
# html-tidy
|
|
|
|
#json
|
|
jq
|
|
|
|
#css
|
|
tailwindcss
|
|
tailwindcss-language-server
|
|
|
|
#editors
|
|
neovide
|
|
##fallback
|
|
vscodium
|
|
|
|
#rust
|
|
rustup
|
|
|
|
#python
|
|
python3
|
|
python312Packages.python-lsp-server
|
|
python312Packages.python-lsp-ruff
|
|
python312Packages.python-lsp-black
|
|
|
|
#ts/js
|
|
nodejs_20
|
|
deno
|
|
typescript
|
|
nodePackages.typescript-language-server
|
|
nodePackages.prettier
|
|
|
|
#go
|
|
go
|
|
gopls
|
|
|
|
#typst
|
|
typst
|
|
tinymist
|
|
ltex-ls
|
|
|
|
#java
|
|
gradle
|
|
maven
|
|
jdt-language-server
|
|
temurin-jre-bin
|
|
|
|
#.!
|
|
dotnet-sdk_8
|
|
omnisharp-roslyn
|
|
csharpier
|
|
netcoredbg
|
|
|
|
#zig
|
|
zig
|
|
zls
|
|
|
|
tmux
|
|
tmate
|
|
];
|
|
|
|
}
|
|
);
|
|
}
|