This Week #10: Devbox 0.7, fixing glibc errors, and more

This week: Perf improvements in Devbox 0.7, fixing glibc errors in interpreted languages, and updates on auth, payments, and secrets


For this cycle, I'm pairing with Savil to allow users to set secrets on the Jetpack cloud dashboard. It requires converting Stytch tokens to Ory tokens - my primary goal for this week. Additionally, I looked into improving the Dashboard App's onboarding experience as Mike and Mohsen started on the payments tab.


Last week, I shifted gears and started working on integrating with payments in Stripe APIs, which is part of providing a dashboard with billing management and free + paid tier services. My work specifically concerned making sure a user in the dashboard has an active subscription. By the end of the week, I plan to finish the work for payments and tie any loose ends that are left out.

Besides that, I handed over some of the work I'd been doing last cycle on Envsec (our secrets management service).


Last week, we released Devbox 0.7.0, which has a lot of excellent performance improvements and bug fixes to make Devbox faster and more reliable. We also added some helpful environment variables that should make scripting Devbox projects much easier. Check it out and let us know on Discord what you think of the new release!

I also started building some UI components for the Jetpack Cloud pricing page and started on the documentation for our Devbox Secrets project. I'm excited to start trying out these new features with developers soon!


This cycle I  focused on wrapping up ongoing projects. The first was some minor improvements to package version sorting that were shipped last week.

The second is an experimental feature that helps automatically resolve some dynamic linker issues on Linux. When enabled, Devbox will use patchelf to ensure that a package's binaries are using a glibc version compatible with the current Devbox environment. This will help address some weird linker errors that are especially common when developing with interpreted languages in Devbox.


This week I continued work on the deployments tool. I focused on getting the webhook listener to read from the newly added tables in our database. I had some delays due to auth issues and getting familiarized with new infrastructure that I haven't worked with before. That said, the webhook listener is now reading from the DB instead of having hard-coded settings for each project! Next up is making these settings configurable through a dashboard.


Last week, I focused on supporting John with doing the Devbox 0.7 release. This new release has several quality-of-life improvements, especially around the performance of adding packages, and being more careful about when we recompute the Devbox Environment in the shell.

I also began working on a backend service for our upcoming secrets product. Mohsen, Mike and Lucille have done a great job setting it up. The team already handled the heavy lifting around Identity and Authentication, so I had the easy task of hooking up a middleware service API to use the envsec library (which can talk to various secret stores).


Worked on setting up payments for our new Jetpack cloud service. In Devbox, worked on runx improvements, including using a single path for all binaries (which allows adding and removing packages while in shell) and also fixed a plugin bug that was affecting plugins that install flakes but want to ignore the package that triggered the plugin (e.g., PHP)