diff --git a/home/default.nix b/home/default.nix index d1abc63..3607cdd 100644 --- a/home/default.nix +++ b/home/default.nix @@ -10,9 +10,10 @@ ../programs/shell/default.nix ../programs/emacs/default.nix ../programs/firefox/default.nix - ../programs/prog/default.nix ../programs/cava/default.nix ../programs/obs/default.nix + ../programs/python/default.nix + ../programs/lua/default.nix # Services ../services/email/work.nix # TODO combine again at some point ../services/password-store/default.nix diff --git a/programs/emacs/default.nix b/programs/emacs/default.nix index 068cf67..ad430ce 100644 --- a/programs/emacs/default.nix +++ b/programs/emacs/default.nix @@ -78,8 +78,8 @@ treesit-auto flymake-popon flymake-collection - flymake-eslint flymake-shellcheck + flymake-yamllint apheleia direnv rainbow-delimiters @@ -165,5 +165,25 @@ (texlive.combine { inherit (pkgs.texlive) scheme-medium dvisvgm dvipng wrapfig amsmath ulem hyperref capt-of; }) + + # Development tools + # Python is a special case, installed separately + ## Language servers + nil + fortls + lua-language-server + nodePackages.bash-language-server + + ## Linters + shellcheck + yamllint + + ## Formatters + alejandra + shfmt + black + isort + stylua + nodePackages.prettier ]; } diff --git a/programs/lua/default.nix b/programs/lua/default.nix new file mode 100644 index 0000000..32fb3f6 --- /dev/null +++ b/programs/lua/default.nix @@ -0,0 +1,8 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + (lua.withPackages (ps: [ + (ps.callPackage ./luarocks/scilua.nix {}) + (ps.callPackage ./luarocks/graph-toolkit.nix {}) + ])) + ]; +} diff --git a/programs/prog/luarocks/graph-toolkit.nix b/programs/lua/luarocks/graph-toolkit.nix similarity index 100% rename from programs/prog/luarocks/graph-toolkit.nix rename to programs/lua/luarocks/graph-toolkit.nix diff --git a/programs/prog/luarocks/scilua.nix b/programs/lua/luarocks/scilua.nix similarity index 100% rename from programs/prog/luarocks/scilua.nix rename to programs/lua/luarocks/scilua.nix diff --git a/programs/prog/luarocks/xsys.nix b/programs/lua/luarocks/xsys.nix similarity index 100% rename from programs/prog/luarocks/xsys.nix rename to programs/lua/luarocks/xsys.nix diff --git a/programs/prog/default.nix b/programs/prog/default.nix deleted file mode 100644 index 399906c..0000000 --- a/programs/prog/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{pkgs, ...}: { - xdg.configFile = { - "ruff/pyproject.toml".source = ./ruff.toml; - "pypoetry/config.toml".source = ./pypoetry.toml; - }; - home.packages = with pkgs; [ - # Nix - nil - alejandra - - # Shell - shfmt - shellcheck - nodePackages.prettier - - # Python - (python3.withPackages - (ps: with ps; [python-lsp-server flake8 mypy])) - black - isort - - # FORTRAN - fortls - ]; -} diff --git a/programs/python/default.nix b/programs/python/default.nix new file mode 100644 index 0000000..b22fc50 --- /dev/null +++ b/programs/python/default.nix @@ -0,0 +1,20 @@ +{pkgs, ...}: { + xdg.configFile = { + "ruff/pyproject.toml".source = ./ruff.toml; + "pypoetry/config.toml".source = ./pypoetry.toml; + }; + home.packages = with pkgs; [ + poetry + (python3.withPackages + (ps: + with ps; [ + python-lsp-server + flake8 + mypy + numpy + scipy + xarray + matplotlib + ])) + ]; +} diff --git a/programs/prog/pypoetry.toml b/programs/python/pypoetry.toml similarity index 100% rename from programs/prog/pypoetry.toml rename to programs/python/pypoetry.toml diff --git a/programs/prog/ruff.toml b/programs/python/ruff.toml similarity index 100% rename from programs/prog/ruff.toml rename to programs/python/ruff.toml