1
80
Rule 3 - Updated (anarchist.nexus)
submitted 3 days ago* (last edited 3 days ago) by curbstickle@anarchist.nexus to c/selfhosted@lemmy.world

Edit at the top: My lemmy.world alt has been added as a mod, so now I'm going back through reports (mostly from before I was a mod, so bear with me). You can, of course, send me a dm for anything requiring immediate attention, but I'm also able to see reports properly now.


Well its only been a couple days, but the response has been very consistent and functionally unanimous.

Rule 3 is now revised to read:

Posts here are to be centered around self-hosting. Please ensure it is clear in your post how it relates to self-hosting.

There may be some slight tweaks, but I'm going to consider this good for now.

~~As an important note, I'm still waiting on a ticket response from the lemmy.world team to get my lemmy.world alt added for report purposes. If you see something that requires more immediate attention please send me a message in addition to a report.~~ Also, some of the other rules have been trimmed to just the point of the rule, removing the commentary in them.

In addition, rule 7 (low effort posts) is deleted as everyone seems to agree its handled just fine with votes.

A few related items out of the discussion:

  • Posts that are better off in a different community (not just intent, but also a community thats appropriately supported by activity) will be locked only after that community is noted. There is a bit of subjectivity here obviously, so lets play it by ear at the moment. They will not be deleted though, only locked.
  • If there is an influx of simple posts about hardware, pictures of setups, etc., then we can go ahead with a weekly sticky for that content. There aren't enough in the log to justify this yet.
  • Low effort content is currently well managed with upvotes and downvotes. Again, if there is an influx of low effort content, we can use a different approach.
  • Repeated common questions, once enough of them are being seen, will go to an FAQ post or a wiki. Not enough of those in the modlog either right now to justify the effort, but if someone does want to go ahead and make one, we can get that going anyway.

I appreciate everyone's input on this! And remember I'm just here to help, so if there are any other rules / descriptions / whatever you feel should be up for discussion, you can feel free to start a discussion about it.

2
372
submitted 3 years ago* (last edited 3 years ago) by devve@lemmy.world to c/selfhosted@lemmy.world

Hello everyone! Mods here 😊

Tell us, what services do you selfhost? Extra points for selfhosted hardware infrastructure.

Feel free to take it as a chance to present yourself to the community!

🦎

3
56
4
92

For those who’ve never heard of us:

Libre Closet is a free, open-source, self-hosted wardrobe organizer - with client side garment image background removal. Catalog your clothes, upload photos, build outfits, and access everything from your phone as an offline-ready PWA - all on your own server.

We at Lazztech LLC have crafted and engineered this project with care and intention to be as easy to self-host as possible. It defaults to local SQLite storage and local file storage. It has optional auth/multi user support.

docker run -p 3000:3000 -v wardrobe-data:/data ghcr.io/lazztech/libre-closet:latest

Please feel free to ask any questions you may have, whether about the development choices we’ve made, or about the product itself. We’re excited to continue to build a community around this project. 

——

For those already familiar, I’d like to share some progress updates. 

First, I’d like to introduce Leolazz, who’s joined the project as our 3rd core maintainer, alongside ShoshannaTM, and myself!  

Second, I’d like to share gratitude for the warm and supportive reception Libre Closet has continued to receive. It sincerely makes my day when we get a new feature request or comment about how users are enjoying it. Since the first post, we’ve gotten 234 Github stars, over 10.8k docker image pulls, multiple community PRs contributed, and many helpful issues filed.

Latest News - Significant Performance Improvements:

We've refactored the server resulting in nearly a 2x throughput increase, almost half the latency, and the lighthouse speed score has gone from 68/100 to 99/100.

Metric Before After Change
Requests/sec 1,188.10 2,091.64 +76.05%
Latency avg 7.90 ms 4.24 ms –46.33%
Latency p50 7.00 ms 4.00 ms –42.86%
Latency p99 18.00 ms 11.00 ms –38.89%
Throughput 26.39 MB/sec 44.30 MB/sec +67.87%

Latest Releases:

  • v0.3.2 - June 09, 2026: Added background removal toggle for garment image uploads.
  • v0.3.1 - May 26, 2026: Refactored server resulting in nearly a 2x throughput increase and almost half the latency.
  • v0.3.0 - May 21, 2026: Garment image background touch up tool
  • v0.2.5 - May 1, 2026: Added option to disable register functionality
  • v0.2.4 - April 28, 2026: Fix garment photo upload cropping

For full details refer to the CHANGELOG.

We can’t wait for everyone to try it out, and we hope you enjoy v0.3.2 of Libre Closet! 

Public: https://librecloset.lazz.tech/

GitHub: https://github.com/lazztech/Libre-Closet

@

5
169

I read every single day. At home it's on my Kobo running KOReader (yes, I'm that open-source guy), and I love it. The problem: I don't always have the e-reader on me. On the train, at work, waiting somewhere — I just have my phone.

I tried Kobo's own Android app to bridge the gap and... I really didn't like it. Promos everywhere, adding your own books is a pain, the reader itself feels clunky, and the Wi-Fi handling is annoying.

So I built my own thing: Varbook, a small self-hosted EPUB library.

Varbook library on mobile: dark UI with a "Continue Reading" section showing progress bars and reading time, search bar, status/sort filters, and a book cover grid below

You drop EPUBs into it in one click. From there:

  • They're readable on your phone through a simple but well-made PWA. Books are cached locally, so you can read offline; when you're back online your reading position syncs to the server.
  • The server exposes everything over OPDS, so any compatible app works (KOReader, Moon+ Reader, etc.).
  • I also wrote a KOReader plugin that pushes/pulls your reading position to the server in a single gesture.

Varbook EPUB reader on mobile: dark theme, large serif font, chapter title and progress bar at the bottom showing 52.4%, reading time, and page count

My actual daily workflow:

  • Evening, at home: I wake up my Kobo in KOReader, tap the top-right corner → Wi-Fi turns on, my current book jumps to the right position, Wi-Fi turns back off to save battery.
  • I read.
  • Done reading: tap the top-right corner again → Wi-Fi on, my reading time + position sync to the server.
  • Next day, at work: I open the PWA on my phone. It drops me exactly where I left off, and syncs my position on every page turn.
  • Evening: back to the Kobo, which picks up my position from the phone.

All of this with fully open-source software, no commercial service in the loop, my books staying on my own server.

The trickiest part was cross-device position sync — every reader engine (epub.js in the browser, KOReader's CREngine, Moon+) tracks position differently. Varbook uses a "pivot" format based on EPUB spine items (chapter index + percentage) so your position survives the jump from one device to another without throwing you 30 pages off.

Varbook reading statistics on mobile: KPI cards (17 books, 3 finished, 80h59m reading time, 2017 sessions), book status breakdown, and reading time by device (KOReader 8.8h, Moon+ 0.6h, Web Reader 71.6h)

It's open source (MIT), built with Laravel + React, and ships as a single Docker container (SQLite by default, no external DB needed). The entire UI is translated in English, French, and Spanish.

Honest disclaimer: a good chunk of this is vibe-coded. That said, I've been a developer for 20 years, so it's opinionated vibe-coding — I know what I'm looking at. It's been used daily and intensively by about 5 people for the last 3 months, and I keep improving it regularly. It's not bug-free, but I'd call it reasonably stable. I'm being upfront so you know what you're getting into.

There's a free public instance if you just want to try it without installing anything: https://varbook.hophop.be/

Happy to answer questions or hear what's missing — it scratches my own itch, but I'd love to know if it's useful to anyone else.

6
51

Hi everyone

I posted before here. I'll try once more but don't want to get over bearing.

I'm trying to self host all my contacts and my calendar.

I've managed to install radicale but there very little ui and I'm not actually sure how to import my contacts and calendar, or how to start using it with a client.

This is all I see

I've set up the calendar and contacts server but I can't find any security settings to password protect it

Any guidance would be awesome, thank you

7
51
submitted 1 day ago* (last edited 2 hours ago) by Maroon@lemmy.world to c/selfhosted@lemmy.world

So far, my self-hosting has been limited to Pi-Hole, and a static website. I now want to try out something new, an Immich server.

I have a static IP from my ISP, so I don’t need to rent out a VPS. However, given that this IS a home internet, I want to be extra sure that it is going to be secure.

In my existing website, I use Fail2Ban + BadBotBlocker + Anubis + Nginx rate limits to protect it from scrapers, bots and malicious users, and it works well. With photos (especially family photos) at stake, I just want to know more on how to protect my server.

Add: thanks for the helpful replies. I will be sharing the photos with family, many of whom live abroad.

8
30

Is anyone aware of any self hosted portfolio tracking software?

Something like TradingView or Yahoo Finance, where I can input my trades, and track tickers.

9
42

I recently found out that you can get up to 3 free .eu.cc domain from GNAME, which also claims that you can renew for free when its within 90 days of expiring. So I got one to check it out.

Obviously, the next step is making one of my local machines act as the target destination for any queries to the address, so it becomes accessible for the wider web. I'm not entirely sure, however, what to configure on GNAME (there's the option to setup A and AAAA records, which I suppose I should just point to my IP, but there's also CNAME, TXT, NS, SRV and what configurations/programs my local server (rPi 3) needs to have running besides a webserver (Apache2 or Nginx)

My intent is to have it run a single-user fediverse server, possibly friendica, as it seems to have the best support for seeing all sorts of APub posts. If that proves too heavy for my old pi, I'll try one of the lightweight APub alternatives

I know I'll also need to do some configurations on my router, so I'd appreciate help on this, too.

10
47
Doorbell Camera / NVR (post Unifi) (poptalk.scrubbles.tech)

Hi all, my Unifi Doorbell just died after only 4 years of service. I've been pretty disheartened with them lately, other products haven't lived up to the company's promise.

So I'm not looking to replace my networking stack yet, but I am looking for a doorbell camera. I only have the Unifi machine, but I also have an extensive docker/kubernetes stack, and mostly I want to use it with Home Assistant.

Any recommendations? Open to software, hardware, you name it. I have a few other Unifi cameras too, if they could be brought into the fold while I slowly migrate, I'd be interested. Thanks!

11
37

I only read about people using continuwuity and tuwunel, but apparently none are using conduit. When searching, I only find "hate" against conduit, but no actual reason why people prefer the fork, except some ominous comments stating that it is practically unmaintained (which is not true). I found that conduit has the majority of features implemented, except minor things like threads (which is still WIP, to be fair) and presence. Also, it is rock solid, only using minimal resources. It may be slow in development, taking a bit longer to implement a new feature, but not too much longer. Or am I missing something the others have to offer?

If you are running a conduit fork, what is your reason for leaving conduit, and if you are running conduit, why didn't you switch?

If it is not obvious: I mean compared to conduit and its forks, not synapse, ....

12
15
submitted 1 day ago by gyoo@lemmy.ca to c/selfhosted@lemmy.world

I am trying to increase the upload limit on my matrix server. I would like to push it to 500MB, but it keeps failing the upload past ~180MB. There is very little information about the failure, the client just says "Unkown error", nginx says "error 499", which means the client disconnected to quickly. Additionally, trying to recreate the failure with curl just results in a success, so the issue seems to be with the client. I tried with element-web, element desktop, element x and cinny and they all have this issue.

I run a continuwuity server on a Raspberry Pi 4B, behind two nginx reverse proxies and a rathole tunnel. Continuwuity, and the two reverse proxies run inside docker compose projects. Here is my architecture :

                   __
                 .(  ).
               (`Cloud )
                `-----`
                   |
                   V
          +- Outside server -+
          |   +---------+    |
          |   | rathole |    |
          |   +---------+    |
          +--------|---------+
                   |
+- Home network ---|-------------------------+
| +- RasPi --------|-----------------------+ |
| |                V                       | |
| |       +- tunnel docker -+              | |
| |       | +---------+     |              | |
| |       | | nginx 1 |     |              | |
| |       | +---------+     |              | |
| |       +-----|-|---------+              | |
| |             | |                        | |
| |             | +- other services -->... | |
| |             |                          | |
| |             V                          | |
| |       +- matrix docker --+             | |
| |       |   +---------+    |             | |
| |       |   | nginx 2 |    |             | |
| |       |   +---------+    |             | |
| |       |        |         |             | |
| |       | +------V-------+ |             | |
| |       | | Continuwuity | |             | |
| |       | +--------------+ |             | |
| |       +------------------+             | |
| +----------------------------------------+ |
+--------------------------------------------+

Of course, I made sure to increase the upload limit in Continuwuity :

max_request_size = 500000000

And in both nginx instances :

client_max_body_size 500M;

From what I can gather from other issues on the internet, it seems it could be related to timeout errors. Although they all seem to be talking about 2-8Gb files, I am probably running much weaker hardware than they do, so it checks out.

I tried setting the following values in both nginx instances :

location / {
    proxy_connect_timeout       600;
    proxy_send_timeout          600;
    proxy_read_timeout          600;
    send_timeout                600;
    proxy_next_upstream         off;
    proxy_buffering             off;

    proxy_pass ...;
}

And setting timeout values in Continuwuity :

client_receive_timeout = 75
client_request_timeout = 180
client_response_timeout = 120
client_shutdown_timeout = 10

Since that didn't have any effect, I bumped them by 20x and 40x respectively :

location / {
    proxy_connect_timeout       18000;
    proxy_send_timeout          18000;
    proxy_read_timeout          18000;
    send_timeout                18000;
    proxy_next_upstream         off;
    proxy_buffering             off;

    proxy_pass ...;
}
client_receive_timeout = 3000
client_request_timeout = 7200
client_response_timeout = 4800
client_shutdown_timeout = 400

But that did not have any effect. I also looked at modifying element-web's settings, but there doesn't seem to be anything related to timeouts.

I also saw that encrypted vs. unencrypted rooms might have an effect, but I got ~190MB max in encrypted rooms and ~180MB in unencrypted rooms.

Finally, I tried using curl :

curl -X POST https://server.domain/_matrix/media/v3/upload -H "Authorization: Bearer <token>" -H "Content-Type application/octet-stream" --data @200mb.file
# success
# returns a mxc:// url
curl -X POST https://server.domain/_matrix/client/v1/media/download/server.name/file_id -H "Authorization: Bearer <token>" -o 200mb_copy.file
# See that the two files are identical

I am at a loss. What can I do to solve this issue?

13
93
I need a map... (lemmy.world)
submitted 2 days ago* (last edited 2 days ago) by Snapz@lemmy.world to c/selfhosted@lemmy.world

There are so many options to get started with self hosting that I feel myself stuck in the "paralysis of choice". For a novice, does anyone have a good resource for the equivalent of good/better/best paths that cover the "basics" (In my mind this is hosting images, music, video, connected home controls, search and email)?

Thinking something like first try path A, if you feel comfortable and your HW can handle A, then try path B, etc. I guess a it of a tutorial mode feeling where you get exposed to key boxing blocks initially and then you are released into the large open world on your own.

I know the advantage of this movement is the choice and the well distributed variety, but just feels hard to start.

I have an old laptop, an SFF workstation and a NAS to play with.

Any suggestions?

Edit: Thank you all for a very generous response. I knew this was a tough ask from the start because, by design, this area is vast and constantly evolving. A lot of great starting points here that I'm now considering.

14
19

Recently I spent part of the weekend to build a small companion for Traefik. Beacon automatically scrapes the Host() part of Traefik rules and announces them via mDNS in the local network.

The idea is to use this in our greenhouse, hence the greenery in the name. Shooting for a small solar powered RPi Setup, and this gives me easy acces via local Wi-Fi e.g. for debugging or sensors/bridges.

I hope to spend some time around the ideas of air gapped/remote self hosting.

15
42

Self-hosting journey update, and WordPress: latest development from a super-newbie

@selfhosted

I must recap as I set my instance to delete 2-weeks-old posts.

Months ago, I talked about my very first journey with self-hosting my digital services, including my website.
As I'm not very skilled with sysadmin stuff, I use a YunoHost installation with all its pros and cons.

Having severe accessibility needs (I'm totally blind) I have limited choices for what concerns CMS software with related extensions if any. So after months of exploration and test, I've come back home. To WordPress.

Last time I updated Fediverse about my experience, I was struggling with multisite network giving an unpleasant error in the non-main site, such as "too_many_redirects"
Making it short, I discovered that YunoHost doesn't let me run a multisite properly when installed in a subdomain such as blog.domain.tld
So I had forcefully to install it in the main domain, and a subdirectory such as domain.tld/wp

Now I'm concentrating on my theme, I will clone it with the plugin "CreateBlockTheme" then activate it network-wide.
I need a multisite for multilingual, as all current multilingual plugins have poor accessibility support, and are mostly paid.

Then I may need a new taxonomy registered to organize stories, the glossary plugin, SEO plugin, ActivityPub, and I should be all set!

The last, hard, challenge I have, is the fact that now my site runs into "domain.tld/permalink-post" for Italian, and "domain.tld/english" for English
The new one should run "domain.tld/wp/post" and "domain.tld/wp/english/post"

YunoHost doesn't let me build a WordPress site in the root directory with multisite installed, so I must find the way to tell nginx I want the product to be physically on /wp/ but browser can point to domain.tld/post or domain.tld/english/post...

And if possible, this change to be in a file on its own, in order to be able to delete it without damaging the whole nginx conf.

Last detail, I'm on hostinger, kvm2 package. vps.

#experience #multisite #nginx #SelfHosting #WordPress #YunoHost

16
85

Say ww3 kicks off and power goes off - how are you keeping your servers up? Solar panels and batteries?

What if there's a biblical flood and you dont have the means to build an arc? All your servers are destroyed beyond repair?

What if you heard the Feds are coming to cart you and your servers away cos they suspect you of bad mouthing Emperor Tromp? (you're on the run or subject to months of torture and yeah, you're never getting your kit back)

What if theres a war and Luxembourg (you know, the enemy) let's of an EMP pulse that kills your servers and all the infrastructure (power, internet...). How do you access all those cherished pics on Immich?

I'm not suggesting any of this will/can happen, its all just for lols, but have you made any contingency plans? Big binders full of printouts, bug-out bags, those flower-type solar things that track the sun, Faraday cages....

17
30
submitted 3 days ago* (last edited 5 hours ago) by irmadlad@lemmy.world to c/selfhosted@lemmy.world

So, yes this is selfhosting related. I am working on an n8n flow to pull in weather data so that I can have this data on a dashboard. I can't find any dockerized weather forecasting apps. Most of them connect to a personal weather station, which might be an option in the future. For the time being, this is a little project I'm working on.

Partial JSON snippet:

spoiler

0	
json	
cod	"200"
message	0
cnt	40
list	
0	
dt	1780693200
main	
temp	29.4
feels_like	29.23
temp_min	29.4
temp_max	29.68
pressure	1019
sea_level	1019
grnd_level	984
humidity	42
temp_kf	-0.28
weather	

I would like to display something like this:

spoiler

Current temperature: 23.25 °C
Feels like: 24.09 °C
Low / High: 23.25 °C / 23.60 °C
Humidity: 94%
Atmospheric pressure: 1023 hPa (sea level: 1023 hPa, ground level: 988 hPa)
Temperature correction factor (temp_kf): -0.35

Weather: Light rain
Weather code: 500
Short condition: Rain
Icon: 10d

So, this is for you devs or coders out there. I can produce the JSON data. I'm just not sure how to parse it to something meaningful. I'm sure Python will have to be incorporated, but unsure of how to proceed.

Maybe someone could point me in a direction to tuts, articles, or your own experience. Sorry the JSON data doesn't format correctly. Lemmy formatting doesn't seem to allow that.

ETA: For anyone wandering across this, here is the solution: https://lemmy.world/post/47961985/24201369 thanks to @captcha_incorrect for his generosity and time.

18
70
19
475
submitted 4 days ago by TheIPW@lemmy.ml to c/selfhosted@lemmy.world
20
55
openmediavault 7 approaching EOL (www.openmediavault.org)

At 10.06.2026 openmediavault 7 will become EOL because Debian 12 estimates EOL (end-of-life) for the same time. This means no security/bugfix updates will be released anymore. Please upgrade to openmediavault 8 to be up-to-date.

2026-06-10 for people using a not insane date format. Already updated some of my omv installs, went without a hassle. Check if your plugins are supported, some of them were removed.

21
69
submitted 4 days ago* (last edited 4 days ago) by mgrimace@lemmy.ca to c/selfhosted@lemmy.world

Hello folks,

What do folks recommend as good practices to use a laptop as an always on, always plugged-in server? Specifically, how to manage the battery and some of the potential cautions/dangers of keeping it plugged in.

I have a spare Dell workstation laptop that I'd like to use as a Proxmox node. I've seen a number of posts where folks will mention that using a spare laptop works well because it has a built in 'UPS', but then in the comments there's caution about the battery being plugged in all the time.

I'm curious what folks do in terms of battery management, assuming I want to keep this as hands-off/low maintenance (but fireproof) as possible.

Thank you all so much, ~M

Update: thank you all so much for the great advice. This is a Dell Workstation and it does have a 'Primarily AC use' power setting in the BIOS, as well as custom charge levels available. Appreciate it and I hope this discussion helps other folks looking to do the same!

22
66

Hello everyone,

I want to create a Tailscale account to access my Jellyfin server from outside my home, but I’m already stuck at the first step: to create an account, you need either a GAFAM account or OIDC. I don’t have any personal accounts with GAFAM because of Lemmy’s bad influence. My emails are on Tuta. I don’t want to overcomplicate things as I'm a noob, but after spending 30 minutes researching OIDC, I still don’t know where to start… I don’t work in IT (at all).

Is it better to just give up and create a throwaway account with a GAFAM platform, or is there a simple way to do this with OIDC? If so, can anyone point me the way? Is there a free reliable OIDC provider? Will that make things complicated afterward with tail scale?

For more context: I turned my old gaming PC into a media center running Fedora and a Jellyfin server that I access locally. I was surprised by how relatively simple it all was, especially getting Jellyfin to work locally.

Obviously, I wanted to use Tailscale to connect to Jellyfin remotely, but I never had time to look into it. I was told this morning that I’m going to undergo major surgery with a significant recovery period ahead, so suddenly this has become urgent...

23
235

Kittygram is an Instagram frontend, like nitter and invideous.

A lot has changed since I first posted about it. Kittygram now has:

  • a developer API
  • atom feeds
  • ratelimit tracking
  • explore/popular pages
  • more themes
24
31

cross-posted from: https://discuss.online/post/40941829

Details at https://twtxt.dev/ and elsewhere. This has been in development since 2016. All you do is create a txt file in www or html and include info like

# nick        = username
# url         = https://example.com/posts.txt
# avatar      = https://example.com/avatar.png
# description = Describe this

to then begin posting using a command like like

echo -e "$(date -u +'%Y-%m-%dT%H:%M:%SZ')\tHello to all of you out there! >> posts.txt

There are various registries and places you can submit your user via curl to become more discoverable by others. Also tons of spin-offs that add support for fancier markdown and such, but haven't tried those yet.

25
70

I give up.

I tried left and right to try to install an email server so I could degoogle my life.

But therechnical barrier is thick and Google keeps adding more to it. Forget it. I can't even get thru the installation process much less trying to get my shit off Google.

I figure, I don't actually have any need for my email addresses. Just like my phone number. I never call anyone. I'm going to discourage my kids from using email at all. I'll remind everyone I know that I don't use email at every opportunity I get just like I remind people to not call me and that my phone number is not available.

Between spammers and Google, I just don't need this headache in my life. My mom is much less technically savvy than the average pet. So Google will just siphon her data and when the megabits are full then you just delete the old stuff.

You don't need it. No one will spend their life reading your emails when you're gone or watching your videos or listening to your recordings or viewing your photos. There's no need to worry about just deleting the pile of shit you've accumulated. I'm this done.

view more: next ›

Selfhosted

59825 readers
692 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 3 years ago
MODERATORS