81 lines
1.7 KiB
Nix
81 lines
1.7 KiB
Nix
{
|
|
pkgs,
|
|
lib,
|
|
config,
|
|
inputs,
|
|
...
|
|
}: let
|
|
nsrc = pkgs.fetchFromGitHub {
|
|
owner = "elm-tooling";
|
|
repo = "elm-language-server";
|
|
rev = "0dc4076180fe7e758bed267a84911cc202011a13";
|
|
sha256 = "1xys9a468fy1vxlby8pmvnpv0kg5hr4956mdp2kclvs55k4j9y43";
|
|
};
|
|
elm-lsp =
|
|
lib.overrideDerivation pkgs.elmPackages.elm-language-server
|
|
(drv: {
|
|
src = nsrc;
|
|
});
|
|
in {
|
|
# https://devenv.sh/basics/
|
|
env.GREET = "devenv";
|
|
|
|
# https://devenv.sh/packages/
|
|
packages = with pkgs; [
|
|
sqlite
|
|
nodePackages.typescript-language-server
|
|
nodePackages.prettier
|
|
elm2nix
|
|
elmPackages.elm
|
|
elmPackages.elm-format
|
|
elmPackages.elm-review
|
|
elmPackages.elm-test-rs
|
|
elmPackages.elm-land
|
|
elm-lsp
|
|
# elmPackages.lamdera # lol
|
|
];
|
|
|
|
# https://devenv.sh/languages/
|
|
# languages.rust.enable = true;
|
|
languages = {
|
|
# elm.enable = true;
|
|
javascript = {
|
|
enable = true;
|
|
bun.enable = true;
|
|
};
|
|
};
|
|
|
|
# https://devenv.sh/processes/
|
|
# processes.cargo-watch.exec = "cargo-watch";
|
|
|
|
# https://devenv.sh/services/
|
|
# services.postgres.enable = true;
|
|
|
|
# https://devenv.sh/scripts/
|
|
scripts.hello.exec = ''
|
|
echo hello from $GREET
|
|
'';
|
|
|
|
enterShell = ''
|
|
hello
|
|
git --version
|
|
'';
|
|
|
|
# https://devenv.sh/tasks/
|
|
# tasks = {
|
|
# "myproj:setup".exec = "mytool build";
|
|
# "devenv:enterShell".after = [ "myproj:setup" ];
|
|
# };
|
|
|
|
# https://devenv.sh/tests/
|
|
enterTest = ''
|
|
echo "Running tests"
|
|
git --version | grep --color=auto "${pkgs.git.version}"
|
|
'';
|
|
|
|
# https://devenv.sh/pre-commit-hooks/
|
|
# pre-commit.hooks.shellcheck.enable = true;
|
|
|
|
# See full reference at https://devenv.sh/reference/options/
|
|
}
|