Skip to content

Commit dd625f9

Browse files
MichaelGHSegclaude
andcommitted
Add devbox development environment
Adds devbox.json with JDK 11, Maven, and jq so contributors can get a working environment with a single `devbox shell`. Exposes build, test, check, and release as devbox run scripts mirroring the existing Makefile. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 2fc9f1c commit dd625f9

2 files changed

Lines changed: 221 additions & 0 deletions

File tree

devbox.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"$schema": "https://raw.githubusercontent.com/jetify-com/devbox/0.14.2/.schema/devbox.schema.json",
3+
"packages": {
4+
"jdk11": "latest",
5+
"maven": "latest",
6+
"jq": "latest"
7+
},
8+
"shell": {
9+
"init_hook": [
10+
"export PROJECT_ROOT=\"$(git rev-parse --show-toplevel 2>/dev/null || echo $DEVBOX_PROJECT_ROOT)\""
11+
],
12+
"scripts": {
13+
"install": ["mvn install"],
14+
"build": ["mvn package -B"],
15+
"test": ["mvn test"],
16+
"check": ["mvn spotless:check animal-sniffer:check test verify"],
17+
"release": ["mvn deploy"]
18+
}
19+
}
20+
}

devbox.lock

Lines changed: 201 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,201 @@
1+
{
2+
"lockfile_version": "1",
3+
"packages": {
4+
"github:NixOS/nixpkgs/nixpkgs-unstable": {
5+
"last_modified": "2026-05-06T02:58:03Z",
6+
"resolved": "github:NixOS/nixpkgs/ed67bc86e84e51d4a88e73c7fd36006dc876476f?lastModified=1778036283&narHash=sha256-62EWg6lI0qyzm7oAx5cAnGkLutvJsRBe0KkEW2JDZCE%3D"
7+
},
8+
"jdk11@latest": {
9+
"last_modified": "2025-10-22T20:59:19Z",
10+
"resolved": "github:NixOS/nixpkgs/01b6809f7f9d1183a2b3e081f0a1e6f8f415cb09#jdk11",
11+
"source": "devbox-search",
12+
"version": "11.0.24",
13+
"systems": {
14+
"aarch64-darwin": {
15+
"outputs": [
16+
{
17+
"name": "out",
18+
"path": "/nix/store/37hfzzxsxbvkb35y1v9hfkw802l6j3xq-zulu-ca-jdk-11.0.24",
19+
"default": true
20+
}
21+
],
22+
"store_path": "/nix/store/37hfzzxsxbvkb35y1v9hfkw802l6j3xq-zulu-ca-jdk-11.0.24"
23+
},
24+
"x86_64-darwin": {
25+
"outputs": [
26+
{
27+
"name": "out",
28+
"path": "/nix/store/kl9yv2dppl8cbj2zy23lm7n8gppv4sp5-zulu-ca-jdk-11.0.24",
29+
"default": true
30+
}
31+
],
32+
"store_path": "/nix/store/kl9yv2dppl8cbj2zy23lm7n8gppv4sp5-zulu-ca-jdk-11.0.24"
33+
}
34+
}
35+
},
36+
"jq@latest": {
37+
"last_modified": "2026-05-03T16:35:46Z",
38+
"resolved": "github:NixOS/nixpkgs/73c703c22422b8951895a960959dbbaca7296492#jq",
39+
"source": "devbox-search",
40+
"version": "1.8.1",
41+
"systems": {
42+
"aarch64-darwin": {
43+
"outputs": [
44+
{
45+
"name": "bin",
46+
"path": "/nix/store/zpaiv3csv85i5qdhwlivlbg8a5clnqmh-jq-1.8.1-bin",
47+
"default": true
48+
},
49+
{
50+
"name": "man",
51+
"path": "/nix/store/vs9rx9xgqachcay4mn95m1gwifzxrhm4-jq-1.8.1-man",
52+
"default": true
53+
},
54+
{
55+
"name": "out",
56+
"path": "/nix/store/inmyqx7646xrcqrwxipacv5gkf3ca6m3-jq-1.8.1"
57+
},
58+
{
59+
"name": "dev",
60+
"path": "/nix/store/h46rnp90pvk5ky12r9drbzhl1fqlmjnf-jq-1.8.1-dev"
61+
},
62+
{
63+
"name": "doc",
64+
"path": "/nix/store/iksz05vk9j78ls9agfg9blhax9azgv69-jq-1.8.1-doc"
65+
}
66+
],
67+
"store_path": "/nix/store/zpaiv3csv85i5qdhwlivlbg8a5clnqmh-jq-1.8.1-bin"
68+
},
69+
"aarch64-linux": {
70+
"outputs": [
71+
{
72+
"name": "bin",
73+
"path": "/nix/store/blgzs73jx017qji4n78v4wg1qxcg3cav-jq-1.8.1-bin",
74+
"default": true
75+
},
76+
{
77+
"name": "man",
78+
"path": "/nix/store/s8h2klkc7rw485yqj3s73ancc5915v2m-jq-1.8.1-man",
79+
"default": true
80+
},
81+
{
82+
"name": "out",
83+
"path": "/nix/store/2v9443fs97gdg5mz9lk3q603hryhqijm-jq-1.8.1"
84+
},
85+
{
86+
"name": "dev",
87+
"path": "/nix/store/lx675fc624glij1dh9iw89pavkvfkv73-jq-1.8.1-dev"
88+
},
89+
{
90+
"name": "doc",
91+
"path": "/nix/store/r992wf8cylhf9ayxwf64lawdfxcr4cl8-jq-1.8.1-doc"
92+
}
93+
],
94+
"store_path": "/nix/store/blgzs73jx017qji4n78v4wg1qxcg3cav-jq-1.8.1-bin"
95+
},
96+
"x86_64-darwin": {
97+
"outputs": [
98+
{
99+
"name": "bin",
100+
"path": "/nix/store/cpq0n6nrgs7jwyr121qshzk2fvjkmjbh-jq-1.8.1-bin",
101+
"default": true
102+
},
103+
{
104+
"name": "man",
105+
"path": "/nix/store/flsm1xvpbr9681y4y8101v5c5m3qmcim-jq-1.8.1-man",
106+
"default": true
107+
},
108+
{
109+
"name": "doc",
110+
"path": "/nix/store/h6wn2lzbxq1v2dypaj4kpv4nnkkm9yld-jq-1.8.1-doc"
111+
},
112+
{
113+
"name": "out",
114+
"path": "/nix/store/spn7m9y4302yvw9zafpy1g2sz3z9xnx1-jq-1.8.1"
115+
},
116+
{
117+
"name": "dev",
118+
"path": "/nix/store/0p7h41icsq99c08sym6iw4wzdsl35r13-jq-1.8.1-dev"
119+
}
120+
],
121+
"store_path": "/nix/store/cpq0n6nrgs7jwyr121qshzk2fvjkmjbh-jq-1.8.1-bin"
122+
},
123+
"x86_64-linux": {
124+
"outputs": [
125+
{
126+
"name": "bin",
127+
"path": "/nix/store/v5c3inhfq6xshmwg1c254vfbcy4jp3k9-jq-1.8.1-bin",
128+
"default": true
129+
},
130+
{
131+
"name": "man",
132+
"path": "/nix/store/lsyqny7h1riwhzajwy2vjjdd63viiwvm-jq-1.8.1-man",
133+
"default": true
134+
},
135+
{
136+
"name": "dev",
137+
"path": "/nix/store/p8x5zv9s9qg3ld8b7jdm03hkpdqybjl9-jq-1.8.1-dev"
138+
},
139+
{
140+
"name": "doc",
141+
"path": "/nix/store/g2wlgi44rn837jdirpwi3lk5f2iy13zg-jq-1.8.1-doc"
142+
},
143+
{
144+
"name": "out",
145+
"path": "/nix/store/09bq2i0kb008ccg3qdbyxv81ggxxnn09-jq-1.8.1"
146+
}
147+
],
148+
"store_path": "/nix/store/v5c3inhfq6xshmwg1c254vfbcy4jp3k9-jq-1.8.1-bin"
149+
}
150+
}
151+
},
152+
"maven@latest": {
153+
"last_modified": "2026-04-23T13:07:47Z",
154+
"resolved": "github:NixOS/nixpkgs/01fbdeef22b76df85ea168fbfe1bfd9e63681b30#maven",
155+
"source": "devbox-search",
156+
"version": "3.9.12",
157+
"systems": {
158+
"aarch64-darwin": {
159+
"outputs": [
160+
{
161+
"name": "out",
162+
"path": "/nix/store/5snxk4sha9i36rcgx5bhn375xysymdw0-maven-3.9.12",
163+
"default": true
164+
}
165+
],
166+
"store_path": "/nix/store/5snxk4sha9i36rcgx5bhn375xysymdw0-maven-3.9.12"
167+
},
168+
"aarch64-linux": {
169+
"outputs": [
170+
{
171+
"name": "out",
172+
"path": "/nix/store/6bcr1jj81jx7mwsxbnz0m20bbjfzh2w2-maven-3.9.12",
173+
"default": true
174+
}
175+
],
176+
"store_path": "/nix/store/6bcr1jj81jx7mwsxbnz0m20bbjfzh2w2-maven-3.9.12"
177+
},
178+
"x86_64-darwin": {
179+
"outputs": [
180+
{
181+
"name": "out",
182+
"path": "/nix/store/hw5sswrm3c4gb7v6hhhni061b6zx22lf-maven-3.9.12",
183+
"default": true
184+
}
185+
],
186+
"store_path": "/nix/store/hw5sswrm3c4gb7v6hhhni061b6zx22lf-maven-3.9.12"
187+
},
188+
"x86_64-linux": {
189+
"outputs": [
190+
{
191+
"name": "out",
192+
"path": "/nix/store/brc7wr2j0nix75r942sj4dp438isxz5g-maven-3.9.12",
193+
"default": true
194+
}
195+
],
196+
"store_path": "/nix/store/brc7wr2j0nix75r942sj4dp438isxz5g-maven-3.9.12"
197+
}
198+
}
199+
}
200+
}
201+
}

0 commit comments

Comments
 (0)