So, I recently put my food blog up on github, and I decided to create a new repo for it. I had cleaned some stuff up, and I wanted to make sure all of the files I included in the new repo would work on the web server. But as I tried to re-install all the perl modules, it kept failing trying to install the sqlite driver for perl.
I still don't know why that was failing. I think it hit some sort of OOM while trying to compile some C code? But as I was digging through things, I noticed that my server had been running for over 1600 days, and it was running Debian 10, which stopped being supported in June 2024. As I mentioned in a previous entry, when something is really outdated, I know that I should probably update it.
I knew this would require some downtime for my sites because I would have to reboot the system, and I thought about doing this crazy thing where I redirected all my domains to a github io page that displayed a maintenance message. Then I read that DNS changes could take up to 48 hours to propagate (not to mention this is exactly the wrong way to go about maintenance), and I gave up on that idea.
Aaaand, just like my BIOS upgrade, I had to upgrade Debian twice, because I can't just jump directly from 10 to 12. So I used this incredibly detailed guide, and I didn't understand most of it, and when I was done upgrading to Debian 11, my sites stopped working 😬
I spent a few hours of googling and looking at various files on my computer before I gave up and decided to revert my box back to a backup that I had from last week. But then when I powered it on and started up my web apps, they still weren't working!
I suddenly realized that my firewall rules weren't configured correctly, and then I had this deja vu moment, and I remembered that I ran into this exact same issue years ago. Well, at least this time it only took me hours rather than days. I suppose I need to solve the same problem several times before it actually sticks.
So today, I had to redo the upgrade to Debian 11 (which went smoothly), and then I made sure the websites were still working, and then I upgraded to Debian 12 (which went a little less smoothly).
Okay, it actually wasn't too bad, and the only issue I ran into was that it kept telling me that "initramfs-tools" kept erroring. I had never even heard of this tool before, but it seemed important. I found a few different threads on reddit and stackoverflow questions that were mostly unhelpful, but I did find someone that hit the same exact issue three months ago! And it looks like they solved their own problem, so thanks internet stranger. I'm glad I didn't try this more than three months ago :P
I wasn't planning on making this blog post today. I was actually in the middle of writing a different blog post when my laptop froze on me. It's been doing this a lot lately. The screen will freeze and the only way I can get it to un-freeze is if I put the computer to sleep by closing the lid. Now this would tend to happen when I was viewing a really intensive website, like a food blog. Or LinkedIn. I also started seeing a lot issues when I had Steam running. Yesterday, I had Steam open and it was completely unresponsive to any mouse clicks. I couldn't even hit the X in the corner to close the window. But for the most part working on my blogs was fine!
Until it wasn't. At this point, the only thing that hasn't caused my computer to freeze is Stardew Valley.
So I got this computer in spring of 2022. My old chromebook (which was still running perfectly) no longer had supported updates, so I figured it was time to find a new laptop. I guess I chose a Framework because it seemed like a good company, and it looked cool to put together, and I liked that I could easily replace parts of it (I haven't replaced a single part yet).
I ended up getting a
People have asked me if I like the laptop. Before I hit all the screen freezing issues, it was fine. I feel like I don't use it to its full potential. The battery life is not great. I can't ever put this laptop to sleep for extended periods of time with it unplugged. I always have to fully power off. The lid opens to a much larger angle than any other laptop I've ever used, and I don't know of any reason why that's useful.
Sometimes I think, why did I choose this laptop? Why did I choose Linux? I don't understand how any of this works! I had to google how to update Discord so many times before it stuck in my memory.
But here I was, with this laptop that was freezing a lot. And I know enough that if your electronic thing is having issues, you should see if it's up to date. It turns out that I was on version 3.07 of the BIOS, and the latest is 3.20. That's so old that I can't even update it to the latest version at once. And before I could even do that, I had to be cautious and back up all the important things on this laptop, so I ended up putting this off for several months.
And I probably would have kept putting it off even longer, but if I can't even reliably write a blog post, then things are pretty dire. So today was the day. I made sure to back up whatever important things I thought I had on this computer, and then I went through the process of finding a flash drive, reformatting it, getting version 3.17 on it, booting it up, then downloading version 3.20 on it, and booting that up. And once I was done that, I figured I would upgrade to the latest LTS version of Ubuntu. This all took a few hours or so, but it was actually really easy!
So after I finally got my stuff up to date, I went to start up a sandbox for my blog, and then I got this error
ListUtil.c: loadable library and perl binaries are mismatched (got handshake key 0xdb00080, needed 0xdb80080)
😱
I did a bunch of googling and trying things from Stack Overflow, but nothing seemed to be working. One person suggested using a certain perl module to copy over existing installed perl modules to a new folder. I was sitting on the couch trying that out, and I was watching the text scroll by as it re-installed a bunch of modules, and then next thing you know, I'm asleep with my laptop on my lap.
I woke up in a very confused state, and when I woke up the laptop, I saw all the perl module installation output and I decided that I needed to shut down the laptop and deal with this another time. I walked over to a local meetup space and talked to some people for a couple of hours, which was nice. I think that little break was good for my brain, because when I got home, I realized that I just needed to clear out the local/ folder in my repos and re-install all the perl modules using carton.
So here I am, writing this blog post, and so far, the screen has not frozen yet. But it's only been hours, so 🤞
Okay, now I've fixed the SSL cert renewal. Hopefully 😬
I had accidentally reverted my nginx configuration file to an old version, and it had remnants of my old SSL cert. This was causing the file to be invalid.
Anyway, it should be fixed now and it should renew automatically in the future 🤞
Back when I was coloring ascii art by hand, I hit this weird bug that happened when I turned my phone sideways. Well, it's been a while since I turned my phone sideways and I did it again, and noticed more weirdness. I had a few ascii art images that were slightly off on the first row, which didn't seem too bad, but then I saw this monstrosity.
Then I asked my sister to look at the pages on her phone (flipped) and...they looked perfectly fine. Hmm. I guess if my site is only-broken-on-my-device that's better than only-guaranteed-to-work-on-my-device.
Anyway, I analyzed the code, and I realized that this was an issue:
<span class="gray"> </span><span class="lightgold">,*
No, it's not the fact that that second <span> isn't closed. I did that on the next line. It's the first <span> that has nothing but whitespace in it. I don't know, my phone had issues with that. This is just a side effect of how my color-rizer tool works, and maybe I'll fix it one day. Maybe. For now I just modified the html directly. As of now, I've fixed it on the ascii art pages, but not in the individual blog posts. But maybe later.