62 lines
1.3 KiB
Nix
62 lines
1.3 KiB
Nix
{ pkgs, lib, config, inputs, ... }:
|
|
|
|
{
|
|
# https://devenv.sh/basics/
|
|
# https://devenv.sh/packages/
|
|
packages = [ pkgs.git ];
|
|
|
|
# https://devenv.sh/scripts/
|
|
|
|
enterShell = ''
|
|
git --version
|
|
echo "devenv up : to execute the epq chat application"
|
|
'';
|
|
|
|
# https://devenv.sh/tests/
|
|
enterTest = ''
|
|
echo "Running tests"
|
|
git --version | grep "2.42.0"
|
|
'';
|
|
|
|
# https://devenv.sh/services/
|
|
# services.postgres.enable = true;
|
|
|
|
# https://devenv.sh/languages/
|
|
languages = {
|
|
java = {
|
|
enable = true;
|
|
jdk.package = pkgs.jdk17;
|
|
maven = {
|
|
enable = true;
|
|
};
|
|
};
|
|
};
|
|
|
|
|
|
# https://devenv.sh/pre-commit-hooks/
|
|
pre-commit.hooks.shellcheck.enable = true;
|
|
pre-commit.hooks.commitizen.enable = true;
|
|
|
|
# https://devenv.sh/processes/
|
|
processes = {
|
|
epqchat-dev.exec = "${pkgs.maven}/bin/mvn spring-boot:run";
|
|
};
|
|
services.mysql = {
|
|
enable = true;
|
|
package = pkgs.mariadb;
|
|
initialDatabases = [
|
|
{ name = "epqchat"; }
|
|
];
|
|
ensureUsers = [
|
|
{
|
|
name = "epqchatuser";
|
|
password = "epqlevel3artifact";
|
|
ensurePermissions = {
|
|
"epqchat.*" = "ALL PRIVILEGES";
|
|
"*.*" = "SELECT, LOCK TABLES";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
# See full reference at https://devenv.sh/reference/options/
|
|
}
|