devenv tweaks

This commit is contained in:
2026-06-02 12:34:32 +02:00
parent df0e78d9ba
commit d33b9c5467
39 changed files with 42 additions and 32 deletions

View File

@@ -62,6 +62,7 @@ const render = createRenderer(z.object({
name: z.string(),
goprefix: z.string(),
frontend: z.string(),
mobile: z.string()
})
}))
const destDir = path.join("./", project.name);

View File

@@ -1,10 +1,4 @@
<@if(neq(context.project.frontend,"none"))>
bundev = {
exec = "bun dev";
cwd = "./apps/web";
after= ["devenv:processes:air@started"];
};
<@endif>{ pkgs, lib, config, inputs, ... }:
{ pkgs, lib, config, inputs, ... }:
{
packages = [
@@ -19,9 +13,6 @@
pkgs.protoc-gen-connect-go
pkgs.protoc-gen-es
pkgs.cobra-cli
<@if(eq(context.project.mobile,"expo"))>
pkgs.glib
<@endif>
];
<@if(eq(context.project.mobile,"expo"))>
android = {
@@ -53,47 +44,65 @@
}
];
};
<@if(eq(context.project.mobile,"expo"))>
enterShell = ''
export LD_LIBRARY_PATH=$ANDROID_HOME/emulator/lib64:$LD_LIBRARY_PATH
scripts.create-avd.exec = ''
if [ ! -f .avd-created ]; then
avdmanager create avd
-n "Pixel_5_API34"
-k "system-images;android-34;google_apis_playstore;x86_64"
-d "pixel_5"
fi
'';
tasks.'<@var(context.project.name)>:create-avd'.exec = ''
avdmanager create avd
-n "Pixel_5_API34"
-k "system-images;android-34;google_apis_playstore;x86_64"
-d "pixel_5"
'';
tasks.'<@var(context.project.name)>:run-emulator' = {
exec = "emulator -avd Pixel_5_API34";
after = [ "<@var(context.project.name)>:create-avd" ]
};
<@endif>
processes = {
<@if(neq(context.project.frontend,"none"))>
bundev = {
exec = "bun dev";
cwd = "./apps/web";
after= ["devenv:processes:air@started"];
};
<@endif>
air = {
exec = "air";
cwd = "./services/api";
after = ["devenv:processes:postgres"];
};
protowatcher = {
exec = "watchexec -r -e proto buf generate";
exec = "buf generate";
cwd = "./packages/proto";
watch = {
paths = [ ./ ];
extensions = [ "proto" ];
};
after= ["devenv:processes:air@started"];
};
protojswatcher = {
exec = "watchexec -e js,ts -w ./packages/rpc/src -r bun run ./scripts/gen-rpc-index.ts";
cwd = "./";
after= ["devenv:processes:protowatcher@started"];
exec = "bun run ./scripts/gen-rpc-index.ts";
cwd = "./packages/rpc/src";
watch = {
paths = [ ./ ];
extensions = ["js","ts"];
};
after= ["devenv:processes:protowatcher@after"];
};
<@if(eq(context.project.mobile,"expo"))>
createavd = {
exec = "create-avd"
};
emulator = {
exec = "emulator -avd Pixel_5_API34"
after = ["devenv:processes:createavd@after"]
};
bundev = {
exec = "bunx expo run:android";
cwd = "./apps/mobile";
after= ["devenv:processes:emulator@started"];
};
<@endif>
sqlwatcher = {
exec = "watchexec -w ./db/migrations -w ./db/query -r -e sql sqlc generate";
cwd = "./services/api";
after= ["devenv:processes:air@started"];
};
<@if(eq(context.project.mobile,"expo"))>
emulator = {
exec
}
<@endif>
};
}