some modularizing and refactoring
This commit is contained in:
50
modules/nixos/system/devpkgs/default.nix
Normal file
50
modules/nixos/system/devpkgs/default.nix
Normal file
@@ -0,0 +1,50 @@
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
inherit (lib) mkIf mkOption types;
|
||||
cfg = config.nixos.system.devpkgs;
|
||||
in {
|
||||
options = {
|
||||
nixos.system.devpkgs = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Enable various packages for development";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Language servers, utilities, and tools
|
||||
gcc
|
||||
rust-analyzer
|
||||
lua-language-server
|
||||
nixd
|
||||
php
|
||||
# php84Packages.php-cs-fixer
|
||||
phpactor
|
||||
python312Packages.python-lsp-server
|
||||
bash-language-server
|
||||
nil
|
||||
nodePackages.vscode-langservers-extracted
|
||||
clang-tools
|
||||
marksman
|
||||
pyright
|
||||
nodePackages_latest.intelephense
|
||||
|
||||
# Formatters
|
||||
alejandra
|
||||
stylua
|
||||
nodePackages_latest.fixjson
|
||||
nodePackages_latest.sql-formatter
|
||||
prettierd
|
||||
shfmt
|
||||
luaformatter
|
||||
black
|
||||
];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user