diff --git a/home/emacs/default.nix b/home/emacs/default.nix index d633ec54..60d89f56 100644 --- a/home/emacs/default.nix +++ b/home/emacs/default.nix @@ -3,7 +3,7 @@ pkgs, ... }: { - imports = [../git/default.nix]; + imports = [../git/default.nix ../prog/default.nix]; programs.git.extraConfig.core.editor = "${config.programs.emacs.finalPackage}/bin/emacsclient -c"; programs.emacs = { # Clone emacs config from https://git.xenia.me.uk/xenia/emacs.git @@ -166,25 +166,5 @@ beamer ; }) - - # Linters - shellcheck - - # Formatters - nodePackages.prettier - alejandra - ruff - isort - fprettify - rustfmt - stylua - shfmt - - # LSP Servers - nil - fortls - rust-analyzer - luajitPackages.lua-lsp - python3Packages.jedi-language-server ]; } diff --git a/home/prog/default.nix b/home/prog/default.nix new file mode 100644 index 00000000..cc0c7d91 --- /dev/null +++ b/home/prog/default.nix @@ -0,0 +1,33 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + # Nix + alejandra + nil + + # Python + (python3.withPackages (ps: + with ps; [ + python-lsp-server + python-lsp-ruff + pylsp-mypy + numpy + ])) + ruff + isort + + # Fortran + gfortran + fortls + + # Rust toolchain + cargo + rustc + rustfmt + rust-analyzer + + # Shell and misc + shfmt + shellcheck + nodePackages.prettier + ]; +}