Sign in

Julio Merino

@jmmv.dev
248 followers 399 following 196 posts

Operating systems, build systems, and programming languages. Mostly Unix, Bazel, and Rust. Author of Blog System/5. Creator of EndBASIC, and more. jmmv.dev

PostsRepliesMedia
Julio Merino @jmmv.dev · 03/07/2025
Instructions for the DIY kit ready and the very first release builds are in the oven. Interested in early, privileged access? coff.ee/jmmv !
TOC for the new EndBOX page that will show up in the EndBASIC website.
000
Julio Merino @jmmv.dev · 05/06/2025
This shall be the next piece of hardware to add support for! But… after the conference, and finishing the plan on what to actually do about producing this box “for real”.
000
Julio Merino @jmmv.dev · 01/06/2025
And here it is in its “true” form! Now, if I got Bluetooth working and easily configurable via CONFIG.BAS, I could remove an extra cable.
010
Julio Merino @jmmv.dev · 01/06/2025
After ALL morning of fighting DTBs, I finally got the WiFi on the Pi Zero 2 W to work on NetBSD. Perfect for showtime at BSDCan.
210
Julio Merino @jmmv.dev · 31/05/2025
The EndBASIC dev kit presentation for BSDCan ain't gonna write itself. Two weeks to go!
Screenshot of the "EndBASIC: My forever project" draft slide.
000
Julio Merino @jmmv.dev · 24/05/2025
‪Let’s play snake? Is it too slow? Too fast? No problem, we can tweak it!‬
010
Julio Merino @jmmv.dev · 24/05/2025
It’s the weekend again so it’s time to continue iterating! Looking better now, I think? ☺️ … but the base warped again and I need to do some internal tweaks. Each iteration takes about 12 hours to print which doesn’t make it easy…
100
Julio Merino @jmmv.dev · 09/05/2025
And now, with power!
000
Julio Merino @jmmv.dev · 09/05/2025
Not too bad for a first attempt though! All inner supports broke, but superglue to the rescue.
100
Julio Merino @jmmv.dev · 07/05/2025
Second attempt seems better, but I still don’t know if the box works. Printed by a friend (hi Daniel!).
100
Julio Merino @jmmv.dev · 07/05/2025
First printing attempt: failed. One piece was above the work plane. So much laughing when I saw this…
100
Julio Merino @jmmv.dev · 07/05/2025
EndBASIC dev kit finally shaping up—literally. But this is my first 3D design+print, so bear with me...
100
Julio Merino @jmmv.dev · 02/05/2025
Now, in video format! The new EndBASIC Gallery in all of its glory. Do you need your project featured in here? 😉
100
Julio Merino @jmmv.dev · 02/05/2025
The projects gallery and online file browser are now live! Visit at: www.endbasic.dev/gallery.html . If you don't see your project but want it featured, let me know 😀. You can't add it yourself yet without a fixed EndBASIC client.
100
Julio Merino @jmmv.dev · 25/04/2025
Alrighty! I should have added this "project browser" a long time ago to the EndBASIC site... but better late than never. Next up: adding tiles for featured projects, with screenshots and the like.
100
Julio Merino @jmmv.dev · 24/04/2025
Got a cheapo luggage bag for the kid and, while packing, noticed this. Like… HTF does this happen?! The fix was two screws away but I wonder if this is why it was so cheap?
Lock installed in reverse, which makes it impossible to clip the zippers.
000
Julio Merino @jmmv.dev · 23/04/2025
Is that bump on the wall a trigger for a secret room? Or have I played too much Doom and Quake?
030
Julio Merino @jmmv.dev · 17/04/2025
For the Googlers and Xooglers around here… I found the Noogler hat store and the auth system building.
Noogler-like hats.Building with LOAS written on it.
020
Julio Merino @jmmv.dev · 13/04/2025
This (via HN) looks like a great read for tomorrow's long flight. I've wanted to learn Elisp "properly" for a long time, but then... I've never actually felt the need to use it other than for configuration. "Coding my editor" is not how I think about it...
Table of contents of the "Emacs Lisp Elements" book.
010
Julio Merino @jmmv.dev · 11/04/2025
Aaah, the joys of using a non-mainstream OS: having to learn and understand random stuff when you most need it. Today's edition: how profiling works under the covers. TBF this is how I learned A LOT about systems ~25 years ago, but it gets old.
Screenshot of PR #265 against pprof-rs adding support for NetBSD/amd64.
110
Julio Merino @jmmv.dev · 11/04/2025
Alright. Finished modeling all the components. Now time to design the cases.
TinkerCAD showing models for an HDMI display, an RPI 3, an RPI Zero, and an LCD hat.
000
Julio Merino @jmmv.dev · 10/04/2025
More that two weeks later, this hit the HN front page today for a few hours.
"The next generation of Bazel builds" in the 12th position of the HN front page.
000
Julio Merino @jmmv.dev · 10/04/2025
BSDCan is just 2 months away so that’s the time I’ve got to learn me some CAD and figure out 3D printing…
Small display on my hand with TinkedCAD in the background showing the same piece.
120
Julio Merino @jmmv.dev · 03/04/2025
What can I say… I have a long trip coming up and I had to get this. We’ll see how it turns out.
A Platform Mindset book on my hand.
000
Julio Merino @jmmv.dev · 31/03/2025
Huh, I knew Debian's approach to packaging Rust apps was "weird", but I didn't know it allowed you to essentially develop without crates.io and network access. Pretty neat TBH. thomask.sdf.org/blog/2023/11...
Portion of the article that shows the config.toml content to use Debian's local registry.
030
Julio Merino @jmmv.dev · 30/03/2025
Back to basics tonight. I’ve tried many, many PNW IPAs, and there are very nice ones, but I still find them too… sweet or juicy.
Stone IPA next to a half empty glass.
000
Julio Merino @jmmv.dev · 28/03/2025
AI's take on what unifying code into a monorepo looks like. And this is after saying "please no graphs or diagrams", just a concept picture. lul wat
110
Julio Merino @jmmv.dev · 24/03/2025
Happy 10th anniversary, Bazel! It has been quite a ride and I hope you don't take what I wrote here in the wrong way. There is always room for even faster builds 🙃 jmmv.dev/2025/03/baze...
Cover image of "The next generation of Bazel builds".
220
Julio Merino @jmmv.dev · 23/03/2025
It was really hard to find the date and only Gemini was able to guide me to a reliable source, but it seems like tomorrow marks the 10th anniversary of Bazel's public announcement—and I have a treat ready for you!
Cover of my upcoming article "The next generation of Bazel builds".
110
Julio Merino @jmmv.dev · 23/03/2025
The second book in the 8080 Books “series” is out. I read the first and it got pretty boring with all of the LLMs stuff. Not sure if I should get this one. Any reviews so far?
Cover of the A Platform Mindset book.
100
Julio Merino @jmmv.dev · 18/03/2025
Now with support for font and default colors selection, plus functional reboot and power off options!
010
Julio Merino @jmmv.dev · 17/03/2025
TIL that the V6 Unix shell came with a goto(1) binary to jump around. How it worked is "neat": the shell spawned goto(1) and _shared_ the descriptor of the running script with it. goto(1) then seek(2)-ed to the label, affecting the shell's next reads. v6sh.org
Screenshot of the linked article with the list of external utilities that the shell used.
000
Julio Merino @jmmv.dev · 15/03/2025
Not quite the same, but I get a similar vibe from the question style 😜 (The privilege separation via an RPC mechanism I was posting about yesterday works!)
Amstrad CPC BASIC after running "cat", which reports an error and three options "Retry, Ignore or Cancel?"EndBASIC after tying "end" to exit the interpreter, which provides three options as well to "Continue, Poewr off or Reboot".
020
Julio Merino @jmmv.dev · 14/03/2025
I'm having "fun" "over"engineering the EndBASIC dev kit image. Here, a sample of the new background daemon for privilege escalation that the shell calls into. But... why? The thought of running everything as root in an embedded device that may not get updates makes me uneasy.
Screenshot of a terminal with two panes. The top one shows the daemon running as root listening on a local socket and its log showing how it handled a SyncDisks RPC. The bottom one shows a netcat invocation of this RPC as a regular user.
000
Julio Merino @jmmv.dev · 12/03/2025
Well, I guess I'm going to @bsdcan.bsky.social this year 🙃. Now I need to push for the final stretch to get this toy ready for showtime!
Intro paragraph to the notification email I got: The BSDCan talk committee is pleased to announce that your abstract "An embedded "dev kit" for EndBASIC with NetBSD" with ID #77 has been accepted (Lecture 50 min). We are delighted that you will be contributing to the 20th annual BSDCan.
020
Julio Merino @jmmv.dev · 07/03/2025
And now I think I've found another tweak to support configuring the WiFi from _within_ EndBASIC as well (keeping the CONFIG.BAS accessible via the FAT partition) 😁 Weekend goal: make this work.
Diff of the config.bas file showing new entries in a wifi_networks array that is user-customizable.
000
Julio Merino @jmmv.dev · 23/02/2025
This wall just needs a memory test counter next to it.
Energy Star logo on a wall, on top of a fire extinguisher.
010
Julio Merino @jmmv.dev · 22/02/2025
Omg it works. IT WORKS! The buttons are a hit or miss and need tuning… but I can start working on a case now! And performance optimizations… lots of them.
000
Julio Merino @jmmv.dev · 21/02/2025
After the last painful weekend getting this to work… I spent the week cleaning up the code and the experience. All done! 😎 Next up: pairing the LCD with the Pi Zero, which is probably going to give me some grief…
110
Julio Merino @jmmv.dev · 17/02/2025
I also ended up reading through this great intro to SPI and then verifying that the pins on the GPIO connector were mapped as expected and behaved as they should have (an LED helped). www.analog.com/en/resources...
Screenshot of the intro text to the page.
100
Julio Merino @jmmv.dev · 17/02/2025
Ah, the things I had to learn and do today to make this work. And this was just one of the many things I had to chase and verify or fix.
Git commit log showing one commit titled "Add a DTB overlay to enable the SPI bus in the RPI".
100
Julio Merino @jmmv.dev · 16/02/2025
ALL MORNING spent in figuring out why I couldn’t make this LCD work on NetBSD while my code worked OK on Linux. It finally did the right thing just now so I’m released to go for a run.
150
Julio Merino @jmmv.dev · 13/02/2025
Coming up tomorrow morning on Blog System/5, right at the start of the school winter break for some of us. Don't miss out!
Screenshot of the cover image for my upcoming post, titled "ioctls from Rust".
000
Julio Merino @jmmv.dev · 08/02/2025
Getting really, really close now to having something shippable!
000
Julio Merino @jmmv.dev · 08/02/2025
All this pain with the SD card / USB image image creation was well worth it. Adding support for a "wifi.cfg" file that can be trivially edited from macOS or Windows right after burning the EndBASIC image was trivial to implement.
110
Julio Merino @jmmv.dev · 04/02/2025
I thought "let's rewrite NetBSD's mkimage script into something better suited to my needs and without spaghetti code; It'Ll Be EaSy!" — and the past few days have been *incredibly painful* while figuring out the exact makefs/disklabel/fdisk incantations for amd64 and aarch64.
Output of my make-image.sh script showing the creation of an amd64 disk image for EndBASIC.
020
Julio Merino @jmmv.dev · 28/01/2025
New toy, new target for the EndBASIC box.
Raspberry Pi Zero 2 W in its original box.
020
Julio Merino @jmmv.dev · 26/01/2025
I didn't plan to make the EndBASIC dev kit multi-arch... but... I saw a couple of old laptops sitting in the closet today and knew they had to run this. Plus... using an amd64 VM on an amd64 host during development will be so much quicker than aarch64...
git log showing multiple commits to generalize the build infrastructure to support different architectures (placing files in an arch subdir, parameterizing file names, etc.) -- all on a branch not yet merged to master.
010
Julio Merino @jmmv.dev · 25/01/2025
Well, that’s an interesting snail mail spam piece. I wonder how they made this up…
Letter addressed to “Business Owner BLOGSYSTEM5”.
010
Julio Merino @jmmv.dev · 19/01/2025
I think this is the best it’s going to get for now regarding boot times. Time to pivot and improve graphics performance, a few other things, and hopefully I can start sharing the disk image soon!
010