Someone on another Lemmy instance raised the question of whether an old wifi router could make a usable server of some sort, specifically a decade-old Google AC-1304. Since I happened to have a couple hanging around, I decided to give it a try.
I wrote a little about my experience in my blog but to summarize, I thought it would be fun to se if I could run a GoToSocial instance entirely on the router. It has an ARMv7 processor, 4GB of storage, and 512MB of RAM, so it falls a smidge short of the recommended minimum specs, but I figured that I might be able to get by if I kept the instance simple.
Surprisingly, GTS seemed to run fine after some basic configuration tweaks. The biggest issue I encountered was actually with ffmpeg, rather than GTS itself. The only GTS build available for ARMv7 is a nowasm build, meaning that it’s missing the built-in media handling components, and instead relies on ffmpeg being proveded by the host system. The version of ffmpeg that ships with the OS I’m using (OpenWRT) didn’t have the needed codecs to create webp files, which GTS requires when dealing with media. Using the OpenWRT SDK, I tried to build an ffmpeg package with the correct codecs, but it still failed to properly convert files to webp. My goal was just to run GTS, though, so I that digging deeper into ffmpeg felt like a tangent I didn’t want to pursue.
But I digress. The instance is now online and running (though without media), and I created a simple bot account, named Gale, who will post a random fact about wifi and networking each day.
Feel free to give 'em a follow in your favorite Mastodon client at @gale@gts-googlewifi.k3can.us or you can view past toots here
Just wanted to share!


Can something like this be done on the more rounded Google AC routers/extenders?
The Nest ones? I haven’t seen anything online of folks successfully flashing one. The first steps would probably be to solder on a USBC port and see what kind of access you can get over serial. There’s a picture of a Nest board (not the Pro) here, as well as info on what appears to be the correct usb connector. The OP also mentions that the Nest is lacking the developer button, but my guess would be that the function is still accessible by shorting the correct TPs. It doesn’t seem like that OP ever went through with the project, though, so maybe you’ll be the first!