clj-on-windows 2026-01-15

Not clojure-specific, but one of my work machines is Windows / WSL which is new to me I got a nice first impression of WSL (2), then I found out that it's criminally slow in practice because of its networked filesystem Is it worth using in practice? The 'solution' appears to be to use the Linux filesystem (i.e. don't use /mnt), but then what happens if you access that filesystem from a Windows app (say an IDE)? Wouldn't that replicate the problem, but in the opposite direction?

👀 1

Yes, it's true that accessing Linux files from Windows or Windows files from Linux is going to be slow(er), so in general you just organize your work to avoid that. I do all my development on WSL/Ubuntu but run VS Code on Windows (it does everything on Linux via a small server on the Linux side, it seems). That way everything for Clojure is running on Linux: Docker, REPL, etc Then on the Windows side I mostly just have comms programs: Slack, Outlook, Edge browser etc.

If you use other IDEs on Windows, yes, you'll have the slow file access problem for Linux, but not with VS Code.

As to "worth it" -- totally. I was on Apple/Mac for a long time, since the early '90s, and on System 6 & 7 I ran MachTen -- a BSD flavor of Unix -- as a parasitic, side-by-side O/S, so I had the Mac UI and programs with dev on Unix all along. Then I jumped over 8 & 9 to 10/X which had Mac UI and Unix native. Once WSL2 came out, I was able to switch completely to Windows, and get out of the "walled garden". I like that I can have multiple flavors of Linux installed and start up Terminal sessions for all of them at the same time if I want, and MS has done a really good job of integration, esp. now that you can run Linux GUI apps and they work pretty well (I have IntelliJ installed on Linux for one project that needed a specific plugin for testing local observability). I often run Chrome on Linux, for example, for working with web app projects (although localhost on Windows maps to localhost on Linux directly, it's easier to have full domain setups, including SSL etc, if your browser is running on that side of the house).

❤️ 1

Yeah when I was using it a few years back I'd use emacs within the linux system and X410 to view it in windows. at the time it worked way better than the free alternatives.

Yup, although you don't need X410 now.

haven't tried in a long time, just using mac/arch these days. also would recommend chris titus's winutil script you can just throw into powershell to do a safe debloat

Thanks! Yes, after I posted my question I tried moving it all to the Linux system and accessing it from VS Code. Works well with the extension.

👍🏻 1

It's the only way to make Windows passable, so you should absolutely use it. If you want to use another IDE though, like Emacs or IntelliJ, the trick is to install them on the Linux WSL2 instance and then use X410 or WSLg to "remote desktop" into the Linux app from the Windows side. Basically keep all your files and the apps that will interact with it on the Windows side. With Emacs you can also just use the command line Emacs instead of the GUI one. As for overall, I think Windows is terrible, and a Linux native OS is much better, especially on desktops, and for laptops, it seems Mac has simply leapfrogged past competitors. But shoving Linux inside Windows for dev work is the best thing Microsoft ever did to "fix" windows 😂 P.S.: As of last year, I still had to use X410, because WSLg is ugly as hell, doesn't match the windows decorations, and often froze up on sleep/wake. But X410 also sometimes breaks. Which is why you're kind of pushed towards using VS Code or terminal Emacs eventually.

👍 1