Part 18 — How Windows Once Again Confirmed It’s the Worst OS in the World
Today, Needle reached a milestone I’ve been working towards for a while: the desktop app is now available on macOS, Linux and Windows.
The funny thing is that getting there was nowhere near as difficult as I expected. At least not on two of those operating systems.
macOS? Easy.
Linux? Surprisingly easy.
Windows? Oh, Windows…
If you’ve never had the pleasure of trying to build and package a desktop application for Windows, imagine spending hours trying to determine whether you’re supposed to use PowerShell, Visual Studio PowerShell, Developer PowerShell, Command Prompt, Developer Command Prompt, or some other secret Microsoft-approved shell hidden three menus deep inside Visual Studio.
Every error message leads to another error message. Every fix reveals a new problem. Every tutorial assumes you’ve already solved the problem you’re currently trying to solve.
At one point I was convinced Windows was generating new build errors faster than I could read them.
The actual application worked fine. Tauri worked fine. Rust worked fine. The code was fine.
It was everything around the code that felt like an elaborate practical joke.
Still, after enough persistence, enough Googling, enough terminal windows, and enough questioning of my life choices, the Windows build finally crossed the finish line.
Needle 0.1.2 is now effectively available on all three major desktop operating systems.
Looking back, this is one of those milestones that users will probably never notice. Nobody downloads an app and thinks, “Wow, I bet getting that Windows installer working was a traumatic experience.”
But every developer knows.
Sometimes the feature isn’t the feature.
Sometimes the feature is surviving the toolchain.
Now, if you’ll excuse me, I’m off to update the website and pretend I never want to see another PowerShell window for the rest of my life.
At least until the next release.