It's definitely been a while since I last posted, I'll admit that up front. Classes have kept me pretty busy, and until recently I hadn't really made progress on any projects that I've started. The most I was able to do for a while was tinker around on my laptop, customizing the WM and the appearance. I switched to Openbox for a while with a Tint2 panel, now I'm using i3wm and still trying to figure out how to customize it. The main struggle is getting useful applications such as my volume and network applets to show up in the status bar nicely, as i3 isn't exactly well-known for its nice default appearance.
However, as the title suggests, I did end up getting one personal project working. My little Liva X2 micro computer has been running Nextcloud for a while but it hasn't been accessible from outside my network. It's only been accessible if I went directly to the IP address in my browser, and that's not very useful if I need files when I'm not at home. Because of this, I made a few changes. First, I signed up for a dynamic hostname from noip.com. This let me assign a static name to my network, even if my ISP changes my IP address. As it turns out, my router actually lets me set up a dynamic dns service so I don't have to run it directly on my Nextcloud server - I just put in my login details and the DNS entry I want to use and it connects for me.
After I got dynamic DNS set up, I had to make some changes to the router itself. First, I forwarded port 80 to my Liva so that people wouldn't get my router's login page if they tried to access my dynamic IP. However, since I didn't want port 80 to go directly to my Nextcloud login, I had that go to a static HTML page that just says "thanks for checking me out". Next, I opened a different port on my Liva and changed the Apache configs to set the Nextcloud page to listen on that port. I then created a port forwarding rule on my router so incoming connections on the same port as my Nextcloud instance are forwarded to the Liva. Now I can access my Nextcloud server by going to <dynamic dns address>:<port>. Sorry guys, not willing to share all the details of my setup.
Now that I have a dynamic IP address set up so I know I can access different services with different ports, I'm working on the next part of my homelab. I purchased an ASUS VivoPC VC60 off of eBay for about $60 + shipping. That little machine came with an i5 and 4 GB of RAM, so it's got quite a lot more power than the Liva. It also has a 500 GB spinning hard disk, so it's a bit slower to boot but it has a lot more internal capacity. After buying a power supply from Amazon (since the PC didn't come with one), I have it running Debian Linux and I have steamcmd installed on it as well. My plan is to run a very basic ARK: Survival Evolved server so I can play with my girlfriend and a few other friends, with only 4 GB of RAM I might need to give it an upgrade before I can do very much with it though.
One last note: yesterday's XKCD comic made me realize that my high school has its own Wikipedia page, which surprised me because I didn't think it was significant enough. However, when browsing the page I found the "Notable Alumni" section and found out that Ian Murdock, the creator of Debian Linux, actually went to my high school! With such notable alumni as that, I'm glad that I've been choosing Debian as my server distro for all of my projects. I'm still sticking with Void on my PCs though.