this post was submitted on 08 Apr 2026
98 points (98.0% liked)

Selfhosted

56957 readers
942 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

  7. No low-effort posts. This is subjective and will largely be determined by the community member reports.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

Here's my beautiful unemployed-for-too-long-have-no-money-dont-care-about-looks lab :)

picture of a raspberrypi, switch, HP elite desk, KVM and mess of cables on a desk

Hey it's more than good enough to run all this Β―_(ツ)_/Β―

screenshot showing list of hosted apps and resources usage of servers

you are viewing a single comment's thread
view the rest of the comments
[–] mesamunefire@piefed.social 3 points 1 hour ago (1 children)

I want one! Ive been thinking of setting up one with solar since my area gets next to no rain and hot as hell. Might as well use that to my advantage!

[–] tal@lemmy.today 2 points 1 hour ago* (last edited 28 minutes ago)

I'm still not using one. The problem is that you've got two classes of devices that haven't quite converged to what I want.

UPS

Traditionally, the purpose of UPSes isn't to keep systems running (other than through very short outages). It's to do one of the following:

  • Provide a small amount of buffer until a backup power system, like a generator, has time to come online.

  • Give the systems time to shut down cleanly. If the user is right there, they have time to save their work. This was particularly an issue before journaled filesystems became the norm, since an unclean shutdown in the era when Windows was using FAT, Linux was using ext2, and MacOS was using HFS had at least the possibility to corrupt your filesystem. They have the ability to report their charge level to an attached computer so that it knows when the battery level is critical and then software on it can start it shutting down. On Linux, the most-common software package to do this is Network UPS Tools, or NUT.

These things don't need a lot of capacity. They rarely get drained, so they usually use lead-acid batteries, which are heavy and don't have many full charge-discharge cycles in them (but are pretty happy staying fully charged all the time). You can still get these. The lead-acid batteries are replaceable, though, so an old UPS can keep going for a very long time.

Powerstation

These are designed to keep attached devices running for a longer period of time. Unfortunately, they have a couple of important limitations for powering computer systems.

  • They do not normally have the ability to report their charge level. Irritatingly, they do nearly always have a voltmeter rigged up to some software to map voltage to charge remaining to drive a 'charge remaining' display on the device, and there are USB HID device classes for reporting charge levels to a host OS, but for some reason, powerstation manufacturers don't seem to have an interest in making a powerstation that has the latter functionality. NUT does have a USB HID backend, which means that it can monitor and shut down a system if they'd expose it. I'd really prefer the ability to treat one of these as a laptop-style battery, as Linux (as well as other OSes) have the ability to hibernate on low battery. On Linux, these show up as /sys/class/power_supply/BAT*, and there's lots of software to display charge information and act based on low levels...but AFAICT from looking around the kernel, there is no way to get the kernel to deal with a USB HID device reporting remaining charge like this as a BAT device.

  • Computer power supplies can only smooth out so much of an interruption in their power. Computers rely on something on the order of a 10 millisecond transfer time after AC goes out until the UPS needs to be running full-tilt. searches ATX PSUs apparently are only required to operate for 16 milliseconds without power. Other hardware attached may or may not actually deal well with interruptions, but obviously the shorter the transfer time, the better. It looks like line-interactive UPSes tend to do something like 3-6 milliseconds. The problem is that a lot of powerstations have a transfer time in excess of this.

There are some LFP UPSes now, but these have their own disadvantages. They tend to be fairly pricey, and the batteries are often not replaceable, which means that unlike the old lead-acid UPSes, when the battery dies (which will take longer than with a lead-acid battery), the whole device is also going to the landfill.

And lastly, you have the problem that while lead-acid batteries are pretty mature and prices are pretty stable, LFP battery prices are coming down (and sodium-ion might start competing with them for fixed batteries). If batteries are cheaper in the future, waiting means a better deal.

I don't currently run a UPS on my systems (though I have in the past). I kind of decided that if I'm going to run a UPS, I'm probably going to just bite the bullet and use the combination of a traditional lead-acid UPS and an LFP powerstation, with the UPS plugged into the powerstation. In that configuration, the powerstation provides provides the longer-running power, and the UPS deals with short transfer time and warning computer systems that power is about to go out. This isn't perfect, because (a) your computing devices can't see the remaining charge on the powerstation in an outage (b) at some point, one still has to toss the LFP powerstation, and (c) there's a little extra hardware involved. However, it also has a number of benefits:

  • Lead-acid UPSes pretty much always have replaceable batteries. One can keep the UPS around, though the batteries will have to be periodically replaced.

  • The UPS will provide time for the system to shut down.

  • UPSes are designed specifically for this, and have short transfer times. You don't need to worry the way one might about a powerstation having marginal transfer time.

  • You can get a lot of AC-related functionality in UPSes, like online capability (which will clean up the power, if you want), which isn't generally available in powerstations.

  • You can upgrade the "powerstation", even (if you want) doing a build-your-own thing with separate cells and an inverter and charge controller (which is generally more cost-effective for larger systems) down the line. These discrete-component systems are also a lot easier to provide human monitoring of remaining charge, since you can pick the components (and worst case, all you need to do is connect a voltage sensor that can talk to a computer to it), though they don't integrate as nicely off-the-shelf with something like NUT as do traditional UPSes.

I'm not saying that this UPS+separate-battery-system is the only route to take, but I spent some time banging my head on it, and wanted to share if anyone else is similarly thinking about the same thing -- that there may be a good argument to have a traditional UPS and some kind of separate battery system.