Cammy's Big Rambly Journal

Hello! I notice you're using Netscape (or other CSS-noncompliant user agent—in which case, consider this an easter egg) to view this journal. Because Netscape is so titanically shit, I have disabled image viewing on Netscape specifically. If I didn't, you would notice random images being replaced with each other and similar such strangeness. The posts are still visible, but you'll be missing the images, which are half the context of these posts.

You should use RetroZilla if you can; it runs on Windows 95 and up and gives you a perfect cammy.somnol viewing experience, plus more comfortable Web browsing on retrocomputers in general. Failing that, Internet Explorer 3 (which amusingly also displays this message, since it doesn't support the display CSS property) and up will also work perfectly fine for seeing my journal posts.


August 20, 2024
1200IQ methods for 40IQ tasks

Nucleus? More like no thanks


Having five years worth of somnolescent.net backups really does pay dividends sometimes, especially when I'm trying to resurrect things for archives. Rather than relying on spotty Wayback grabs, I simply pull from the copy of each site I made five years ago, patch the links (each archives site has links across the site network changed to the contemporary version on archives, so Cammy site in 2019 goes to Caby site in 2019 and not the live caby.somnol), and upload to its own directory on archives.

Occasionally, though, some assembly is still required on top of that. I think it's time to get a little technical, but first, the actual news here: you can now view the original version of my Scratchpad circa late 2019-early 2020 and the original version of Letters From Somnolescent circa most of 2018, as they were, janky early layouts and all. tesserae_v1 is also now a thing—this was the original, pre-rewrite version from back when we were still on Neocities that wasn't as visually appealing, functional, or accurate as I would've liked, but amazingly, I've never brought it to archives until now. That was the easy one; again, just grab from my files and upload and done.

tesserae_v1

The blogs were tougher. This was all motivated by me trying to reorganize that subdomain ahead of the redesign it's been getting, as I wrote about the other day, and I figured that, if the final static copy of the Scratchpad was on mari_v3, the original mini.css layout before I switched to nonzero for a theme should be with mari_v2, which it was contemporary with. I'd also thought about resurrecting the original Nucleus-generated version of Letters and stashing it in blog_v1; while there's not a lot different about it, there kinda is? It's a little hard to explain, but that was how the group blog looked when it matched somnol_v2, so even though the theme got more refined in time but stayed roughly the same in layout, it felt wrong to have one up, but not the other. In any event, it's all Somnolescent history that would be nice to have for the purposes of other sites on archives having correct-looking pages to link to.

The Scratchpad resurrection took a few hours to get settled, but I roughly knew the process. There's a plugin called Simply Static that will generate static HTML pages of your entire WordPress site, so once I had a functional blog again, I could simply run that, download the render, patch the links, and upload. I'd done this with the Scratchpad itself when I retired it. This would be the same process, simply with the original theme active and with all posts, pages, tags, and categories before the nonzero switchover deleted to avoid being anachronistic.

The original version of my Scratchpad

I was surprised at how easy it was to redeploy a WordPress install. Every time I backed one up, despite it being a ton of files, I'd grab the entire install instead of just, say, the image uploads. To redeploy from a backup, you just...reupload the entire install. And then preferably update WordPress. All our databases still live on the backend, and the backups all still have the config information to get into them. I still needed to do a little bit of debugging because I uploaded everything to a new subdomain I could immediately delete instead of to mariteaux.somnolescent.net/blog/ where it originally lived, and that gave WordPress a bit of heartburn, but it was manageable.

It was that goddamn Nucleus install that had me up to some galaxy brain shit.

If you've never heard of Nucleus, it's another PHP/MySQL blogging platform I'd wanted to try out out of curiosity and because I'm a contrarian and used to be infinitely worse about it. It's been in and out of development by different teams for years, with the most recent updates coming entirely from the Japanese folks who still love it and still maintain it. Nucleus was a huge pain in the ass to work with, even at the time; after about eight months of using it, our user account logins for it just up and stopped working, necessitating an emergency migration to WordPress that I documented, funnily enough, in one of the first posts to the Scratchpad.

Because I wanted to go with my known good files instead of trying to force the old database onto a fresh new install of Nucleus, I simply uploaded my backup of the old Nucleus install and waited to see what would happen. At first, it seemed to work! If I tried to read any of the posts, however, or go anywhere other than the front page, I'd get a blank 500 error with no indication as to the issue. Even with error display on, you still don't get anything on the Web-facing front. DreamHost requires you to dig into your logs to find out why.

A 500 server error in Vivaldi

The 500 errors were apparently due to a long-deprecated now-stub function that Nucleus relied on called get_magic_quotes_gpc being totally removed in PHP 8.0 (when we were using Nucleus in 2018, PHP 7.0 was the newest version). DreamHost, to avoid you using old insecure PHP versions, hides your ability to use these earlier versions of PHP in your admin console, though you can still access them if you force a specific PHP version in your .htaccess.

The original version of Letters From Somnolescent

After this, the Nucleus install sprung to life, but there was still an issue. WordPress has very nice URLs for posts and pages that match up well to static directories. Nucleus URLs are hideous and rely entirely on HTTP GET variables on top of index.php to navigate basically anything on the site. Of course, that presents a small challenge; while I'd be able to get a static copy of the site using wget, trying to access any of the pages would make Apache think I was trying to view index.php?itemid=44 (that is, index.php with some GET variables on top) instead of a page literally named index.php?itemid=44, with a question mark in the file name.

The solution for that was to percent encode the question mark in all the links. Of course, making it more fun is that Windows does not let you use a question mark in your file name, so to patch anything on the static wget copy, I'd have to

  1. Make the changes with the files being named stuff like index.php@itemid=44
  2. Upload them
  3. SSH into DreamHost and run a bash script to replace any @ symbols with ? symbols
  4. Test to see if there are more changes to be made
  5. If there are, delete all the files on the site and begin anew

So it's good to know that Nucleus is just as much of a pain in the ass to work with now as it was in 2018.

But still! It's all returned to the Internet at long last. I'm still a little precious about Somnol history and all our hard work, so even if this isn't the most exciting thing to see, I'm glad to have it around for when I'm feeling sentimental, and I'm sure the group does too. Seeing my old Scratchpad layout again especially pleases me—I haven't looked at that thing, let alone used it, in years, and aside from the wonky spacing between elements, it's actually not too bad to browse! It definitely feels right to click around mari_v2 and have that be the Scratchpad and not the later one with all my 2022 posts on it. Small details only I could love, that's what I'm here for.