top | item 46416618

Self-hosting is being enshittified

105 points| StrLght | 2 months ago |troubled.engineer

118 comments

order

apexalpha|2 months ago

This blog seems to be from "that side" of the self-hosting world: the homelabbers.

If you ask these people you need to buy expensive hardware and build your own datacenter at home.

I have been hosting all my services on a single Intel Nuc from 10 years ago and a RPI5 as backup for critical services like DNS.

That's it.

You'll truly be amazed at how much stuff you can actually run on very little hardware if you only have between 2 and 5 users like in a family.

Also, MinIO was always a enterprise option. It was never meant for home use. Just use SeaweedFS, Garage or so if you really want S3.

Sidenote: You do not need S3 in your house. Just use the filesystem.

KolenCh|2 months ago

I think there’s a spectrum and you said it as if there’s only two sides.

For me personally, I built my “data centre” as cheap as possible, but there’s a few requirements that the computers you’re using would not cut it: storage server must be using ZFS with ECC. I started this around a decade ago and I only spent ~$300 at the time (reusing old PSU and case I think).

There are many requirements of a data centre that can be relaxed in a home lab settings, up time, performance, etc. but I would never trade data integrity for tiny bit of savings. Sadly this is a criteria that many, including some of those building very sophisticated home cluster, didn’t set as a priority.

8fingerlouie|1 month ago

> You do not need S3 in your house. Just use the filesystem.

For your home, no, you don’t need it. But if setting up a remote backup, ie at your parents / in-laws / children / summerhouse / whatever, S3 can help cut down on network traffic by offloading checksum calculations to the remote server. It won’t help (much) with backups, but verification of backups will be much faster as you don’t have to transfer everything back home to verify it like with SMB.

rkwz|2 months ago

> I have been hosting all my services on a single Intel Nuc from 10 years ago and a RPI5 as backup for critical services like DNS.

Yes, fully agree with this and I've a similar setup. I even started with using wsl on the default windows install hoping to switch later to linux, but didn't have much need for this. Only gripe is tailscale seems to be flaky (rare) in windows.

Better to start with something small and cheap, see if it solves your needs and then upgrade if needs. Don't overcomplicate things based on what others do.

crapple8430|2 months ago

A powerful enough machine (usually limited by RAM, not CPU) will let you run a hypervisor OS like Proxmox which helps a lot with making things secure and flexible. You might also want to have RAID, ECC memory. It quickly starts to make sense to build a proper home server rather than cobbling together a bunch of low end hardware. The tipping point is probably when you want more than 1-2 hard drives worth of storage.

ivanjermakov|2 months ago

Man, "homelab" is such a wide term. For some it's an old Android, for some it's a literal datacenter in a basement. And everything in between.

Goals are vastly different too. For some it's about hosting a few services to be free from company slop, for others it's a way to practice devops: clustering, containers, complex networking.

Seeing someone recommending Proxmox or Freenas to a beginner that just want to share family photos from an old laptop is wrong in so many ways...

zzyzxd|2 months ago

I used to be on the side of single NUC, but when my self hosted services became important enough, I realized I need to take security and reliability seriously, you know, all the SysAdmin/SRE stuff, and that's when I started moving to "that side".

ku1ik|2 months ago

There’s always risk of a rug pull or going the wrong direction with “open-source” software developed by a for-profit company (Plex, MinIO, Mattermost in this example).

When choosing software that I run in my “homelab” I lean towards community developed projects first. They may not always have as high quality as the ones offered by commercial entities but they’re just safer for the long term and have no artificial limits (Plex). I used to be a happy Plex customer (I have Plex Pass) but several years ago I had enough of their bullshit, switched to Jellyfin and couldn’t be happier!

apexalpha|2 months ago

Another Plex (Pass) user here. What exactly is the bullshit you deal with?

Over the years I have been streaming all my movies and shows to as many people I want.

Plex added HDR support for transcoding, live subtitles syncing and more.

Especially the subtitle syncing is fantastic. It completely solved the problem.

the_snooze|2 months ago

Maybe I'm missing something here: the great thing about self-hosting is that you choose if and when you update your back-end software. What's stopping self-hosting admins from simply staying on a known good version and forking that if they so desire?

figmert|2 months ago

Security updates is what's stopping them often.

You also realistically can't fork things unless multiple people do, and they all stay interested in the fork.

wmf|2 months ago

you choose if and when you update your back-end software

That's what we say it's about. But it's really about open source devs being our slaves forever. Get to work, Mattermost! (whip crack)

wrxd|2 months ago

It’s even better than that. You no longer like Plex? Alternatives like Jellyfin are there, you can use them on the same media library

goku12|2 months ago

Self-hosted FOSS apps are probably the best push towards computing freedom and privacy today. But I wish that the self-hosting community moved towards a true distributed architecture, instead of trying to mimic the paradigms of corporate centralized software. This is not meant as a criticism against the current self-hosted architecture or the apps. But I wish the community focused on a different set of features that suite the home computing conditions more closely:

1. Peer-to-peer model of decentralization like bittorrent, instead of the client-server model. Local web UIs (like Transmission's web UI) may be served locally (either host-only or LAN-only) as frontend for these apps. Consider this as the 'last-mile connectivity' if you will.

2. Applications are resistant to outages. Obviously, home servers can't be expected to be always online. It may even be running on you regular desktops. But you shouldn't lose the utility of the service just because it goes offline. A great example of this is the email service. They can wait for up to 2 days for the destination server to show up before declaring a delivery failure. Even rejections are handled with retries minutes later.

3. The applications should be able to deal with dynamic IPs and NATs. We will probably need a cryptographic identity mechanism and a way to translate that into a connection to the correct end node. But most of these technologies exist today.

4. E2E encrypted and redundant storage and distribution servers for data that must absolutely be online all the time. Nostr relays seem like a good example.

The Solid and Nostr projects embody many of these ideas already. It just needs a bit more polish to feel natural and intuitive. One way to do it is to have a local daemon that acts as a gateway, cache and web-ui to external data.

apexalpha|2 months ago

Sounds like you want a k3s based homelab and then connect it all with Tailscale or Netbird.

FWIW: My Intel Nuc on Ubuntu LTS with a cron apt update / upgrade job works for years without a hickup.

I have reliable electricity and internet at home, though.

renewiltord|2 months ago

If you want someone else's software you have to play their game. If you want software to be perfectly aligned to you, write it yourself. It turns out lots of so-called engineers are just script kiddies. They think they're doing engineering when they run someone else's `vagrant up` then get upset when the someone else upgraded from 4.1.0 to 4.1.1. Write your code. Become ungovernable.

retrodaredevil|2 months ago

I don't really like that "enshittified" is being used here. You could argue that Plex, MinIO or Mattermost is being enshittified, but definitely not self hosting as a whole.

Enshittification also usually implies that switching to an alternative is difficult (usually because creating a competing service is near impossible because you'd have to get users on it). That flaw doesn't really apply to self hosting like it does with centralized social media. You can just switch to Jellyfin or Garage or Zulip. Migration might be a pain, but it's doable.

You can't as easily stop using LinkedIn or GitHub or Facebook, etc.

overtone1000|2 months ago

Ctrl+F "jellyfin" to find this excellent comment.

jghn|2 months ago

Same. I have been using Plex for 15 years. For my personal use case, it has not changed, ever. I don't encounter any "enshittification". For my purposes it continues to be exactly what I want, just as it always was.

goku12|2 months ago

> You could argue that Plex, MinIO or Mattermost is being enshittified, but definitely not self hosting as a whole.

That's probably not how you should interpret it. Self hosting as a whole is still a vastly better option. But if there is a significant enough public movement towards it, you can expect it to be targeted for enshittification too. The incidents related to Plex, MinIO and Mattermost should be taken as warning signals about what this may escalate into in the future. Here are the possible problems I foresee.

1. The situation with Plex, MinIO and Mattermost can be expected to happen more frequently. After a limit, the pain of frequent migration will become untenable. MinIO is a great example. Even the crowd on HN hadn't considered an alternative until then. Some of us learned about Garage, RustFS and Ceph S3 for the first time and we were debating about each of their pros and cons. It's very telling that that discussion was very lengthy.

2. There is a gradual nudge to move everything to the cloud and then monetize it. Mandatory online account for Win11, monetization of GH self-hosted runner (now suspended after backlash, I think) and cloudification of MS Office are good examples. You can expect a similar attempt on self hosted applications. Of course, most of our self-hosted software is currently open source. But if these big companies decide to embrace, extend and extinguish it, I'm not sure that the market will be prudent enough to stick with the FOSS options. Half of HN was fighting me a few days back when I suggested that we should strive to push the market towards serviceable modular hardware.

3. FOSS projects developed under companies are always at a higher risk of being hijacked or going rogue. To be clear, I'm not against that model. For example, I'm happy with Zulip's development and monetization model - ethical, generous and not too pushy. But mattermost shows where that can go wrong. Sure, they're are open source. But there are practical difficulties in easily overriding such issues.

4. At one time, we were expecting small form-factor headless computers (Plug computers [1]) like SheevaPlug and FreedomBox to become ubiquitous. That should still be an option, though I'm not sure where it's headed, given the current RAM situation. But even if they make a come back, it's very likely that OEMs will lock it down like smartphones today and make it difficult for you to exercise your choices of servers, if not outright restrict them. (If anybody wants to argue that normal people will never consider it, remember how smartphones were, before iPhone. We had a blackberry that was used only by a niche crowd.)

[1] https://en.wikipedia.org/wiki/Plug_computer

reactordev|2 months ago

If you’re self-hosting, do you need 128GB of ram?

I suspect you don’t. I suspect a couple of beelinks could run your whole business (minus the GPU needs).

goku12|2 months ago

What I understood is that the author is hoarding them for the future - not because there is any need for it right now. You could argue that it's too much RAM even at end of server's useful lifetime. But who knows? What if he end up running a few dozen services on it at that time?

Honestly, the problem that they're preparing for, isn't any of our fault. This is inflicted upon the world by some very twisted business models, incentives and priorities. It's hard to predict how it will all end up. Perhaps the market will be flooded with tons of RAM that will have to be transplanted onto proper DIMM modules. Or perhaps we might be scavenging the e-waste junkyard for every last RAM IC we can find - in which case, his choice would be correct.

ryukoposting|2 months ago

I've been running syncthing, HA, Samba, jellyfin, and some home made stuff on a Celeron NUC with 8GB. Works fine.

some-guy|2 months ago

I run quite a few services with a used Dell Wyse 5070 thin client PC from 2018 with 4GB of ram.

trollbridge|2 months ago

I self-host and generally put 64GB of RAM in servers (DDR3, thankfully). Certain arrangements of Docker-based services simply chew up a lot of RAM.

boltzmann-brain|2 months ago

> I suspect you don’t

...today.

If you're self-hosting, do you need 640K of ram?

abestic9|1 month ago

I was expecting a mention of all the repositories that are popping up primarily developed by AI prompts. The UI and the READMEs are full of the typical patterns (emojis, gradient/glow CSS effects, em-dashes, etc) and seem just-put-together-enough to slap up an r/selfhosted post and gain a few dozen stars on GitHub.

lazylizard|2 months ago

in the last 5-10yrs...letsencrypt made ssl much easier..and its possible to host on small,cheap arm devices...

yes no more dyndns free accounts... but u can still use afraid or do cf tunnels maybe?

and in some cases nowadays u can get away with

docker-compose up

and some of those things like minio and mattermost are complaints about the free tier or complaints about self hosting? i can't tell

indeed the easiest "self hosting" ever was when ngrok happened.. u could get ur port listening on the internet without a sign up... by just running a single binary without a flag...

CuriouslyC|2 months ago

Mattermost is infamous crippleware and they charge more than slack for a worse product if you pay. Use Zulip.

ls612|2 months ago

Nowadays for self hosted DNS the solution I use is Pihole + Tailscale (for the Pihole DNS anywhere) if I could figure it out in one afternoon it is pretty idiot proof.

empressplay|2 months ago

On-premming your Internet services just seems like an exercise in self-flagellation.

Unless you have a heavy-duty pipe to your prem you're just risking all kinds of headaches, and you're going to have to put your stuff behind Cloudflare anyway and if you're doing that why not use a VPS?

It's just not practical for someone to run a little blog or app that way.

nulbyte|2 months ago

It's not that much headache, and this isn't necessarily about public-facing sites and apps.

Take file storage: Some folks find Google Drive and similar services unpalatable because they can and will scan your content. Setting up Nextcloud or even just using file sharing built into a consumer router is pretty easy.

You don't need to rely on Cloudflare, either. Some routers come with VPN functionality or can have it added.

The self-hosting most people talk about when they talk about self-hosting is very practical.

adastra22|2 months ago

I don’t think you understand what on-premises means.

trueismywork|2 months ago

Some of us have have LAN for our offices and TBs of data.

globalnode|2 months ago

time marches forward but instead of progress we go backwards. expect to write your own software on limited resources like its 1990 again.

hsjdndvvbv|2 months ago

Honestly maybe we could learn a thing or two from 1990's computing?

Running an OS in 16-32mb ram with GUI...

Memory management for programs...

BrandoElFollito|2 months ago

> Self-hosting has always been hard, and it's not getting easier.

Oh yes it is. I already self hosted stuff back in 2000 and it was very hard. Then came docker and it is very simple now.

Sure "very simple" mean different things to different people, but if you self host you need to know a lot already.

This is somehiw similar to amateur electronics. You used to do 100% yourself from scratch. Now you have boards and you can start in z much simpler way.

wltr|2 months ago

Hey, but what’s up with DDR3?

> Even old hardware isn't safe: DDR4 prices are also affected, so that tiny ThinkCentre M720 won't save us.

Most of my home infrastructure is DDR2 or DDR3. It’s plenty fast for quite a lot of things. I really don’t care whether some background operation takes five minutes or an hour. I rather care how little energy and heat that machine produces.

PessimalDecimal|2 months ago

2/3 of this article is about DRAM prices. How is that "enshittification" of self-hosting?

weikju|2 months ago

Maybe the remaining 1/3 answers the question.

Imustaskforhelp|2 months ago

Although the points regarding the software itself which we self host which is getting enshittified is somewhat valid, I feel like we can still see forks,migrate and many other things so I am not particularly worried about it

But the biggest thing I am worried about is the hardware prices too.

So I want to ask but is there any hardware (usually ram) which isn't getting its price increase insanely much? Perhaps refurbished or auctioned servers?

What is the best way to now get hardware which is bang for its buck? Should we even buy hardware right now or wait 3-4 years for factory production to rise and AI bubble to crash, I definitely think that ram prices will fall off very steeply (its almost a cycle in the ram business)

I am not sure but buying up small levels of compute feels like a decent idea if you are doing anything computationally expensive and of course if you have something like plex, then I suppose you have to expand on the storage part and not so much on the ram part (perhaps some encoding/decoding which could be ram intensive but I don't know)

I had gotten into the rumour that asus is ramping up chip production or smth to save hardware but it turned out to be fake so not sure how to respond but please some hardware company should definitely see this opportunity smh.

wrxd|2 months ago

What do you want to run? Small services with an handful of users? Anything can serve them. Media libraries? As long as you have a CPU with QuickSync you’re good for on the fly transcoding and the real limiting factor becomes storage.

A TinyMiniMicro https://www.servethehome.com/introducing-project-tinyminimic... used PC is more than adequate for most workloads (except for local AI and if you want to have a huge amount of storage). Last time I checked the prices were in the ballpark of $100/$150 for a working machine.

New machines with a N series Intel CPU are in the similar ballpark.

dgeiser13|2 months ago

I hate to tell them but everything is being enshittified.

smitty1e|2 months ago

"Not me," said entropy, "I was already there at the outset."

Less cutely, this is an interesting topical site/newsletter => https://selfh.st

crapple8430|2 months ago

I don't really agree with this blog post; there is nothing enshittified about self-hosting.

But it does almost seems like there is a squeeze on general purpose computing from all sides, including homelab. The DRAM and SSD prices is just the latest addition to that. There's also Win 11 requiring TPM, which is not an bad thing by itself, but which will almost certainly take away the ability to run arbitrary OSes 5-10 years down the line on PCs. Or you'd still be able to boot them, but nothing will run on it without a fully trusted chain from TPM -> secure boot -> browser.

jasonm23|1 month ago

If you self host and also write some of your own services, the same requirements are as they always were.

minimal ~ < $100 hardware (Dell, Acer etc mini or ssf pc)

install your linux distro, use your preferred containers, or just run as services on the os.

There's no ads, no ai, no layer of shite, it can't be "enshittified" unless you're doing the shittifying.

WadeGrimridge|2 months ago

this is not what enshittification means.

jamilbk|2 months ago

I don't fully understand the complaints about enshittification of open source permissively licensed software.

If the source code is available for you to fork, modify, and maintain as you see fit, what's the complaining really about?

CuriouslyC|2 months ago

People are going to start doing this a lot more as agents improve. Most people only need a very small fraction of the features of SaaS, and that fraction is slightly different for everyone, so the economics of companies trying to use features to chase users is bad. Even worse, if you're on SaaS you can't modify the code, which will be crippling, so the whole SaaS model is cooked.

I think co-management is going to be the next paradigm.

sn0n|2 months ago

Sorry, but no. It's open source my guy, your ego and entitlement should be checked at the door as you enter the sandbox. Take anything you like.

Also, forking is an option, you can always use AI to keep it current.

VerifiedReports|2 months ago

I don't understand this fairly sparse "article."

"Plex added a paid license for remote streaming, a feature that was previously free. And then Plex decided to also sell personal data — I sure love self-hosted software spying on me."

How is it "self-hosted" if it's "remote streaming?" And if you're hosting it, you can throttle any outgoing traffic you want. Right?

The only other examples are Mattermost and MinIO... which I don't know much about, but again: Aren't you in control of your own host?

This article is lame. How about focusing on back-ends that pretend to support self-hosting but make it difficult by perpetuating massive gaps in its documentation (looking at you, Supabase)?

hsjdndvvbv|2 months ago

> How is it "self-hosted" if it's "remote streaming?" And if you're hosting it, you can throttle any outgoing traffic you want. Right?

You host the plex service with your media library. Plex allows you to stream without opening up your firewall to others. Not sure now it works exactly because I never hosted it myself.

boltzmann-brain|2 months ago

> This article is lame. How about focusing on back-ends that pretend to support self-hosting but make it difficult by perpetuating massive gaps in its documentation (looking at you, Supabase)?

that's one way of enshittifying, but what the article talks about is nonetheless very important.

People rely on projects being open source (or rather: _hosted on github_) as some sort of mark of freedom from shitty features and burdensome monetization.

As the examples illustrate, the pattern of capturing users with a good offering and then subsequently squeezing them for money can very easily be done by open source software with free licenses. The reason for that is that source code being available is not, alone, enough to ensure not getting captured by adversarial interests.

What you ALSO need is people wanting to put in the work to create a parallel fork to continuously keep the enshittification at bay. Someone who rolls a distribution with a massive amount of ever-decaying patches, increasingly large amounts of workarounds, etc. Or, alternatively, a "final release" style fork that enters maintenance mode and only ever backports security vulnerability fixes. Either of those is a huge amount of work and it's not even sure that people will find that fork on their own rather than just assume "things are like that now".

Given that the code's originating corporation can and will eagerly throw whole teams of people at disabling such efforts, the counter-efforts would require the same amount of free labor to be successful - or even larger, given that it's easy to wreck things for the code's originator but it's difficult to fix them for the restoration crew.

This pattern, repeated in many projects over the decades since GPL2 and MIT were produced, displays that merely being free and open source does not create a complete anti enshittification measure for the end user. What is actually necessary is a societal measure, a safety web made up of developers dedicated to conservation of important software, who would be capable of correcting any stupid decisions made by pointy-haired managers. There are some small projects like this (eg Apache, and many more) but they are not all-encompassing and many projects that are important to people are without such a safety net.

So for this reason, eg when people are upset that mattermost limits the messages to 10000, their real quarrel isn't really even with the scorpion, who is known to sting, it is with the lack of there being a social safety net for this particular software. Their efforts would be well spent on rapidly building such a safety network to quickly force the corporation's hand into increasingly more desperate measures, accelerating their endgame and self-induced implosion. Then, after the corpo's greed inevitably makes them eat themselves in full, the software can enter the normal space of FOSS development rather than forever remain this corporate slave-product that is pact-bound to a Delaware LLC by a chain of corporate greed.

Only once any free fork's competition backed by VCs burning their money on a ceremonial heap has been removed can the free version of the software become the central source for all users and therefore become successful, rather than continuously play catch up with a throng of H-2B holders.