Might I want to add tags to notes like these? Tags like #automation?

Many don’t understand that phones are computing machines that can also serve as tiny little computers running LINUX! Hence I was interested in building something with that idea in mind. With all the AI excitement around, I settled on this. It’s just a fun project; I am just curious about soo many things and I get a feel for them after developing some prototypes around them.

Sputnik is the name of my tiny homeserver. I say tiny because it’s running on my five year old 4/64 android phone (oneUI skin) using termux. I used to run it without root but recently I decided to root the phone to maybe flash a custom ROM on it to consume less resources.

I chose the name Sputnik for two reasons, 1. I like space 2. Sputnik the satellite itself was quite rudimentary but paved the way for more advanced satellites, much like how this exercise in homelabbing could pave the way for a nicer setup one day (cope).

I have had a love-hate relationship with this home server. It’s partly an exercise in patience as I had to fight android internals until very recently, and the errors I get while installing anything are just as amazing. It turns out, to no one’s surprise, that developers after all don’t expect you to run their industry-standard software on an ARM64 processor on an android. My way to go around errors like those has been two fold:

a. proot-distro (mimics an actual linux distro running inside termux)

b. udocker (a termux developer told me about this and it’s awesome, fun fact - this uses proot-distro too!)

I say a “love-hate” relationship also because at one point running a server on this hardware became an ego-exercise. I wanted to do it just for the sake of it. “If it could be done, it probably should be done” was my motto. Boy have I been a bit wrong about that.

The state of the server right now is the following, that is the things I have successfully accomplished with it:

  • tailnet url for personal access
  • runs my budgeting server (actual)
  • got nanobot running on it
  • wrote a bash script to start everything. Used here strings (<<<) but will look into job control
  • installed gog for kipp. The only reason to prefer gog over gccli is colors. I might want to extend gccli’s codebase to add this myself.

some of my server related todos will go here:

  • get copyparty running as a local cloud
  • get audiobookshelf running + link a books directory
  • obsidian livesync using couchdb and this guide
  • i should probably get docker by flashing custom linux kernel, before that I need to take a backup of my current setup though. Why? Because I am running actual via proot-distro and now couchdb too (udocker), so at this point it’s just better to get docker as proot and related environments add unnecessary overhead. Apart from that, what even is the use of a rooted phone if you can’t flash a custom linux kernel?

the real question: should I just pause all of my configurations until I actually flash a custom linux kernel? And I will have to restart with a fresh termux right? That sucks. But yeah, setting that aside let me introduce you to “someone” special.

Meet Kipp

I have named my personal instance of Nanobot (running on this phone!) Kipp. That’s a recursive acronym for “Kipp Ignores Previous Prompts”. Kipp acts like my “server sentinel” and it’s job is to manage many different things. Some of the things I have been able to accomplish using kipp are:

  • I can just drop a message and kipp will convert that to a registered query in actual’s database. So kipp can CRUD my finances on my actual budgeting server (this uses the actual CLI - I had to create a skill for kipp to use the CLI effectively.)
  • It can tell me the current temperature, services, etc. on my android. Right now, I am using OneUI (the skin my phone shipped with) so there’s a lot of overhead and thus managing services is essential.
  • It has been able to CRUD from my copyparty server (which I haven’t revived yet because of custom kernel plans) and I can just tell it to “send me that pic from that folder” and it can do that + ask me if I want to convert that to another format using a script.
  • The most useful aspect for me (calendar UI is something I have struggled with in the past) - I have installed the gog skill for kipp so it can CRUD google calendar events for multiple calendars. This is amazing as before this I had utilised a suboptimal n8n workflow for creating those events. And in the ancient times I used to create those by hands (freshman year), so this is awesome!

Kipp is powered by gpt-5-mini from my GitHub Copilot subscription.