77 lines
1.6 KiB
Nix
77 lines
1.6 KiB
Nix
{ pkgs, lib, config, inputs, ... }:
|
|
|
|
{
|
|
# https://devenv.sh/basics/
|
|
env.GREET = "devenv";
|
|
|
|
# https://devenv.sh/packages/
|
|
packages = [
|
|
pkgs.git
|
|
pkgs.nodejs_20
|
|
pkgs.nodePackages.typescript
|
|
pkgs.nodePackages.ts-node
|
|
pkgs.ripgrep
|
|
];
|
|
|
|
# https://devenv.sh/languages/
|
|
languages.go.enable = true;
|
|
languages.python = {
|
|
enable = true;
|
|
package = pkgs.python311;
|
|
venv.enable = true;
|
|
venv.requirements = ''
|
|
# Add Python requirements here
|
|
'';
|
|
};
|
|
languages.rust.enable = true;
|
|
languages.dotnet.enable = true;
|
|
languages.typescript.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
|
|
echo "Available tools:"
|
|
git --version
|
|
go version
|
|
python --version
|
|
node --version
|
|
tsc --version
|
|
rustc --version
|
|
dotnet --version
|
|
rg --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}"
|
|
go version
|
|
python --version
|
|
node --version
|
|
rustc --version
|
|
dotnet --version
|
|
rg --version
|
|
'';
|
|
|
|
# https://devenv.sh/git-hooks/
|
|
# git-hooks.hooks.shellcheck.enable = true;
|
|
|
|
# See full reference at https://devenv.sh/reference/options/
|
|
}
|