The end of the month (and RetroChallenge 2k22)

First of all, before I start this post I’m going to emphasize something. I’m going to keep using this blog for Fedi projects and other tech posts, however I’m fairly sure I’m going to move the site off wp.com because you can’t even use an activitypub plugin. I mean it’s 2022, I should be able to federate my posts.

So it’s the end of the month and I’ve had a Pleroma server running on the SPARC for half a month. It’s interesting so far since it hasn’t crashed or gone down since it started running, which speaks volumes for both the build quality of the hardware and how great SPARC is when the software stack isn’t broken. I wish I would have done more experiments, but that’s the issue with working a dead-end job that is designed to use you up to make the number go up for your boss (who is never at the job whatsoever).

I got this idea as it felt like a good idea to mix the past (big endian, SPARC) with the future of the internet (decentralized internet). The truth is; the social media age is basically dying. Or maybe it’s not. Elon Musk is probably going to make some changes to Twitter, but it’s also likely not going to be a radical push towards free speech I feel without him doing a lot of things from pulling out of Europe (and thus ushering in a new age of either regional social networks or encouraging VPN use as with Russia and their blocks), to actually sacking the moderation team.

There are also two groups of moderation on the internet at whole, the “free speech” side that died in the mainstream and thrived in the underground, and the popular “censor everything” worldview big in both big tech and bad Mastodon servers. Ever since the momentum for free speech online died with Aaron Swartz and got replaced with fear around GamerGate, the internet has been marked with Twitter blocklists, “block chain” extensions, and block bots, along with more calls for censorship online and to remove websites that have an increasingly vague definition of hate speech. Targeting emails towards ISPs, web hosts, and datacenters has been an increasingly popular method of censorship if harassing someone’s place of work/family doesn’t work. But it should also be clear that it’s not solely the left calling for censorship. Trump also wanted to gut Section 230 and both candidates ran on it. Furthermore at least one popular right-wing fediverse instance has gained a very notorious reputation for blocking from their instance people they have feuds with online, and you could argue that others would want to remove infohazards from the internet.

The dumpster fire around Kiwi Farms was a great example of this. The censoring of the site got talked about both by The Hill and recently even the EFF. Now the EFF is like the FSF in the sense that they stick to their principles (unlike say, the modern ACLU), even if they disagree with the people using them. Recently they dropped an article about this censorship and while they condemned the postings on the site, they were really angry about web providers using censorship and compared the farms being censored to Cloudflare and the Stormer in 2017, calls to knock Russia off the global internet because of the war, and Zoom canceling meetings for universities because one of the speakers hijacked a plane 50+ years ago and is part of a free Palestine group considered a “terrorist group” by the USA. It also brought up a good point about the same tools in the toolbox used to shut down KF being used against “marginalized groups” and linked to a time Cloudflare shut down a sex work site.

What was Twitter’s response? Why of course, to call for more censorship. There is reply after reply calling for censorship and literally comparing the website to Nazis in WWII, but there’s a running theme in these that also points to a deeper problem in the whole scene. The pro censorship side doesn’t just want things taken offline; it also has the “holy shit do something” mindset implanted from Hollywood and the public schooling system in mind. Look at Coraline Ada’s “ethical source” fiasco. This was a license that tried to solve a moral problem; what about people who are genuinely evil using your software and how do you take care of them? The problem is this made any software that used it non-free as it restricted your freedoms. But people like Coraline didn’t get this or care as their mindset was to banish them everywhere with force even if it was ineffective or backfired.

In this case the same thing applies. There’s a very real mindset with a lot of people in the tech industry that believe they should play censor and wield their power as a big tech employee for their own idea of good. They should be able to use mob pressure to get whatever they want, how they want, without waiting years in the court like the Sandy Hook moms did in the Alex Jones lawsuit. The replies to this are a great example, as because despite saying “we don’t agree with this transpobic content and won’t cry if it’s gone”, the mob sees the EFF wanting anything other than total farmer death right this minute as unacceptable and supporting them implicitly.

This is why the fediverse is booming. The fediverse is for the people who want to have fun online, like in the days of pre-GamerGate Twitter. It’s for the people who got censored too many times by the mainstream websites. It’s for the people who had their favorite website go down for good many times in the past. It’s for the people tired of overbearing moderators, since you can join another instance or start your own.

But it also has something that “alt-tech” and “alternative” social media sites lack: it’s not an echo chamber. A lot of people from different groups run fediverse instances and while many people and instance owners abuse instance blocking, using a lower profile instance or single user instance means you will be able to get through blocklists and interact with a diverse group of people with various viewpoints who all have one thing in common: a disdain for social media. Websites like Gab wound up failing not for the reasons you’d expect, but because they had a unique problem. Nobody had a reason to sign up for Gab if they weren’t banned from Twitter, and if they were they’d get an echo chamber of opinions that end with everyone blindly agreeing with each other.

Due to the censorship fears however I’d recommend you be careful to not poke bears if you run a single user instance the way I did and especially don’t host a multi-user instance this way. No seriously, read your ISP’s ToS and you might be shocked at how they’re written. I hope you’re ready to test the terms of service if you’re reported. Now if you’re hosting it all on a VPS or colocating a server at a datacenter, that’s another story. But look up how much colocation costs and you’ll discover that it is in fact a lot more expensive than just getting a VPS.

Let’s talk about the software stack some and what I learned from this. Debian SPARC surprised me when I used an old kernel, however I found out there has been a kernel bug ever since early on in the 5.x series kernels at least that breaks the UltraSPARC III/T1 CPU series. Unfortunately I don’t have a newer T3/4 server to run it on. OpenBSD ran great, but I found out that Pleroma really didn’t like OpenBSD and I was both unable to connect and had issues with the crypto module (or httpd). Also OpenBSD is weird around the edges configuration wise while everyone knows how to mess with Debian.

On Debian while Pleroma ran alright aside from logins, it just took a while to compile. Modifying the secret file means that it has to rebuild files and on this old CPU it can take quite a while to do all of this on 2 threads. Once the instance was running aside from logging in sending the CPU to 100% and usage making the CPU jump a bit, the CPU hovered around 10-20 percent idle (per thread). I haven’t measured power consumption but I’m sure it’s not good. I’m sure a Core 2 Duo or weird low-end AMD CPU or something will be way faster. I mean even my Intel Atom box runs Solaris faster.

The truth is, aside from issues that have everything to do with the modern internet and who gets jobs in tech companies, Pleroma is very easy to host as a single user setup on a junk computer, especially if you know you are never going to be saying anything that might make someone mad. For insurance sake, you can even hide posts on your instance so that only you can view it and others have to view it on their own, which can help shield you to some degree from the boomers and low-information techies in the abuse department as all links to your instance are masked. Always, and I mean always make sure to hide the whole known network for unauthenticated users.

One thing that really helps the fediverse taking off on the software side is that many of the people writing the fediverse use their own software. This isn’t like with Andrew Torba or other “alternative social media” site owners who spent more time advertising on Twitter than they did using their own website, or the joke about how FOSS developers never actually use the software they make. Okay, Eugen does spend a lot of time on Twitter and why is this account more active than the official Mastodon account on his own site?

But Lain and Alex Gleason, along with a lot of the active devs for Pleroma and Misskey actually use their own software. They’re not on Twitter talking about the fediverse all day long instead of using it. Many of the developers have skin in the game and aren’t just idea guys. In fact I’ve seen a few people even decide to write their own ActivityPub instance software for various reasons.

I do know what would be cool and would get artists over onto the fedi; writing a federated art/image hosting instance software with a layout similar to old-school pre-eclipse DeviantArt (back when the site was green and had a community). There’s a massive void in this area, and especially with NSFW art sites and ones that are more open to what content they allow. Plus Twitter IMO is probably the absolute worst place to find art with everything from its tagging system to timeline format being terrible, along with browsing through unrelated posts. That and being federated would help avoid the issue of “mob rule” that is especially bad on art sites, especially as artists are passive people who would avoid drama by all means possible usually. In fact they really seem to be the top targets of such behavior as the Zamii070 saga showed, or how Japanese artists seem to get harassed by ex-Tumblr users a lot.

This is why I feel the fediverse is the future of the internet for less mainstream communities. It’s the opposite of a service controlled by a big corporation who can boot you off when they’re in a bad mood. It’s where all the cool nerds you saw back in the day are going. It’s the alternative to failed walled gardens/monolithic “platforms” that die off quick and lose users. But most importantly, it helps avoid being an echo chamber due to the variety of groups that run instances.

It’s probably the only way forward too in an era when you can no longer simply start a singular website and get big from doing something you like, and then find a way to monetize it. That age is over. Everyone is on Twitter and a few walled garden social media sites, and the rules have made it a lot harder to try to run a big monolithic website if you don’t bend over for whatever Apple and the payment processor mafia dictates. Not even big websites are safe as seen with YouTube’s corporate shift after the advertiser pullouts, Pornhub losing payment processors after open uploads led to revenge porn and nonconsensual recordings (see the Girls Do Porn scandal), Patreon’s tightening rules due to payment processor pressure, and most notably Tumblr’s porn ban thanks to Apple pressure. Don’t expect big tech to save you either, just like every other “win” that turns out to be a wet fart.

Remember when the WordPress guys got Tumblr at a clearance price? Nope, they’re not going to make Tumblr great again. The co-founder of WordPress posted a Tumblr essay on why he’s never going to let porn back on the platform and also said essentially the same thing that Josh said when bringing his site back up again: Tumblr could never happen again. Okay, it couldn’t happen again in the old style framework of running your own bigass company, getting investor dollars, and having to play by app store and payment processor rules. I’m not joking, the guy running WordPress who owns Tumblr literally said the same things the guy who runs Kiwi Farms did, just worded differently and more professionally (being that he’s a businessman and not an internet outlaw). Of course hosting IRL porn as opposed to drawings is another can of worms entirely and Tumblr did have IRL porn, even if it was best known for the art, and so most art sites that allow NSFW art explicitly ban IRL content.

Which is why the only way forward if you want Tumblr 2.0 is to create an ActivityPub implementation of it. Even better; did you know that you don’t need an app store app with the fediverse and you can just use any fediverse app? Cool isn’t it?

Anyhow I’ve rambled on enough about the fediverse and I hope more people who are cool use it. The next few years of the internet are going to be interesting. I’m not too worried because there is a light at the end of the tunnel.

See you all next year, or as soon as I make more posts about tech.

Tor over Fediverse and how to proxy it

So this got passed my way today on the fediverse; a guide on how to set up a fediverse instance on the clearnet to talk to Tor:

“So, it’s no secret that the backbone of Internet as we know it is quite fragile. Love or hate Kiwi Farms, but the events happening around it show that even Tier 1 ISPs aren’t safe from malicious actors willing to take down anything over personal disagreements without any court orders or other legal bindings. This could happen to *you* once they taste the blood. One man couldn’t do much on their own, so rather than trying to change human nature, I think we should adopt technical solutions that eliminate that factor.

Here’s where darknets come to play, namely Tor and I2P. Technical differences aside, both are rather effective at doing their job at hiding their user’s and server’s physical endpoints, and both can be integrated into fediverse in some capacity with relative ease thanks to the fact ActivityPub primarily federates through HTTP. As such, it is possible to create instances in Tor/I2P and make clearnet instances federate with former. The more instances there are that can federate with Tor, the more incentive for hosting Tor-only instances there is. And that’s what I want to ask you.”

To make a long story short (there’s a lot to go into and having any opinion on this website will make someone angry), a very controversial yet popular website on the internet (that nobody will admit to visiting) became the most censored website in the anglosphere and while this might not have been that big of a deal in the past, this website did have a fediverse presence. Namely; the website hosted a semi-popular fediverse instance that helped bring in people immersed in internet culture into the fray. Said website has also managed to make tons and tons of enemies, including one ex-Google employee who happened to call in favors to get the site dropped from one Tier 1 ISP and blackholed by another backbone ISP. This is the important and worrying part for many on that side of the internet; that a Tier 1 ISP can not only be acting as a censorship board but even taking favors from former Google employees.

While the mainstream journalists and HackerNews techies are cheering the censorship of this website because this website was public enemy to them (and responsible for all their life issues, if you go by media coverage on the level of Hackers on Steroids), the reception is vastly different in less mainstream parts of the internet. They’ve managed to dodge or find ways to avoid censorship, so seeing even ISPs play political or take favors from an employee’s friend because a site made them angry is quite scary for the future of the internet to say the least. Even if they’re not fans of the Kiwi Farms (and many aren’t for numerous reasons and rightfully so), they know what this could mean for them. They know that mentally ill schizo they told to go away last week is going to be trying to get their domain pulled and this has in fact happened to at least a few instances. Or in other words, many people want to make it impossible to have any sort of fun on the internet (and with Discord servers, it’s easy to feel that way).

This is where that spooky scary darkweb comes into play. You know, it’s what TV watchers believe is a place where all the hackers and criminals hang out. But when censorship comes into play it’s also a great way to stay connected, and the Tor and similar nerds always talk about using it to hide from oppressive governments and all. There are some very real threats to hosting fediverse instances and especially at home, from exposed IP addresses to domain registrars, anti-DDOS companies, and even ISPs deciding to get political and ban you because of some petty grudge. In fact this has been such an issue that EFF made a famous free speech weak links post a while back. So for some people hosting a fedi instance on Tor/i2p is very attractive. After all it’ll hide your hosting well enough to make it hard for someone to ring up their buddy at your ISP, or at least social engineer them into thinking you’re literally using your instance to kill people.

There’s just one problem; restricting a website to Tor only vastly limits its reach to outsiders. Smashing walled gardens is one thing, as the fediverse has shown as anyone can open it up through the internet. While the Mastodon people sucked at retaining people on their instances by either trying to funnel people into mastodon.social or telling people to “try another instance” without naming ones people wanted to join (or focusing on political lines), Mastodon growth hasn’t gotten people to stay there.

But you can access the fediverse without Tor. You cannot access a Tor site without Tor, unless you use some tor2web thing that’s always broken. Which is where this post I was sent came in, to attempt to normalize Tor in an era when ISPs have shown they will blackhole traffic to websites and try to obsess over blackholing traffic to said website wherever it is, all because an ex-Google employee pulled the strings. This could apply too if you live in a censorship happy country as well. Since these instructions will allow clearnet instances to talk to Tor instances, I’m going to post them here. By the way, these instructions should also work on Pleroma forks like Akkoma or Rebased.

Printed below is a short instruction on how to get your existing instance to federate with Tor without scarificing existing connectivity. It assumes you’re running Debian-based distro; if you’re running anything else, I expect you to know what init and package manager your distro uses and adjust the commands if necessary. Let’s begin.

1. Install and enable Tor

$ apt install tor
$ systemctl enable tor
$ systemctl start Tor

After that Tor should be running and accepting connections on 127.0.0.1:9050, similarly to what Tor Browser bundle already does, but without the browser. You won’t become an exit node with default config, don’t worry.

2. Install and configure Privoxy, this is proxy we’re going to use to route *.onion traffic through Tor and everything else over regular connections

$ apt install privoxy

Next move or delete default config (/etc/privoxy/config) and make a new one consisting of following:

user-manual /usr/share/doc/privoxy/user-manual
confdir /etc/privoxy
listen-address 127.0.0.1:8118
toggle 1
enable-remote-toggle 0
enable-edit-actions 0
enable-remote-http-toggle 0
max-client-connections 65535
buffer-limit 4096

logfile /dev/null

forward / .
forward-socks5t .onion 127.0.0.1:9050 .

Finally, enable and restart the service.

$ systemctl enable privoxy
$ systemctl start privoxy

Optionally, you can test if the proxy is working with the following:

$ http_proxy=http://127.0.0.1:8118 curl http://rawrxd4mden7rmbobaftao3qjyxbrvj4rrooehkqxlqcsdtnnn2hndid.onion/api/v1/instance

If it returns a bunch of JSON, it should be good to go.

3. Locate your Pleroma’s config file: /opt/pleroma/config/prod.secret.exs for source installs, /etc/pleroma/config for OTP. Then add the following to it:

config :pleroma, :http,
proxy_url: "127.0.0.1:8118"

Optionally, it wouldn’t hurt to increase timeouts, since Tor is rather slow and your instance might not catch up with default parameters. Replace Ю and Ъ with opening and closing square brackets, respectively; Pleroma bug with BBcode still isn’t fixed and using Markup fucks up the whole list instead.

config :pleroma, :hackney_pools,
  federation: [
    timeout: 300_000
  ]
config :pleroma, :pools,
  federation: [
    recv_timeout: 30_000
  ]

4. Restart Pleroma, and you’re good to go! Try to ping @mint@rawrxd4mden7rmbobaftao3qjyxbrvj4rrooehkqxlqcsdtnnn2hndid.onion, this is my alt on a Tor-only Pleroma instance that can federate with clearnet. Click “preview” a few times until the profile gets fetched and the ping link becomes clickable. That instance is hosted on a rather slow server and might take a while to catch up, but we with an operator will resolve that sometime in the future.

Feel free to ask me for additional support in case you’re confused, as there might be a few caveats you could go through. I2P federation can be enabled similarly, and I’ll provide the instructions if anyone is interested.

The idea is that Pleroma is going to proxy traffic through another program on your machine that’ll pass onion requests to Tor itself (not as an exit node obviously). This way, you can access the website over Tor.

I decided to do this on my Sun hosted instance…and I can confirm it does in fact work. Images are the only thing that doesn’t work, but everything else including posting does. I can’t believe I’ve managed to do something more surreal than host a Pleroma instance on ewaste from 2006.

As for hosting, there’s a guide on the Pleroma website on how to run a Tor/I2P instance along with other ways to federate and whatnot.

On another note, Mastodon is on the news again and is leading towards another new user influx, this time because Tesla man finally bought Twitter for real. Its trashy journalism considering how it misses the point of the fedi and acts like it’s another website (and not a decentralized thing people can host), and also thinks it’s only for lefties which is pretty funny to think about. Another article by FastCompany would be a great guide, except it shoves you to Mastodon’s curated list of instances that tend to shove you into an instance in the “bubble” that usually tries to copy Twitter’s notorious policies.  It’s also been namedropped in Time Magazine and Wired Magazine as well. Chances are these new users are going to go back to Twitter since they’re signing up either expecting Twitter possibilities of interacting with big name people, or on a censored instance that blocks half the active parts of the fediverse anyhow that aren’t only sharing tips to use the fediverse instead of posting actual content.

I’m probably going to make another post in a day or so to cap the month off, but the SPARC has been running the instance surprisingly well. I’ve only not been able to stress test it more due to the fact that IRL I’ve been working crazy jobs. But I thought I’d do one more thing and show just how censorship resistant the fedi can be in comparison to say Twitter.

An attempt at GNU Social

In between trying to get Pleroma working on OpenBSD and struggling and using Debian I came up with a desperate attempt to get something on there, and that was using GNU Social. GNU Social was the “original” fedi software and it’s old as hell, but being FOSS it’s not exactly dead yet.

A story I often tell nerds because it’s quite fascinating is the story of when a guy I know (who was obsessed with old software, he had Windows 2000 and 98 on his regular PCs well into the 2010s) decided to start a vanity forum. This was the late 2000s, so websites like freeforums, invisionfree, and the like mixed with IRC chats were what online friend circles set up for themselves instead of Discord groups. Anyhow this guy had a genius plan, he loved IPB 1.3.1 (which was the last version of Invision Power Boards that had a free version, before everyone moved to PHPBB/SMF or shelled out for a VB license) so he wanted to start his own forum running it. Unfortunately for him, running web-facing software is in fact what the armchair security experts warning you that you’ll get hacked hooking up your Windows 98 to the internet did warn you about. I think it lasted maybe a week or two before some random skids or bots defaced his website and he had to move to PHPBB like a normal person. He wasn’t alone; the same went with people running old “nulled” versions of paid internet software like VB and later XenForo both due to possible built-in backdoors in pirated copies on top of security holes and flaws in the nulling process. Case in point: you could hack a “nulled” VB install by using leftover installer files.

There’s a reason I’m telling this unrelated story mind you. When Mastodon and especially Pleroma came onto the scene, GNU Social was left in the dust, abandoned. The Install Gentoo wiki pretty much has this to say on why instances moved:

“Simply put, GNU Social was a trainwreck. It was an inactive project written in cryptic PHP using a database library older than old grandpa Judd. Its default UI, while JS free, was akin to wading through waste deep mud in practice, and its only real alternative before Pleroma came around was Qvitter which was practically required for the instance to be usable. GNU Social was known for being a gigantic pain in the admin’s ass since it never worked quite right, especially its queue, which lead to instances “time travelling”, where they sent and received posts so slow it was like they were in another point in time, shitposter.club was particularly notorious for this as many users of the age will tell you. Mastodon unintentionally(?) had a habit of effectively collectively DDoSing smaller instances which choked out some small ones, leading a few instances to block Mastodon entirely. Ostatus documentation was complicated and at times near non existent. People had been writing alternatives in Java, Clojure, and Common LISP for a long time, some tried to fork GNU Social to try and make it not suck. Ultimately, Pleroma was designed by people who didn’t have as many brain cells as fingernails so naturally it started dominating easily. There is no reason to make a GNU Social instance at this point, just stick to Pleroma.”

Of course nobody on GNU Social would move to Mastodon. There was a massive culture clash between Mastodon instances that favored bans and censoring anyone who fell outside the hugbox, and the free speech zone of many legacy GNU Social instances. Many posts on the fediverse that still exist or were archived from this time period talked about a culture clash for a reason (which led to a post from a neocities site calling for a “GNU Social Jihad” with leaks about Eugen’s EU project to “fight disinfo”), and even on the Mastodon side there were culture clashes between Eugen and the users. For example in 2019, there were also disputes between Eugen and the userbase he had spent time attracting and the article goes into detail just how much different the Mastodon user mindset was like Twitter turned up to 11. Is it any wonder there were culture clashes when one side of the fedi basically threw meltdowns that topped Alex adding in quote posts:

“Raphen believes Mastodon is “getting better, slowly” thanks in part to new queer users challenging its “fragile” privileged queer users. But even then, the platform’s remaining queer community has grown increasingly upset with Rochko’s leadership. After Rochko unexpectedly introduced “trends” tracking for words, phrases, and hashtags in summer 2018, marginalized users who feared harassment from the feature criticized its unexpected implementation. Rochko replied with a toot, arguing he “built Mastodon the way I wanted” and that those who disliked the project should not “give me shit about your failed expectations.” “There’s the door, there’s the code, there’s the alternatives,” he on June 2.”

So of course the GNU Social side of the fedi embraced Pleroma and the rest is history. GNU Social fell to the wayside and nobody cares…or so it seemed anyhow to much of the fedi. I mean GNU Social at this point is either something users on SPC and similar instances reference to tell everyone else how much of an old poster they are, or would make jokes about moving back to similar to how hardcore Discord users circa 2017-8 (before the “groomer” and bad Discord admin stereotypes set in) would make jokes about moving back to Skype whenever there was an outage. See? The joke is that nobody uses Skype anymore or wants to use it and that it’s old and we’ve all moved on from it.

ditch discord

One of the cool things about FOSS software is that it doesn’t have that problem of “some company abandoned it and therefore it’s now useless”. Even if the original creator ditches the internet, has a giant schizo meltdown before ditching the internet, or ends up assassinated by the CIA, or gets hired away by a megacorp which has a “don’t work on this” clause in the contract (true story, don’t use your real name on your FOSS projects people), you can fork it and keep maintaining it meaning that as long as someone out there cares, it won’t die. Cue that line from Lain about gods having at least one believer to exist. GNU Social is one of them.

In my previous post that glossed over the history of the fediverse, I mentioned that GNU Social is pretty unpopular and quite frankly it is for a lot of reasons. It lacks all the cool features that Misskey/Pleroma/Rebased (formerly Soapbox) and even Mastodon are rolling out on the network. It’s been utterly left in the dust and it mostly was when OStatus was killed for ActivityPub. It’s written in PHP and numerous people have valid reasons to dislike PHP, such as a forum owner with numerous media attachments on his Xenforo site finding out that PHP is scaling horribly for the scale of his site. On the other hand some truly massive websites use PHP, so there’s that. Just like Pleroma, no node.js is needed meaning it can run on a non-x86 platform far easier.

But the thing is GNU Social has a few benefits. It doesn’t need sudo or root access, which is great if you’re somehow using a braindead VPS provider like Dreamhost that doesn’t let you get sudo/root access, or even worse a “shared” hosting plan (which was common before everyone and their grandma could get a cheap VPS from AWS/DigitalOcean/Linode/etc). It uses PHP, which literally every platform has as opposed to the trendy ones. It also still has a few maintainers and users who will use it until the sun eats the earth as seen by the fact it did get ActivityPub ported to it. Even better is that it doesn’t need Node.JS to run, which is great since Node only works on CPU architectures that Chrome works on, which is relatively few. So much for “write once and run anywhere” when your interpreter only works on a few platforms. Another difference between Pleroma and GNU Social is Pleroma is designed to use a web server internally and then apache/nginx/relayd to forward traffic to port 4000, while GNU Social uses the old school “cgi + php” method of being hosted. This means that to host GNU Social, you need a working PHP + Apache/nginx installation which a lot of platforms have.

A guy in Japan really loves it and he’s made a guide to get it working, along with a repository for a port of qvitter to newer versions. This isn’t too much of a surprise as Japan is notorious for being a place where old tech seems to find more fans over time who continue to be devoted users of it, and that is one reason behind the theory that Japanese web design is simpler (no really, look at yahoo.co.jp and then yahoo.com). GNU Social is also still in occasional development from someone else who took over the project once the original developer abandoned it. This is one of the cool parts about FOSS software, if the developer abandons it someone else can take over the project. Everything from dead programming languages to obscure messaging programs have been kept alive like this, but perhaps the most important example of this is what happened with Oracle. One of the reasons why Oracle is so hated is when they bought Sun; they basically killed Sun’s FOSS projects off or put them under bad licensing/management.

How did they community react? All of them were forked, in many cases by the developers of these projects. MariaDB was forked from MySQL, LibreOffice was forked from OpenOffice, and OpenSolaris (literally a FOSS version of the original Solaris source code) would become Illumos as OpenSolaris was completely halted. Even crazier is how Java was handled; when Oracle went to restrictive licensing for Java every big IT vendor and the FOSS community released builds governed by their license and support contract, including Microsoft (which is funny with the highly infamous Sun lawsuit and the aftereffects of it).

In this case, GNU Social (which is a GNU project, albeit one forgotten about by the FSF which uses Mastodon and called some QA session “Mastodon Hour” recently much to the disdain of much of the Pleroma side) had another developer deciding to revive the project. Which seems weird when it’s long since been left in the dust by the next wave of AP/fedi instance servers and most instances running GS switching to Pleroma, but you know how it is with FOSS projects. FOSS projects are where a 12 year old angry about a desktop environment change can fork it.

Let’s talk about how I prepared the system. First of all, I tried to upgrade my Ultra 45 to dual CPU except there was one issue; my RAM from the RX2620 had a CL3 value instead of CL2.5. I ordered some CL2.5 RAM on eBay so it can run faster. It’s pretty obvious the heatsink was pulled from an U25/45 destined for the recycler because the heatsink did have a small amount of rust on it. I then reinstalled the OS cleanly as I needed to organize my partitions better to get more space for /var/ (and to have less stuff running), and to be on a “stable” OpenBSD. This would turn out to be a good thing as I was finally able to use both CPUs as well as the OpenBSD kernel was initially telling me that CPU 1 was not loaded. This is something on the SPARC platform that OSes will do, they’ll load different kernels if SMP is detected during the install. This means that a dual CPU upgrade will require a new kernel.

Much of the problems I initially faced with setting up GNU Social had to do with running PHP scripts. See, PHP isn’t like the newer Elixir or Node webapps that run 24/7. PHP instead is rendered when there’s a request to the web server. So to start using the website I had to access it…which didn’t work at first as I had to keep configuring OpenBSD in all its weirdness. Two errors I ran across were the famous PHP source code error, and getting “Index Of /”.

firefox_H6QlH5LYnP

firefox_YUfmL0EWSK

Once I got Apache going (I used this instead of httpd), I found out there were a lot of weird OpenBSD things it did, such as using a single config file as opposed to symlinking enabled sites. The same went with plugins as well. This goes against every single “Apache for kids” article for Linux, so I had to figure that out. I also had to modify the php ini file to use gd instead of gd2. This gave me the initial install prompt and once it was filled out, it began to work. Setting up GNU Social is done different than Pleroma, as being a PHP script you have to navigate to it in the web browser with an install file, just like how you would install/upgrade WordPress or Xenforo/VB. Then you’ll see a progress screen and the site will be installed. If you’re running this in a real world installation you’ll want to delete or hide the installation files as well.

firefox_O6MWBr3mNv

firefox_nNkpwtr3Wq

Unfortunately I had another issue; GNU Social didn’t seem to federate well with anything that wasn’t GNU Social. I had one account follow me on Mastodon and I was unable to follow myself from Pleroma. I noticed it was hitting some json files or trying to. Plugins were also a pain to try to get working and despite anything I tried to point GNU Social to them, nothing loaded. I was also unable to get logs working for some weird reason, as ostatus messages were dumped to the OS message prompt instead of a dedicated log file. Someone else on Telegram suggested that I try to use Debian instead on SPARC64, which is what I used for Pleroma: non-x86 Debian.

firefox_evouo0yTp5

firefox_6PLFjBDqzE

So I pulled out a different HDD to experiment on, and I tried Debian again…because at that point I’m convinced that all of my issues are less due to SPARC weirdness and more from OpenBSD weirdness. The thing with OpenBSD is it’s not exactly a popular operating system, nor does it have mountains of documentation on it like the Arch or Gentoo wikis have.

I might experiment with GS later on some cheap VPS just out of curiosity since I am interested to see how well it holds up. But the problem is, GS doesn’t exactly play nice with OpenBSD either. So I wound up moving to Debian to get the server going on Pleroma and I might install GS on a Debian VM/VPS as well and see how it works.

There were a few issues some friends had with GNU Social as a project right now though, namely:

  • GS is in dire need of fixes for some cruft and it needs to be patched to work on PHP 8 (which doesn’t need much to make it work).
  • The project itself has pretty much been abandoned by everyone and the only person working on it is a busy college kid, and college is just like being at the wagecage except you’re paying money to go there instead of being paid to be there (in the hopes that one day, you might drive a 2010 W204 Benz like your boss does)
  • Even the FSF uses Mastodon these days now. Why did they call it the Mastodon Hour and not the GNU Social hour? Oh wait.
  • People on the fedi would rather touch a meme fork of Pleroma like Akkoma and write Francis E. Dec level essays about Alex Gleason’s plot to physically remove estrogen from the pharmacy instead of use GNU Social.
  • A lot of resources on using GNU Social are outdated as hell because you’re more likely to find someone with a SPARC server in production use in current year than using GNU Social, let alone version 2 or the “eventual” version 3.
  • It’s lagging hard in features when Rebased/Pleroma/Misskey are moving at the speed of bricks on the gas pedal.

With that said, a PHP fedi instance software might have potential if only it was more up to date, simply because it can run on a wide range of terrible web hosting setups that only let you dump php files. It’s just a shame it’s literally dead.

Pleroma Single User Administration for dummies: The Basics

When running a single user instance there are a lot of basics you need to get out of the way when hosting. Thankfully as someone who has run an instance before I know everything you need to do to be addicted to something that might get you friends instead of the depression fueling website.

AdminFE is your friend

To access AdminFE, simply login to Pleroma and click the gauge icon. If you’re an admin, you can click this icon and you’ll get a powerful frontend with access to any setting. When setting up Pleroma you will be asked if you want to keep this in a database so that AdminFE can manage it, choose yes so that you can.

With AdminFE, you’ll get access to most of the settings on the instance along with easy moderation tools. With a single user instance you likely can ignore most of them such as reports (which will turn into the “someone is mad on the internet” inbox). There are a lot of weird options of interest to retrocomputing enthusiasts such as a SSH interface option or a Gopher interface option (no really). I’m going to go over the most important settings to change.

Most of the important options are in the Settings area, and especially the Instance area.

Locking the instance down with privacy settings

Here’s the unfortunate reality; the internet of 2022 is filled with angry people. While these angry people usually aren’t going to show up to your house IRL while you’re on the toilet, they are really good at e-mail writing and accusing you of stuff you didn’t even do. This can result in you having to move hosting overnight. If you’re self-hosting, this is even riskier as you can lose your ISP at home and chances are you only have two ISPs in the area you live in. You don’t want to have to move to another ISP territory just for fiber (and to avoid Comcastic service) right? Chances are Section 230 doesn’t apply to a single user instance the same way it would a multi user one and even then it likely isn’t court tested since Pleroma is something that did not exist to the boomers who wrote these laws.

Which is where “restrict unauthenticated” comes into play. Restrict Unauthenticated allows you to select who can view local and remote posts. Disallowing remote posts and profiles means they don’t show up to users who are not logged in. Disallowing viewing the federated timeline means that someone won’t take a look at your instance and think that you were posting illegal opinions or running a site doing such when it was some user elsewhere.

Populating the timeline: Relays

One of the most unwritten rules about running a self-hosted instance is populating the timeline. On a multi-user instance this isn’t that hard, users will follow other users and the “whole known network” timeline will naturally populate with users and posts that the users of the site like. On a single user instance however this is entirely different. On Pleroma, federation only grabs posts from users you follow. So what if you want to expand the focus of the network to grab more posts and users? Simple, you can use relays. By default and by design, Pleroma automatically makes each instance a relay.

The format for each domain is https://{sitename}/relay. Not every single Pleroma instance runs a relay, and Misskey/Mastodon instances do not run them. Also it’s not uncommon for relays to fail to work. This option is easily available in the settings and allows more people to be seen on your instance. Keep in mind however following back doesn’t always work.

MRFs

MRFs are probably one of the more complicated tools in the Pleroma admin toolbox and they take a bit of reading to get working. Once you add MRFs however you get boxes to configure them.

Emojis

To add Emojis to your pleroma instance, there are a few places to find them such as this repo. I’ve been unsuccessful in importing them to my SPARC box using the script unfortunately. I think this is due to my CPU being too slow to the point erlang fails. I’m sure if you’re using a C2D or something it’ll work. But having blobcats on your Pleroma is very important because it has the escapist aesthetic nerds used to have before it got flushed down the toilet for pregnant man emojis and other stuff we all mock now (within Big Tech that is).

There’s more but I’m too burnt out and I have to go back to the wagecage tomorrow. This is the important stuff anyway.

Halfway in the month: lessons learned and reflections on the fedi

So it’s halfway into the month and I’ve learned quite a lot about hosting websites at home, non-x86 Linux ports, and just what one can use to host a fedi instance on.

First I’m going to talk about how the Sun is doing hosting the website. The system is hovering at around 10-15% CPU usage per CPU while idle and while it strains some when loading the site for the first time once it’s loaded it’s not that bad. Being that I’m using DDNS to host, I’m unfortunately limited in terms of setting up subdomains which rules out using Soapbox/Bloat unless I were to replace my FE with it. If I were hosting a website at home, I would spend a few bucks to get a domain since you can do far more with one IMO. I’ve also gotten more RAM for CPU 1 (since the first CPU is CPU 0) to allow both CPUs to have their own pool of RAM as opposed to crossing the other CPU for RAM.

But here’s the thing: hosting something is extremely easy. You don’t need to tweak much in your config files especially when examples exist, the hardest part is opening ports 80 and 443. Securing it is much harder and more involved, namely if you’re leaving the SSH port open to the internet. As long as you’re not doing something dumb like using some 90s version of IIS vulnerable to Code Red and other worms or hosting old PHP scripts like old versions of VB or WordPress, you’ll be fine. With Linux having pre-set config files these days it’s even easier.

The hardest part about getting the Sun working as a Pleroma instance server was twofold; the first problem was OpenBSD in general does a lot of weird things (especially with the Elixir/Erlang port, a friend said the port is very jank) and the second is that SPARC Linux has a combined problem of broken kernels and decline of interest. This was made worse by two factors; Sun releasing the documents for the UltraSPARC III line (which included the memory controller quirks) when that platform was a bit old, and FOSS operating systems aside from OpenBSD not supporting said hardware until it was museum display old. Debian Wheezy in particular was a garbage fire and when it wasn’t segfaulting, it was held back by the fact that it was a 32 bit userland with a 64 bit kernel. To make matters worse it required an UltraSPARC I or II cpu, it would not run on a III or newer. FreeBSD was also jank from when I tried it a while back, I don’t recall why I didn’t use it but I had a good reason not to. I’m sure always being on the verge of being dropped until it finally was didn’t help. NetBSD also didn’t get UltraSPARC III support until 2012 and it took a few years for the wiki page to be updated to “officially support” it.

I’m actually surprised that this worked, considering how Debian Wheezy was notoriously broken and how Debian for IA64 would straight up refuse to boot on many machines. The same went with Debian for Alpha having lots of unaligned access errors in recent versions, or how many NetBSD ports are broken. What I am impressed at is however how Pleroma seems to mostly work.

Some things like I said hammer the system. Logging in definitely causes both CPUs to shoot up to 100% as the system processes the login and it’ll take 15-30 seconds. Starting Pleroma on the Ultra 45 can also take upwards of 3-5 minutes as well as it loads in everything even with two CPUs. While there are 2 CPUs (physical and logical), they’re not fast ones by any means. Put it this way, Sun was known more for stability at this point than being fast or power efficient and there was a time period between the III and T1 where Sun kind of stagnated. There was a Niagara based workstation prototype that an Oracle employee posted on Twitter, but it was never released. This meant that the best workstation Sun ever released was using a dated CPU even for its time.

So what was the point of this? Simple. The point is that I wanted to show the world just how simple it is to host a site as someone who isn’t exactly a guru at web hosting, on probably the lousiest hardware CPU wise (that isn’t “out of support”) that I had and could easily think of. Back when it was easier to meet nerds who were genuinely cool people who weren’t solely pretending to be nerds for Twitter points, I remember there was an era where nerds living in their basement would host websites, game servers, and files with old 1u servers or Dell Optiplexes tucked under beds or in closets. Or more fittingly, they’d use a laptop with a broken screen/hinge as a server. It seems like in numerous countries, even some of the worst ones living wise, it’s not hard to find some Core 2 Duo desktop being thrown out, fully working, only because it’s too old and “slow” for Windows 10/11. In fact when Windows 11 came out I noticed more old desktops showing up at thrift stores in my area for a while. I’m sure said desktop could easily handle a fediverse instance, being that a Core 2 Duo is much faster than the SPARCs in this machine.

This is what’s great about Pleroma, it’ll run on literally anything for the most part that can be found in any ewaste pile or dumpster or thrift store. Even in countries where “all the old computers dried up”, you can still find some Core 2 Duo PC nobody wants because it’s not old enough to go for $200 on eBay but it’s old enough to be “useless” for a Windows user with 10 firefox tabs open and Netflix open. If for some reason the only server you can grab is some SPARC that you can get because nobody else knows what it does or even works, the same applies.

But it’s not just about hosting Pleroma. It’s about hosting a single user instance, which is perhaps the ultimate act of rebellion against the centralized “consumerized” internet of today, and definitely the idea of modern technology being for consuming content on centralized walled-gardens or “platforms” only. It’s a commonly referenced phrase after all in tech circles that this is what modern locked down tech is designed to do. The computer for many might as well be a TV and nothing illustrates this more than cheap tablets such as the Amazon Fire or modern day smartphones on the other end of the price spectrum. Nobody’s buying a Samsung to run Linux Deploy or use it as a portable desktop, they’re buying an expensive phone to watch videos during work and post on social media with. There are even some fears that PCs are going in this direction too as Windows 10/11 refers to your PC as a “device”, following up on the trend to rename software “apps”. Namely this was due to in part due to a popular post from an infamous Linux developer who claimed that Lenovo was blocking out Linux on their laptops that featured the Microsoft Pluton processor, when as it turns out Lenovo just didn’t enable the 3rd party Secure Boot CA by default along with the idea behind Pluton being to implement the security model behind the Xbox on your PC (with DRM and all).

Single user instances are also statements against having a single point of failure, be it a single ISP, VPS host, or instance, or rogue instance moderator. There is no single instance that can be taken down with court orders, or hacked by angry people online while the court looks the other way, or taken down because of crazy users saying illegal things, or shutting down because the admin had a bad day, or falling apart because the owner doesn’t want to pay the hosting bills, or falling apart because the owner/a moderator did something stupid.

This is very critical to the fediverse growing and sustaining said growth. Other social media networks or attempts at “alt” networks always have this issue. People will join it en masse, get tired with the quality of moderation or lack of activity, and leave to go back to their shiny cages. This was seen with Skype and when that fell, they went for the shiniest cage at the time (which happened to be Discord). Many posts were made on 4chan’s /g/ board back in the day about people who just wanted to get their friends off Skype, but they refused.

In fact, these posts highlight two problems the fediverse managed to tackle. The fediverse has managed to tackle usability with Soapbox and Misskey being polished and user focused, and its decentralized nature has prevented one instance owner from controlling the entire fediverse his way. Soapbox is so popular that at least one non-federated social network lifted its code. This is why the overbearing Mastodon moderators using fediblock failed, and this is why the owner of one of the largest fediverse instances throwing a tantrum over an emoji of his favorite podcaster’s wife has backfired in his face as well. But also being decentralized has also allowed anyone to join any instance and have people to talk to. In fact, attempts by users on the largest instance to gatekeep by bugging new users about monster girls have backfired since they simply made their own instance. This has completely revitalized any sort of opposition to the mainstream social media sites, as for ages they would always crash and burn.

I bring this up because years ago, I hosted a Mumble Server on a HP 9000 running Debian HPPA since I was finding a use for a computer I really liked for some reason. I was unfortunately unable to help move the chat group I was wasting my days in at the time over to Mumble because “that guy” who was using a Wal-Mart special laptop in a trailer park or mid 2000s Dell Optiplex couldn’t figure out how to use it. To make matters worse, as Mumble was isolated in an era where everyone is connected it’s a bit hard to drag your friends onto using one program for a specific chat.

I also bring this up because when a less-politically oriented alternative social media website (VidMe) crashed due to causes that weren’t related to “crazy people trying to wipe them off the internet” or “mismanagement”, they had a very blackpilled view of things. They were trying to do things the old way, the same way that numerous other non-mainstream social media platform owners find themselves unable to compete with. They wanted to run ads, but you need to create brand safe™ content with no subversion (and this was before the payment processor scandals affecting sites like PornHub, or Tumblr’s App Store scandal). But they mentioned another point with platforms doing things the “old way”, you can’t gain an audience or be seen on yet another walled garden that doesn’t have millions of people on it, and the only ones that managed to defy this were foreign language ones like VK or YouKu or Niconico (moreso when censorship rules are in place as with China). They were also trying to get big on the App Store, only to find out that on the rigged app store 2 companies control the top 8 apps.

I’ve seen the fediverse within a few years go from that weird place that only attracted the crazy people online, to mainstream in the niche circles online. Maybe the tipping point was when Jim joined, maybe the tipping point is when KF and rdrama.cc got affiliated instances, maybe the tipping point was the infamous Locksneedfartin Twitter hellthread about the word “sus” in the nagatoro dub that both advertised poa.st and spread awareness of Amazon sponsoring and tricking the world into mass sterilizing the mentally ill (no really), maybe the tipping point was when some Telegram e-celebs and podcasters joined the fediverse, maybe the tipping point was Twitter and other mainstream social media walled gardens amplifying censorship, and the roots were definitely in place in 2017 when Pixiv launched Pawoo. But I remember in 2018 a Discord group member described Mastodon as a place where “you will never want to hear the word estrogen again”, as he described how it took his friend and talked about how it wasn’t even funny. Others saw it as a place where those too neurotic for Twitter went. Now? Oh right, you’re more and more likely to see the great nerd diaspora online using it. It’s the last frontier where you can find people who feel like real people.

I take a look at the profiles of people I used to know on Twitter, including one I even met in real life at one point. When I met him in real life, he was remarking about how it didn’t feel real that I met him in real life. Looking at him now? Yeah, maybe I was on some premium drugs, except for the fact I recorded the encounter and have photos of it on my hard drive. He’s just another body with a barcode tattoo on his arm, and a hedonistic life spending all day playing video games and VRchat, and retweeting approved political opinions. Another vanished from the internet, after a drifting on the streets thanks to illegal drugs arc and having paranoid breakdowns (and throwing all his old friends under the bus). The rest of them are just boring Twitter NPCs who just retweet furry art, are in dysfunctional relationships, and might as well be background characters in a Bret Easton Ellis novel: cardboard cutouts all so similar that one of them could kill themselves and nobody would notice. I’ve also seen the same people who mocked me or saw me as weird for what I was into embrace the very things I was into when it got retweets in their circle. It’s funny how that works, isn’t it?

Then I look at the fediverse and gee, it’s where the last remnants of the old age went. Sure there aren’t artists en masse on there yet and there are plenty of low quality people you need to sift through to find the cool nerds, but a friend described the communities I’ve overlapped as making me rare. I’ll say this. On the fediverse there are more people like me. The nature of it also has been repelling to some of the worst people as well, as they are not banned from Twitter or lose interest in the fedi. Or they don’t get what is so nice outside their shiny cage.

On a unrelated note, I should become a writer. Write a book that’s like William Gibson meets Bret Easton Ellis, cyberpunk in a hedonistic world falling apart with daddy’s money and no future unless it makes the dopamine receptors activate. Or I’ll just give into my weird autistic interests to court some nerdy furries and maybe psyop them into being creative and doing something instead of just drawing art once in a while and going nowhere with it. That author photo is going to be me in sunglasses and a leather jacket in a basement, staring at some obscure UNIX workstation or a NEC PC-9821. I’ve met enough weird people online I could make this work. Let’s get back to the fedi though.

Of course self-hosting is clearly not for everyone, and that is why plenty of instances you can join exist. Even the ones I have had good experiences with that seem to be low-drama like shitposter.club, the9thcircle.club, or bae.st aren’t for everyone, and a lot of heavily marketed instances on both sides of the fedi notoriously have had strict moderation. You’re also more likely to be noticed if you join an active instance due to how the federation works, and moreso if you join one that has people interested in what you are who can help you get more popular/noticed.

There’s also a lot of unwritten knowledge about self hosting such as relays, privacy settings, and whatnot. With the state of the internet and since self hosting can make you more vulnerable than a section 230 protected social media site (especially with boomers and even Mastodon users who “don’t get” (either through lack of knowledge or in bad faith) that said objectionable post that showed up on your instance was federated), these are very important. I’m going to make a post or two about this in the remaining days of the month. I am also going to be focusing on OpenBSD some more possibly to weed out any bugs, along with touching on GNU Social as it’s a forgotten part of the fediverse. This is what I really want to talk about. I want to show people the unwritten facts that nobody talks about with self hosting a fedi instance.

Your System ate a SPARC! Gah!

Initially I didn’t use Debian SPARC64 for this project for one reason; the fully installed OS panicked at the end of the install. As serial didn’t work due to the bootloader I had no way of debugging the crash cause. But here’s the thing: I spent days trying to find out why Pleroma and later GNU Social wouldn’t properly work on OpenBSD (I have a post I’ll do later about the GS struggles). But I’m here and ready to make a big announcement: I do in fact have a Pleroma server running on a SPARC64 machine finally. I am probably the first person out there to pull this off, and it involved an old Debian kernel (and a poster in the mailing list telling me what kernel to use). I have no idea how long I’ll keep it up, or if I’ll migrate it to another SPARC system or similar oddball non-x86 machine. But it completely “just works” even if it’s a CPU hog (on these weak CPUs from what, 2001 and then updated in 2003-4, on a workstation from 2005-6 that was just a design from 2004 or so updated to have PCIe and SAS?)

So here’s the thing; I tried to use Debian and it kept panicking. But it didn’t take long for me to find out it’s a known bug with Debian. No really. Debian and Linux SPARC64 has been broken about two years now, and only on the UltraSPARC III/IIIi/IV (likely)/T1 CPUs, anything newer or older is perfectly fine. But if you use a newer kernel like 5.16, and especially 5.19 or 6.0, you’ll get the legendary “oops” error that many have seen in xscreensaver’s bsod module.

So I had to ask around and spent a day or so reinstalling Debain both to find out how to get a kernel that worked, and to get a working setup. I found out that what I had to do was this:

  • Install Debian from the latest 2022-03 install CD available here
  • Grab either the same kernel and udebs from the 2019-06-26 CD (here) or the later version.
  • When the installer is asking to select what roles you want, switch over to the other console and use busybox to wget the debs and install them.
  • Boot into the old kernel when GRUB comes up to ask you to choose an OS.

     

Until the bugs are fixed, you’ll want to hold the kernel package. Right now the bug keeps the OS from booting on the UltraSPARC III/T1 family but with the old kernel, everything just works seamlessly with no crashes from what I can tell. I then had to install Pleroma and use the latest bleeding edge release from the git (you have to with newer Elixir/Erlang), but once I did that I was able to get a stable server running in my basement.

 

So far CPU usage is hovering around 20% for both CPUs (I upgraded mine to dual-CPU) and jumping when I or someone else makes a post. I’m going to use this instance more to see what happens with the CPU usage and all, but it proves a point: Pleroma will in fact run on a piece of ewaste you find in the local dumpster. I’m also going to make a post about GS on OpenBSD since I already wrote it up and I also want to explore how that forgotten side of the fedi is as well. It does have a few interesting features, but unfortunately it’s in dire need of an update.

OpenBSD Current (or my last week during time before work)

After spending hours and hours to build GCC from ports, I found out what another one of my issues was: Erlang was too out of date for Pleroma to work. I was frustrated since OpenBSD and the BSD realm is known for not having backports like operating systems normal people can run like Ubuntu/Debian. Even worse, OpenBSD 7.2 isn’t out yet. For a while I felt like the guy in Falling Down trying to order breakfast, and then I found out that OpenBSD has this thing called -current which basically brings the system “up to date” with a snapshot. I’m not sure how well this will be to maintain but hey I’m only making this work for a month or so. So I installed –current by typing in a command to upgrade the distro (I later got told by someone that I could have just used ports current instead)…

…the box restarted…

…and I was in 7.2, able to upgrade packages…

…and then I had erlang 25 on my SPARC. Jackpot.

The next day, I was dealing with the usual, as in work drama with dumb stuff like timesheets and all. Gotta love stupid stuff like that. My first move was to redownload Pleroma from the git and restart the install from square 1 to see if it actually would work or blow up this time. Then it did blow up on more stupid stuff thanks to Erlang 25, which led to me trying the develop branch…and it finally built and I was able to configure it. My next problem (which I took care of the next day) had to do with postgresql having a different username on OpenBSD (you have to use “_postgresql” instead of postgres), along with an error about users not existing (which stackoverflow helped me with). Once this was done, I was able to create the database and finish setting up Pleroma.

And then I ran into problem number 1, my website won’t load. No matter if I tried accessing it on port 4000 or from relayd, while it would show accesses nothing would work.

My theory is that it has to do with the erlang crypto module being unable to load, either due to something with OpenBSD, SPARC, or the SPARC port of OpenBSD. It’s probably likely to do with the last one the most since Elixir has a port to Oracle Solaris 11.4 (which needs a T4 to run).

On a related note, something else I realized is that I’ve had more issues with OpenBSD weirdness and the documentation for the OpenBSD Pleroma install being out of date than I have using it on SPARC. OpenBSD for SPARC is truly a well-made operating system that “just works” for the most part, which is something that blew my mind since 9/10 of my Linux on non-x86 adventures end with crashes, dead IRC channels, and nobody knowing what they’re doing or saying “yes we know it’s broken”. OS wise it’d be great, except for the fact that once again, Pleroma doesn’t work.

The second CPU heatsink for my Ultra 45 also arrived in the mail. I’m going to save this for the weekend. I’m also going to try GNU Social on OpenBSD since it’s still in development, I know of at least one person still running a fedi instance on it complete with the Qvitter frontend like in the old days, and it’d be “retro” enough. I can’t run Mastodon or Misskey on here for a simple reason; node.js uses the Chrome JS engine which suffers from the infamous “only works on 2-3 arches” issue. It’s ported to PPC64 and ARM64 for servers and phones but good luck using it on a CPU architecture that the original owners clearly don’t care about anymore except for support contract milking. But GNU Social works on PHP.

Stay tuned for when I try to get GNU Social installed in 2022.

Installing an OS and software stack on the Sun Ultra 45 (thank you long build times)

There were two real OS options for what to go with on an Ultra 45 without spending all week trying to build a broken package and finding out that nobody cares about running anything new on SunOS anymore on SPARC except for Twitter users using Suns as shelf trophies and then complaining when anyone does anything with theirs. Okay, Solaris 11 has Elixir but it won’t run on my Ultra 45 and if I used this for a real world instance on a nicer SPARC machine I’m sure Larry Ellison’s band of lawyers would be at my door. If I had more time and didn’t care about exposing a Solaris 10 system with leaked patchsets (and CVEs) to the internet I might not care. But unfortunately, I’m running this thing online so I need something “up to date”. Or not if I firewalled off some ports, but it’s better to be safe than sorry.

Debian SPARC64 was a trainwreck to say the least first of all. No really. Aside from video issues where somehow the resolution of my CRT was improperly detected…

…and inability to boot Grub on Serial (leading me to hook it up to my monitor)…

…it has a broken glibc, the installer is apparently broken when apt getting packages, and I wound up with a Kernel Panic of some sort. I might debug this some other day, but I have a website to set up.

So I went with what works, OpenBSD. OpenBSD on the other hand was smooth sailing and it “just werked“. Unlike NetBSD, OpenBSD is a lot more proactive about dropping platforms with issues compiling or that nobody maintains, which is why SPARC32 and VAX are dead for it, but why it has a Luna88k port because some guy using a rare m88k workstation ports OpenBSD to it. I didn’t try NetBSD yet, but the good news is NetBSD now finally supports UltraSPARC III machines after years and support for the T series and SPARC64 Fujitsu machines is coming. It’s no shock really, the BSD guys still care about SPARC and to add to that, the BSD guys are notorious for porting it to everything (except the Intel Itanium). Case in point; FreeBSD had a PC-98 port while Linux barely seemed to touch it. Sure you might not get the pretty sprite art or the amazing FM tunes the PC-98 is known for, but you can run a server and X11 on one. Needless to say unlike Linux (which seems to keep breaking every other week on non-x86 these days), BSD just works anyway. I then named my system after an obscure Digimon because 9/10 furries haven’t watched Digimon but they should. Especially Digimon Tamers. Because it’s not just about a bunch of kids going on an adventure, but it’s also a commentary about technology itself and growing up.

The first thing I did was I went to no-ip.com to set up a hostname for now. I then began to run into some fixable problems with OpenBSD and Pleroma. Problem boiled down to something simpler; the documentation didn’t tell me I had to pkg_add libmagic as well instead of just ImageMagik. The second problem I ran into that was fixable was that OpenBSD didn’t have /usr/local/lib in its library path, when seemed to constantly break ports and compiling things because literally everything is in that directory. Unlike Linux which stores new installs in /usr/bin where /usr/local is only used by some users and older Linux programs (that are either UNIX ports or are closed source and need multilib), BSD does everything the old-school UNIX way. I used ldconfig /usr/local/lib to fix this issue since just like on old-school UNIX (AIX/HP-UX/Solaris/IRIX/OSF1 come to mind) you’ll run into issues since all the libs are in a different folder, made worse in that case by the fact that the old archive of binaries you found on some mirror of a mirror of a FTP that’s half complete decides to install everything in its own folder to avoid conflicts.

The thing with BSD is that just like Gentoo, “ports” is just a fancy way of saying “compiling by source”, it’s just made automated and isn’t the sole method of installing things. Well on some NetBSD platforms that are pretty much dead it is, but that’s NetBSD and some of the platforms such as prep don’t even boot anymore and the rs6k platform didn’t even work in the first place. The problem with this is, you’re waiting forever for dependencies to build one thing that the process choked on and then those dependencies, and then those dependencies, and then you’re hoping that one of them doesn’t have an endianness bug. As this takes forever to compile all of them at once (including a new version of GCC even thanks to the infamous GPL V3 changeover resulting in 4.2.1 being the version bundled with BSDs and Clang being not up to snuff on SPARC) on a single core, single thread, single CPU setup, I was able to get lots of things done around the house and pay my bills, along with side things like bounce ideas off friends for more furry art and crazy stories and scanning some books for someone else. Why do I spend time on stuff like this instead of writing out my schizophrenic story lore anyhow?

Anyhow day 1 was installing OpenBSD and day 2 is literally waiting all day for GCC 8 to build just to get Pleroma’s dependencies built. The next week I’m stuck in my wagecage but I will be sure to mess with it here or there on weekdays.

RetroChallenge 2022: Pleroma (On SPARC)

For the longest amount of time I’ve wanted to enter one of these things but I never had a good idea. Then during one of my 15-20 mile drives from work to home I came up with an idea. I currently run a small single user fediverse instance I plan on expanding to multi-user and I work with non-x86 servers at work. I came up with an idea, what if I could migrate my instance to something non-x86 when I go multi-user?

Then I remembered RetroChallenge is soon and I came up with a cool idea; I should run a Pleroma instance on my Sun Ultra 45. There are a lot of reasons why I wanted to do this and chose Sun hardware in particular:

  • If I wanted a faster SPARC server to hook up to a UPS for hosting in my basement, it’s not hard to find a T3/4 server for around the price of a Power7 system and definitely less than a Power8. I’m not sure I’ll go through with buying a higher-end one used as PPC64el has a brighter future.
  • Sun servers used to run the internet, including servers that were similar to and shared the same cases as the workstations.
  • As a reminder of what Oracle (one of the most hated companies in tech, thanks to audits especially) killed, after a buyout that the USA government pressured for.
  • While SPARC will probably live on as an embedded core via the LEON3/4/5 series and projects based on the OpenSPARC T1/2 such as OpenPiton (or in tons of Intel machines as a security chip), as a high-end CPU it’s going to be dead by 2030 when Fujitsu quits making SPARC servers. Oracle already is killing Solaris around the same time after they infamously laid off the Solaris and SPARC development team. I’ve heard many customers migrated from SPARC because of Oracle and if literally anyone else bought them it’d probably be doing better.
    • If the toolchains still work when the patents run out eventually it’d be a nice IP core tbh
  • It’s running on the last SPARC workstation made.
  • I’ll be able to see how well the SPARC64 OSes that aren’t Solaris hold up in 2022.

What is Pleroma and what is this fediverse thing anyway?

Pleroma is essentially a Fediverse Instance server software, or instance software for short. None of this will make any sort of sense without explaining what the fediverse is, so let me explain what the Fediverse is, how it works, and how Pleroma ties into all of this.

The Fediverse is a loose connection of “federated” social networks that all communicate with each other via ActivityPub, a W3C protocol to facilitate this. Some people call it “Mastodon” as one of the most popular servers that instances can run is named Mastodon (more on this later). A great way to explain this concept is to think of it like e-mail or the less popular messaging standard XMPP. You can create an account on a major e-mail website like Gmail or Yahoo or Proton Mail, but you can also run your own server. Oh, and because of spam sometimes running your own leads to issues with bigger e-mail servers that are overprotective.

The same thing applies with the fediverse. Anyone can run their own fediverse instance on a computer and instances can be anything from a single user instance hosted on a cheap VPS or computer in a basement, to a massive instance with hundreds of thousands of active users using it as a Twitter alternative. The main 4 fediverse instance servers are clones of Twitter, but there are federated blogging programs such as Writefreely, an instagram clone known as Pixelfed, a video sharing website called Peertube (that also uses torrent style p2p video sharing, like Bitchute but actually using P2P instead of claiming to), and more. If you wanted to make a clone of DeviantArt or Tumblr using ActivityPub, you probably could. This is why calling the fediverse the Mastodon network is like calling the internet the Chrome network.

Furthermore, Gab and Truth Social both use the Mastodon software stack in a non-federated mode. While the initial motive with Gab was to interoperate with Mastodon API clients such as Fedilab or Husky as their phone app was constantly being banned from the App Store and Google Play, there was also the advantage of having a pre-made and well tested Twitter clone server. These are not considered a part of the fediverse despite using the same software. Other instances such as Counter.social notoriously broke federation with other instances. Then there are other instances that while they’re part of the fediverse, so many other instances are blocked that activity flatlines.

The idea behind the fediverse and ActivityPub is that it works like e-mail but with social media, you can interact with other instances and grab posts from remote instances. Sometimes thanks to instance blocking however you can see, repost, and reply to posts from remote instances but they won’t be able to see you, and you cannot follow them as the follow request will never go through. Reports also work differently on the fediverse; if you click report the report goes to the remote instance owner for them to take action and see if it breaks their ToS. This is a massive culture shock for those used to one central moderation team as seen on FB and Twitter. Before a lot of instances that are not notorious for being block happy gained popularity, this was a major sticking point with fediverse adoption. In reality it’s led to two entirely different fediverse cultures that have wildly different mindsets at least on a surface level as the fediverse flourished despite all of this.

A bigger issue however is if you use a single-user or smaller instance, you might not see many posts in threads and especially not older posts from users. Each post fetched from a remote instance either comes from someone that someone else on the instance is following, or from “relayed” instances that you’ve added to a list. Any post on these relayed instances is then broadcast on your instance as well. By default Pleroma/Rebased run a relay service so any server following this can get all posts made as well.

But usability and functionality wise? It’s like if Twitter had anything you wanted. No really. It has emoji reacts, it has post editing, you can manually raise the text and upload limits, and the best part is you can host it yourself. If you feel left out of the fedi ecosystem and culture, you don’t need to be since you can run your own instance and invite your friends. In fact if you just want to go ahead and host it yourself on a VPS there’s a website called fediverse.express that lets you host it on a VPS. But the idea behind Pleroma is that you can host it on even a Raspberry Pi, and for network health reasons this is very important.

The culture is fairly unique as well, kind of like a mix between a forum, a Skype group from back in the day, and classic Twitter (pre-GamerGate and whatnot). If the fediverse initially boomed and has user influxes from Twitter controversy or Twitter banning some e-celeb, people tend to stay for the community if they’re willing to realize there’s more than just one instance.

So why run a single user instance? Maybe you don’t like the moderation policies of larger instances, or you don’t “get along” with the culture of many of them, or the one you do doesn’t have sign-ups enabled. But more importantly, you don’t need to worry about some instance blocking you from following a cool bot user because of an old blocklist. But most importantly it’s better for the health of the network, as it keeps users away from a single point of failure such as an instance going down from DDoSes or bad owners.

The software fedi instances run and their history

To understand what Pleroma is and why I’m running it, a brief history lesson on the fedi is required. I’m going to cut out a lot of unimportant drama that isn’t related to why the fediverse is the way it is. There are quite frankly a lot of things I don’t know about the fediverse history wise and I know that from 2017-20 I really wasn’t paying attention to it too much because quite frankly I heard about so many bad things coming from that part of the web. However in the last year or two the fediverse has really come into its own popularity wise, and in the last few months in particular two things have sent many running towards it: Elon Musk possibly buying Twitter and a popular YouTuber named Jim having his latest alt banned from Twitter for laughing at the latest Twitter drama. The latter in particular led to him finally leaving Twitter for good with thousands of new sign-ups in September for the instance he used, thousands more with his latest stream now namedropping this site, and then more creating or joining other instances with different focuses.

In the early 2010s when libertarianism and free speech were still trendy topics in nerd circles online, an “alternative” to mainstream social networks was created. This would be known as StatusNet and later renamed to GNU Social. The difference between GNU Social and other attempts at this was GNU Social was federated. After receiving support for the OStatus protocol in 2010, GNU Social over time slowly developed for a few years in obscurity. Thanks to Twitter ban waves and bans of a few popular people in the mid 2010s, GNU Social for a time gained a small niche community, notably including many using the frontend Qvitter (a clone of “old Twitter”). After all GNU Social and many fedi instance servers are flexible and let admins choose their own user interface “frontend”, or for privacy concerns even ditch a frontend completely and force you to use a local client (I’ve seen this before). Needless to say most of the big instances ran Qvitter since it was simply vastly superior to the stock GNU Social frontend.

GNU Social and the fediverse mostly were confined to an underground community of diehard nerds who actively embraced this obscure protocol and saw it as the future, until 2017 in which the “Eternal February” as some old users called it happened. That’s when Mastodon really came onto the scene. Mastodon was the same idea as GNU Social but released in a different era with a different mindset; if GNU Social was made by the old guard of “bits are not a bug” nerds who wore DeCSS t-shirts, than Mastodon was made for and by a new crowd angry that Twitter wasn’t censoring hard enough, the same people who would have embraced blockbots and block chain extensions on Twitter. This is reflected in the early marketing and fluff pieces for Mastodon billing it as “Twitter without the Nazis“, along with Mastodon introducing a few controversial features such as instance blocking (which is very important for blocking spam and illegal content, but often misused to the point it soured the idea for many who saw it on paper). Yet despite all this as Twitter enacted ban waves the intended audience didn’t come towards the fediverse. Instead two kinds of people actively embraced Mastodon: those who were censored on and/or who felt out of place on mainstream social media sites, and nerds.

But despite what one might think of Mastodon and its developers/users, it was extremely well marketed to the point that for many outsiders and Mastodon users, Mastodon means the fediverse. Its developer, Eugen Rochko, took a vastly different approach to marketing Mastodon by taking the “rockstar developer”/tech prodigy route. He had an interview with Mashable, and Wired ran a fluff piece on it too, and so did NYMag, and so did Engadget, and so did The Verge. One month later a journalist at the Verge talking about it mentioned the one thing that made the fedi stand out; it really feels like you’re on a community as opposed to a generic social media site but with a smaller scale.

Mastodon being the best marketed is also reflected by the fact that Mastodon instances oftentimes have it in the name and domain. But Mastodon isn’t solely the only game in town. There was a definite culture clash between the GNU Social instances and the Mastodon instances, especially when a lot of nerds used GNU Social. These nerds didn’t just have a massively different culture, but there were also problems with OStatus and GNU Social’s old PHP code. OStatus namely didn’t play nice with Mastodon or the scaling up of the network, and Mastodon instances became notable for “DDoSing” GNU Social instances. There was also the feeling that Eugen was using GNU Social to “piggyback” off the popularity of it to boost Mastodon initially, and a classic disdain for all the new users on Mastodon instances.

Eventually GNU Social was showing its age and the PHP codebase of it was quite frankly jank. This is where Pleroma came into the picture. Pleroma was created by a pseudonymous individual known as Lain (named after the girl from Serial Experiments Lain; an anime which is highly popular in nerd circles) and others in the GNU Social camp tired of the lack of development and stagnation with GNU Social. One of the major reasons instances moved over was also important; OStatus was being deprecated in Mastodon in favor of ActivityPub due to the network problems and GNU Social out of the box didn’t support it without addons. While Pleroma supported OStatus longer, this was removed when GNU Social had an ActivityPub addon for the few instances that continued to use it.

Pleroma became a popular instance server for instances that used to run GNU Social, but it stood out in more than just “who created it”. It’s a lot easier to run and lighter than Mastodon. It also over time added features that Eugen would never add such as reactions, and really pushed the idea of multiple frontends. While Mastodon gained a reputation (especially among Pleroma users) for being run on instances with excessive amounts of rules that make you feel like you’re walking on eggshells, Pleroma also seemed to attract a userbase who wanted the old days of the internet back, before their entire Skype/Discord group of friends they had back in the day imploded and learning “where are they now” became quite depressing. Eventually as the fedi boomed, more brand new instances began to run Pleroma as well.

As Mastodon boomed in Japan thanks to Twitter banning some artists and whatnot, Pixiv launched a Mastodon instance called Pawoo and other instances followed. Anyone with a Pixiv account can log in to Pawoo and this gave Mastodon a free audience there. More instances in Japan boomed and eventually some developers in Japan came out with their own fedi instance software: Misskey. I’m not a fan of it, page loading in it is bloated and the whole thing is written in Node but it has plenty of fans.

These instance servers have been forked off many times, in part because the licensing of most fediverse instance servers (the AGPL) requires you to release the version of the code you run on your site if you modify it. Most of them were for specific websites running their own modified version but one notable exception comes to mind. Early on a controversial social networking site known as Gab forked Mastodon and while they initially federated with the rest of the fedi, they later decided to run Mastodon as a standalone, unfederated instance only.

This fork was then used to run a social media site called Spinster. The developer of that version, Alex Gleason, then took the fork in an entirely different direction as a frontend for Pleroma and added his own features to it. This would be called Soapbox or Soapbox-FE, and it could run with either Pleroma, Mastodon, or Soapbox-BE as the backend. After an OpenBSD style split with the Pleroma developers, his fork was then renamed to Rebased. Rebased namely adds in features that Pleroma is missing that Alex wanted to add to Soapbox (but couldn’t due to developer friction) and the long term plan is to remove a lot of cruft from the Pleroma codebase and diverge quite a bit from Pleroma.

Soapbox while being based on Pleroma and able to run as a frontend for it, also has one feature that makes it stand out. The user interface isn’t just based on Twitter but is highly polished and easy for someone who is literally bad with computers to use. Don’t take my word for it, Alex feels that the reason the fedi and other FOSS projects struggle is from bad user design, and this is why Soapbox tries to be “Twitter but better” as opposed to emulating some old Twitter interface or Tweetdeck. Soapboxes user interface has led to it becoming popular for most Pleroma instances to run as an option or as the sole frontend. There were a few other Pleroma forks for political reasons but most of these ended up never getting off the ground.

One more frontend worth mentioning due to the topic of RetroChallenge is BloatFE, a JavaScriptless frontend that is designed to work in even old web browsers and require minimal resources. This is also popular with many “nerdy” Pleroma instances as well, with the name being ironic due to its lack of bloat.

It’s very important to note that unlike what some would have you believe, the choice of software for an instance to run is never a good indicator of the kind of posters on it as much as the rules are. There are absolutely stupid flamewars about software choice on the fediverse daily that make the OS wars and console wars look like Sunday school. No really. There are terrible Mastodon instances nicknamed “canceldon” for their long list of rules, long list of defederated instances, preemptively defederating other instances because a user said something they don’t like, and inevitably collapsing under stupid drama, but then there are also Mastodon instances with numerous topics and even political views Eugen would hate. Ditto with Pleroma being seen as software for “Nazis” despite the fact that many leftists run it and at least one open LGBT member is on the development team. If you don’t believe me, ask yourself this, were tech flamewars in the 90s this bad to the point of “block anyone who uses X”;

The only instance server you probably will never run into is GNU Social, because GNU Social is pretty much dead in the water at this point. As it’s playing slow catch-up with what the other fedi instance servers were feature wise years ago, newer fedi instance servers are adding in things like post editing and reactions. Just about everything migrated off of it and GNU Social nowadays exists as a joke that some fedi users will mention running ironically when they’re angry with something Pleroma did.

My choice of using Pleroma mostly comes down to performance. It can run on a Raspberry Pi and there’s even a distro for it, and when Spinster.xyz moved to Pleroma as opposed to Mastodon performance went up massively. I’m sure it won’t be too hard to run on the Sun.

The Workstation

The hardware I’m using to host this is a Sun Ultra 45, the final SPARC workstation to be released by Sun. Released in 2006 and discontinued in 2008; the Ultra 45 was released at the tail-end of the UNIX/RISC workstation era. At one time Sun workstations and servers were literally everywhere, and as a kid I ran into them for the first time turned off at a college during some summer thing for younger kids back in the day. I always wanted one and years later I would end up getting my own, if only I was older, had money, and knew of eBay and Suns at the time. But then again there are so many old computers I wish I got when they were cheaper on eBay.

By far Sun was the largest UNIX workstation vendor and even today you can still find the more mass produced and lower-end Sun workstations from the late 90s and early 00s on eBay for a low price. But the higher end and later workstations fetch a pretty penny from collectors and business owners keeping their old stuff going.

The Ultra 45 uses final Sun design language after ditching the iconic early 2000s “colored plastic” designs used for the Sun Blades and the Frog Design cases of the 90s. Gone are the legendary plastic and metal cases and in is a brushed metal case reminiscent of the Power Mac G5 and “cheese grater” Mac Pro. This is the same design language Oracle would use until they discontinued SPARC server development and similar to what was used on the Fujitsu Oracle branded SPARC servers as well. Remove the side panel and just like the G5 there’s even a clear plastic panel but with the Sun logo as well. This case and variants with the same design language were shared for the x86 based Sun Ultras of the era which could run x86 Solaris and became popular for installing modern components in them years after they were obsolete. The Sun Ultra 40 also shares a near identical case to the 45, but with x86 instead and firewire ports on the front. The end result is a beautiful machine and a fitting send-off to this era of computing. While it wasn’t the last Sun workstation made (the final one to be discontinued was the Ultra 27, a Xeon based machine discontinued right around the time of the Oracle buyout being finalized) it was the final SPARC machine made as these x86 based Suns were literally just normal PCs in a Sun case.

IMG_20221001_205450

The hardware itself is similar to the Blade 2500 (silver) and even has a CPU of the same type and clockspeed. Just like the Blade series, the custom Sun keyboard and mice have been replaced with USB ports allowing any normal keyboard/mouse to work and 13w3 has been replaced with VGA/DVI.

However there is a major difference; the Ultra 45 has PCI Express and SATA. The Ultra 25 was a cut-down version of the 45 with one CPU socket instead. Despite the time period these last Sun workstations did not get the UltraSPARC IV or T1 CPUs that the servers got. Instead the emphasis was on being quiet and polished for office use and they sure delivered there. The system is a lot quieter than the Blade 2500 is, with larger fans at lower speeds, and it was based on the lower end Sun servers such as the Sun Fire V245. This isn’t uncommon, many SPARC workstations that were higher end were based on the lower end servers and earlier SPARCstations/Ultras were even sold as SPARCServer or Enterprise models, such as the SPARCserver 20 or Ultra 1 Enterprise. Towards the end, pretty much all of the final UNIX workstations were based on server hardware with modifications for use as a desktop, such as quieter fans, deskside casing, and video cards.

It wasn’t as fast as many X86 workstations were, but the system could handle up to 16GB of RAM. This was the main advantage UNIX workstations had before 64 bit Windows was a thing. Being a UNIX workstation, naturally I can hook it up via serial and use it headless. If only PCs let you do this…

Mine has one CPU (unfortunately) however I can source another easily and I likely will. The GPU is also low-end, being the XVR-100 (Radeon) GPU instead of the XVR-2500. I also have more ram set aside installed in my HP RX2620 if I need to swap it over. I also have a Sun Blade 2500 with 2 cpus already but I’m not using it as I don’t want to put more heat around the rare prototype XVR-2200 GPU if I’m not using it.

The software stack I’m going to be using is either Debian-Ports SPARC64, or OpenBSD SPARC64, depending on what I can get working. Aside from being more familiar with those, they also have ports of Elixir compiled for SPARC and fewer security holes than old versions of Solaris. While illumos exists, thanks to the high cost of workstations among collectors and lack of cheap availability for newer machines SPARC support was dropped. If these other OSes work is another story, and if I can’t get Pleroma working here I’ll have plenty of bug reports to file for these two OSes and Elixir. I’m almost certain OpenBSD will work being that a few years ago it did perfectly on the same box.

The idea of these posts

With these blogposts the goal is going to be twofold: the first goal is going to be to help anyone setting up a self-hosted single user (or small multi-user) Pleroma instance. I’m going to show you how to get past some quirks and pitfalls such as the infamous “missing post” issue and tightening up the privacy settings. But I’m also going to document how well Pleroma runs on old weird non-x86 machines, along with Linux/BSD. It’s a lot harder to use old server hardware with the original OS anyway for its intended purpose in the current year especially with numerous CVEs in old versions of OSes and serverside software not existing for old UNIX operating systems.

I’ve seen some people worked up over running newer Linux or BSD on these old machines, but the thing is it’s better to be using an old machine than it is to use it as a prop for retrobattlestation setups or as another machine in a storage unit/hoarder nest. Which is why I’m seeing how well this works on it, because Linux for SPARC64 is in theory more modern than Solaris 11 and its eternal stagnation is.

So there you go. I’m going to be trying to run the future of social media, on hardware left behind by mergers and buyouts that quite frankly should have been blocked. It’s the opposite of that Facebook HQ former Sun sign after all for a reason.

Design a site like this with WordPress.com
Get started